次の方法で共有


ターゲット定義

タスクは実行コンテキスト (エージェント ホストまたはコンテナー) で実行されます。

実装

実装 説明
ターゲット: 文字列 このステップまたはタスクを実行する環境。
ターゲット: コンテナー、コマンド、settableVariables 環境を使用してステップ ターゲットを構成し、コマンドと変数の許可リストを構成します。
実装 説明
ターゲット: 文字列 このステップまたはタスクを実行する環境。
ターゲット: コンテナー、コマンド 環境と許可されるコマンドの一覧を使用して、ステップ ターゲットを構成します。

注釈

個々のステップでは、targetを指定してコンテキストをオーバーライドし、必要に応じてコンテナー、コマンド、および設定可能な変数を構成できます。

target: string

ステップ ターゲットを名前で指定します。

target: string # Environment in which to run this step or task.

target 文字列。

使用可能なオプションは、エージェント ホストをターゲットとする host という単語と、パイプラインで定義されているすべてのコンテナーです。

target: container, commands, settableVariables

コンテナー名、コマンド、および設定可能な変数を使用して、ステップ ターゲットを構成します。

target:
  container: string # Container to target (or 'host' for host machine).
  commands: any | restricted # Set of allowed logging commands ('any' or 'restricted').
  settableVariables: none | [ string ] # Restrictions on which variables that can be set.

特性

container 文字列。
ターゲットにするコンテナーを します (ホスト コンピューターの場合は "host" です)。

commands 文字列。
許可されるログ コマンドのセット ('any' または 'restricted')。 any |制限。

target.settableVariablessettableVariablesします。
設定できる変数に関する制限事項です。

target: container, commands

環境と許可されるコマンドの一覧を使用して、ステップ ターゲットを構成します。

target:
  container: string # Container to target (or 'host' for host machine).
  commands: any | restricted # Set of allowed logging commands ('any' or 'restricted').

特性

container 文字列。
ターゲットにするコンテナーを します (ホスト コンピューターの場合は "host" です)。

commands 文字列。
許可されるログ コマンドのセット ('any' または 'restricted')。 any |制限。

注釈

ステップ ターゲットを構成するときに、これらのプロパティをすべて構成する必要はありません。 指定しない場合、container の既定値は hostcommands の既定値は anysettableVariables の既定値では、すべての変数をステップで設定できます。

ステップのターゲット設定とコマンドの分離

Azure Pipelines では、コンテナーまたはエージェント ホストでジョブを実行できます。 以前は、ジョブ全体がこれら 2 つのターゲットのいずれかに設定されていました。 これで、選択したターゲットで個々のステップ (タスクまたはスクリプト) を実行できるようになりました。 また、ステップは他のコンテナーを対象とするため、パイプラインは専用の専用コンテナーで各ステップを実行できます。

この機能はパブリック プレビュー段階にあります。 この機能に関するフィードバックや質問がある場合は、開発者コミュニティのでお知らせください。

コンテナーは分離境界として機能し、コードがホスト コンピューターで予期しない変更を行うことを防ぐことができます。 エージェント と通信 手順とサービスにアクセスする方法は、コンテナー内のステップを分離しても影響を受けません。 そのため、ステップ ターゲットで使用できるコマンド制限モードも導入されています。 commandsrestricted に設定すると、ステップがエージェントに要求できるサービスが制限されます。 ログのアタッチ、成果物のアップロード、およびその他の特定の操作はできなくなります。

例示

次の例は、ジョブ コンテナー内のホストと別のコンテナーでの実行手順を示しています。

resources:
  containers:
  - container: python
    image: python:3.8
  - container: node
    image: node:13.2

jobs:
- job: example
  container: python

  steps:
  - script: echo Running in the job container

  - script: echo Running on the host
    target: host

  - script: echo Running in another container, in restricted commands mode
    target:
      container: node
      commands: restricted

こちらもご覧ください