CI/CD@マイクロサービスアーキテクチャ¶
はじめに¶
本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。
マイクロサービスリポジトリ¶
yq¶
マイクロサービスリポジトリのCIで yq コマンドを実行し、Helmチャートリポジトリのyamlを更新する。
command: |
wget https://github.com/mikefarah/yq/releases/download/v4.22.1/yq_linux_amd64
sudo chmod +x /usr/local/bin/yq
yq e -i '.image |="<コミットハッシュ値>"' ./values.yaml
Updatecli¶
マイクロサービスリポジトリのCIでUpdatecliを実行し、Helmチャートリポジトリのyamlを更新する。
name: Update image tag on values.yaml
# 共通処理
scms:
setup:
kind: github
spec:
branch: main
# 変更内容の値
sources:
imageTag:
kind: shell
spec:
command: echo "{{ env "CI_COMMIT_TAG" }}"
# 変更対象
targets:
helmValues:
name: Update image tag on values.yaml
kind: yaml
scmid: setup
spec:
file: ./values.yaml
key: $.image.tag
sourceid: imageTag
# プルリクエストの内容
actions:
default:
kind: github/mergerequest
scmid: setup
spec:
automerge: false
description: |
values.yamlのイメージタグを `{{ env "CI_COMMIT_TAG" }}` に更新しました
title: "Update image tag to {{ env "CI_COMMIT_TAG" }} on values.yaml"
Helmチャートリポジトリ¶
記入中...