Quantcast
Channel: かずきのBlog@hatena
Viewing all articles
Browse latest Browse all 1387

Azure DevOps の Pipelines の template や variable group で変数名の違いを吸収する

$
0
0

ただの小ネタです。

Azure Pipelines でリポジトリに含めたくない秘密の値を入れるための Variables に変数を追加します。

f:id:okazuki:20200302170819p:plain

そして Variable Group でも template でもいいのですが 2 セット変数の定義を作ります。

vartemplate-for-production.yml

variables:message: $(messageForProduction)

vartemplate-for-staging.yml

variables:message: $(messageForStaging)

適当なタスクも作っておきます。

some-tasks.yml

parameters:- name: vartemplatename
  type: string
  default:''jobs:- job: job1
  variables:- template: ${{ parameters.vartemplatename }}
  steps:- script: echo $(message)

とりあえずテンプレートで本番用とステージング用の変数名の違いを吸収してるから、いい感じにタスクを共通化出来そうという魂胆です。 パラメーターで変数のテンプレートファイル名を渡す感じですね。なのでメインのパイプラインはこんな感じ。

trigger:- master

pool:vmImage:'ubuntu-latest'stages:- stage: staging
    jobs:- template: some-tasks.yml
      parameters:vartemplatename: vartemplate-for-staging.yml

  - stage: production
    jobs:- template: some-tasks.yml
      parameters:vartemplatename: vartemplate-for-production.yml

実行すると、それぞれの環境用の内容が表示されます。


Viewing all articles
Browse latest Browse all 1387

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>