DownloadSecureFile@1 - Download secure file v1 task
Download a secure file to the agent machine.
docs.microsoft.com
git管理外にしておきたいファイルをAzure PipelineではSecure Fileとして配置することができます。Secure Fileとして配置することで、ビルド時にSecure Fileを引っ張ってきてビルドソースに突っ込むことができます。
Secure Fileの追加はAzure Pipeline => Library => Secure files
からできます。
ここで問題のエラーはこちらです。たぶんGithubリポジトリの場合に起きると思われ
Step input secureFile references secure file {FILENAME} which could not be found. The secure file does not exist or has not been authorized for use. For authorization details, refer to https://aka.ms/yamlauthz.
VSTS anybody managed to use "secure file" in azure-pipelines.yml?
I would like to use "download secure file" in a dev azure task - and that works exactly as expected within a task in "release pipeline" (in "Releases"). However, when I try to do the same in a "Bui...
stackoverflow.com
このエラーはstack overflowによると、yamlのスキャンのタイミング以降にSecure fileを扱うtaskが追加された場合に起こるようです。
対処法としては、Pipelineの設定でなんらかのvariableを修正して保存するとスキャンが走るようです。
その他気を付けたほうがいいこと
yaml形式でPipelineを作成している際にはSecure Fileの取り扱いには注意しなければいけないです。PullRequestのビルドをしているPipelineでSecure Fileを扱っていると、PullRequestにSecure Fileをダンプするyamlファイルの書き換えをコミットに含めてやれば、PullRequestのビルドログにSecure Fileの中身を垂れ流すこともできます。
そのためCIとしてPullRequestをビルドするPipelineではSecure Fileを扱わないほうがいいでしょう。また、Secure fileの設定にあるAuthorize for use in all pipelines
はオンにしないほうがいいです。
Secure fileを扱うPipelineはオーナーが明示的に実行できるトリガーのみに絞りましょう。