gsoft.azure_devops_agent

Azure DevOps エージェント

Ansibleの役割を使って、LinuxマシンをAzure DevOpsのビルドやデプロイメントエージェントとして使用するためにインストールおよび設定します。詳細についてはこちらのブログポストを参照してください。

必要条件

前提条件を確認

MacOSで管理者ユーザーを使って接続し、別のユーザーでサービスを実行しようとすると問題が発生することがあります。pipelining = Trueを使用すると、特にdevopsエージェントユーザーがAnsibleが作成する一時ファイルにアクセスできない問題に直面した場合に役立ちます。

変数

使用可能な変数は以下にリストされており、デフォルト値も示しています(defaults/main.ymlを参照):

    az_devops_accountname: null
    az_devops_accesstoken: null
    az_devops_project_name: null
    az_devops_agent_version: 2.188.3
    az_devops_agent_user: "az_devops_agent"
    az_devops_agent_uid: null
    az_devops_agent_name: "{{ ansible_hostname }}"
    az_devops_server_url: "https://dev.azure.com/{{ az_devops_accountname }}"
    az_devops_agent_folder: "/home/{{ az_devops_agent_user }}/agent/"
    az_devops_work_folder: "/home/{{ az_devops_agent_user }}/agent/_work"
    az_devops_agent_pool_name: "Default"
    az_devops_agent_role: "build"
    az_devops_deployment_group_tags: null
    az_devops_environment_name: null
    az_devops_deployment_group_name: null
    az_devops_agent_replace_existing: false
    az_devops_reconfigure_agent: false
    az_devops_agent_user_capabilities: null
    az_devops_proxy_url: null
    az_devops_proxy_username: null
    az_devops_proxy_password: null
  • az_devops_accountname

    あなたのAzure DevOpsアカウントの名前(例: https://dev.azure.com/YOUR_ACCOUNT_NAME)

  • az_devops_accesstoken

    アカウントに認証するために使用する個人用アクセストークン(PAT)。この値を生成する方法の詳細はこちらを参照してください。

    注意: この値を保護するためにAnsible Vaultを使用することを考慮してください。

  • az_devops_project_name

    エージェントを登録するAzure DevOpsプロジェクトの名前(デプロイメントグループでのみ使用)。

  • az_devops_agent_version

    インストールされるエージェントパッケージのバージョン。定期的に最新バージョンに更新する必要があります(こちらを参照)。

  • az_devops_agent_user

    サービスを実行および構成するために使用されるユーザーの名前。

  • az_devops_agent_uid

    サービスを実行および構成するために使用されるユーザーのUID。

  • az_devops_agent_name

    Azure DevOpsに表示されるエージェントの名前(ホストの名前がデフォルト)。

  • az_devops_server_url

    あなたのAzure DevOpsアカウントのURL。

  • az_devops_agent_folder

    エージェント固有のすべてのファイルのフォルダの場所(注意: サービスユーザーはこのフォルダ内のすべてのファイルに実行権限を持つ必要があります)。

  • az_devops_work_folder

    すべての作業固有のファイルのフォルダの場所(例: 取り込んだソースコードやビルド結果)。

  • az_devops_agent_pool_name

    Azure DevOpsエージェントが追加されるプールの名前。

  • az_devops_agent_role

    builddeployment、またはresourceのいずれかを使用します。ビルド役割は、パイプラインビルドやリリースで使用するためのビルドサーバーとしてエージェントを使うことを許可します。デプロイメント役割は、デプロイメントグループでエージェントを使用するのを許可します。リソース役割は、パイプラインからのデプロイメントによってターゲットにされる仮想マシンリソースとしてエージェントを使用することを許可し、環境に属します。

  • az_devops_deployment_group_tags

    deploymentエージェント役割と併用します。エージェントを識別するためにタグを使用できるようになります(例: QA、Staging、Prodなど)。

  • az_devops_deployment_group_name

    deploymentエージェント役割と併用します。エージェントを追加するデプロイメントグループの名前。このグループはAzure DevOpsプロジェクト内で手動で作成する必要があります。

  • az_devops_environment_name

    resourceエージェント役割と併用します。VMリソースを追加する環境の名前。この環境もAzure DevOpsプロジェクト内で手動で作成する必要があります。

  • az_devops_agent_replace_existing

    既存のエージェントを新しいホストと置き換える必要があるシナリオのために、設定スクリプトに--replace引数を追加します。

  • az_devops_reconfigure_agent

    サービスが既にアクティブであっても、エージェントの再構成を強制します。

  • az_devops_proxy_url

    プロキシサーバーのURL、形式はhttp://url:portです。

    プロキシがhttpとhttpsの両方をサポートすることを前提としています。

  • az_devops_proxy_username

    プロキシのユーザー名。

    プロキシが認証を必要としない場合は、デフォルトのままにしてください。

  • az_devops_proxy_password

    プロキシのパスワード。

    再度、プロキシが認証を必要としない場合は、デフォルトのままにしてください。

    注意: この値を保護するためにAnsible Vaultを使用することを考慮してください。

  • az_devops_agent_user_capabilities

    エージェントプロセスに対して設定する環境変数の辞書で、ユーザー能力に変換されます。これは、リリースパイプラインの要求の設定に役立ちます。

    使用例:

    - az_devops_agent_user_capabilities:
      user_capability_key: user_capability_value

使用例

ビルドエージェント

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: build
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***

デプロイエージェント

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: deployment
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_project_name: baz
    - az_devops_deployment_group_name: fubar_group
    - az_devops_deployment_group_tags: "web,prod"

リソース

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: resource
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_project_name: baz
    - az_devops_environment_name: staging

プロキシ

- hosts: agents
  roles:
      - gsoft.azure_devops_agent
  vars:
    - az_devops_agent_role: build
    - az_devops_accountname: fubar
    - az_devops_accesstoken: ***
    - az_devops_proxy_url: "http://127.0.0.1:8080"
    - az_devops_proxy_username: bob
    - az_devops_proxy_password: ***

ライセンス

Copyright © 2020, GSoft inc. このコードはApache License, Version 2.0の下でライセンスされています。このライセンスのコピーは、https://github.com/gsoft-inc/gsoft-license/blob/master/LICENSE で取得できます。

プロジェクトについて

Azure DevOps Agent for Linux.

インストール
ansible-galaxy install gsoft.azure_devops_agent
ライセンス
Unknown
ダウンロード
13k
所有者
Workleap is the one simple employee experience platform to elevate hybrid work