Skip to main content

メタデータ構文リファレンス

リポジトリでタスクを実行するアクションを作成できます。 カスタム アクションを行う場合は、YAML 構文を使用するメタデータ ファイルが必要です。

メモ

Docker コンテナーと JavaScript のアクション、および複合アクションを構築できます。 アクションには、アクションの入力、出力、実行構成を定義しているメタデータ ファイルが必要です。 アクション メタデータ ファイルでは YAML 構文を使い、メタデータ ファイル名は action.yml または action.yaml である必要があります。 推奨される形式は action.yml です。

name

          **必須** アクションの名前。 GitHub の `name` タブには **** が表示され、各ジョブのアクションを視覚的に特定するのに役立ちます。

author

          **省略可能** アクションの作成者の名前。

description

          **必須** アクションの簡単な説明。

inputs

          **省略可能** 入力パラメーターでは、実行時にアクションで使用するデータを指定できます。 GitHubは、inputsパラメータを環境変数として保存します。 入力IDには小文字を使うことをおすすめします。

例: 入力の指定

この例では、num-octocatsoctocat-eye-color という 2 つの入力を構成しています。 num-octocats 入力は必須ではなく、既定の値は 1 になります。 octocat-eye-color は必須で、既定値はありません。

メモ

入力が指定されていない場合、required: true を使用するアクションは自動的にエラーを返しません。

このアクションが使用されているワークフロー ファイルでは、with キーワードを使って、octocat-eye-color の入力値を設定できます。 with 構文の詳細については、「GitHub Actions のワークフロー構文」を参照してください。

inputs:
  num-octocats:
    description: 'Number of Octocats'
    required: false
    default: '1'
  octocat-eye-color:
    description: 'Eye color of the Octocats'
    required: true

入力を指定すると、GitHub により、その入力に対して、INPUT_<VARIABLE_NAME> という名前の環境変数が作成されます。 作成された環境変数では、入力名を大文字に変換し、空白を _ 文字に置き換えます。

アクションが composite を使用して書き込まれている場合は、自動的に INPUT_<VARIABLE_NAME> が取得されません。 複合アクションを使用すると、inputsコンテキスト リファレンス を使用してアクション入力にアクセスできます。

Docker コンテナー アクションの環境変数にアクセスするには、アクション メタデータ ファイルで args キーワードを使用して入力を渡す必要があります。 Docker コンテナー アクションのアクション メタデータ ファイルの詳細については、「Docker コンテナーのアクションを作成する」を参照してください。

たとえば、ワークフローで num-octocats および octocat-eye-color 入力が定義されている場合は、アクション コードで、INPUT_NUM-OCTOCATS および INPUT_OCTOCAT-EYE-COLOR 環境変数を使用して入力の値を読み取ることができます。

inputs.<input_id>

          **必須** 入力に関連付ける `string` 識別子。 
          `<input_id>` の値は、入力のメタデータのマップです。 
          `<input_id>` は、`inputs` オブジェクト内の一意識別子である必要があります。 
          `<input_id>` は文字または `_` で始まり、英数字、`-`、あるいは `_` のみを含める必要があります。

inputs.<input_id>.description

          **必須** 入力パラメーターの `string` の説明。

inputs.<input_id>.required

          **省略可能** アクションに入力パラメーターが必要かどうかを示す `boolean`。 パラメーターが必要な場合は、`true` に設定します。

inputs.<input_id>.default

          **省略可能** 既定値を表す `string`。 デフォルト値は、入力パラメーターがワークフローファイルで指定されなかった場合に使われます。

inputs.<input_id>.deprecationMessage

          **省略可能** 入力パラメーターが使用されている場合、この `string` は警告メッセージとしてログに記録されます。 この警告で入力が 終了 であることをユーザに通知し、その他の方法を知らせることができます。

Docker コンテナーおよび JavaScript アクションの�