理系学生日記

おまえはいつまで学生気分なのか

pipeline

Azure PipelinesでPull RequestをトリガーにCIを走らせる (または、CIトリガーとPRトリガーでの重複実行を抑止する)

Pull Requestが作成されたらCIを実行したい。こういったユースケースはよくあります。 Azure Pipelinesでもこの実現はできるのですが、この実現にはかなり癖があります。 結論 PR Triggerの設定は、azure-pipelines.ymlではなく、Azure ReposのBuild validat…

Azure Pipelinesのscriptではset -eする

Azure Pipelinesでは様々なPipeline用のタスクが用意されています。例えばMaven taskだったり、 Docker taskだったりです。 Build and release tasks この中で柔軟性が高いのはCommand Line taskや Bask taskでしょう。 例えばCommand Line taskでは、以下の…

Azure PipelinesのService Connectionを使ってAzure Container RegistryのコンテナをPULLする

Azure Pipelinesにおいて、ジョブを動かすコンテナイメージをAzure Container RegistryからPULLしたい。 これを実行するとき、docker loginでACRにログインするんだろうなと考えていました。そうすると、ログイン用のクレデンシャルを保存しておかなければな…

Azure PipelinesのジョブがInitialize Containersフェーズでuseradd Permission denied.で失敗する

Azure上でコンテナベースのジョブを作ったら、Initialize Containersフェーズでuseradd: Permission denied.というエラーが発生しました。 Try to create a user with UID '1001' inside the container. /usr/bin/docker exec dee61730d7328016d8d3f56d81cb0…

Azure Pipelinesでalpineベースのコンテナを使うとエラーになる

AzureでCIを行う場合はAzure Pipelinesを使うことになります。 また、最近のCIは都度同じ環境でCIを動かせるようにコンテナの上で実行するのがスタンダードです。 このため、開発しているプロダクトではalpineベースのコンテナでCIジョブを動作させていまし…