From e93b497231390bbef81d64bd068c7d81305f0bc3 Mon Sep 17 00:00:00 2001 From: LongYinan <lynweklm@gmail.com> Date: Fri, 8 Dec 2023 13:53:23 +0800 Subject: [PATCH] chore: also set version to helm charts in set-version.sh (#5100) --- .github/actions/deploy/deploy.mjs | 4 ++- .github/helm/affine/Chart.yaml | 2 +- .github/helm/affine/charts/graphql/Chart.yaml | 2 +- .github/helm/affine/charts/sync/Chart.yaml | 2 +- .github/workflows/deploy.yml | 7 ++++ scripts/set-version.sh | 32 +++++++++++++++++++ tools/commitlint/package.json | 2 +- 7 files changed, 46 insertions(+), 5 deletions(-) diff --git a/.github/actions/deploy/deploy.mjs b/.github/actions/deploy/deploy.mjs index 64baadd937..126d3b111d 100644 --- a/.github/actions/deploy/deploy.mjs +++ b/.github/actions/deploy/deploy.mjs @@ -1,6 +1,7 @@ import { execSync } from 'node:child_process'; const { + APP_VERSION, BUILD_TYPE, DEPLOY_HOST, CANARY_DEPLOY_HOST, @@ -79,6 +80,7 @@ const createHelmCommand = ({ isDryRun }) => { `--set global.ingress.enabled=true`, `--set-json global.ingress.annotations=\"{ \\"kubernetes.io/ingress.class\\": \\"gce\\", \\"kubernetes.io/ingress.allow-http\\": \\"true\\", \\"kubernetes.io/ingress.global-static-ip-name\\": \\"${staticIpName}\\" }\"`, `--set-string global.ingress.host="${host}"`, + `--set-string global.version="${APP_VERSION}"`, ...redisAndPostgres, `--set web.replicaCount=${webReplicaCount}`, `--set-string web.image.tag="${imageTag}"`, @@ -105,7 +107,7 @@ const createHelmCommand = ({ isDryRun }) => { `--set sync.replicaCount=${syncReplicaCount}`, `--set-string sync.image.tag="${imageTag}"`, ...serviceAnnotations, - `--version "0.0.0-${buildType}.${GIT_SHORT_HASH}" --timeout 10m`, + `--timeout 10m`, flag, ].join(' '); return deployCommand; diff --git a/.github/helm/affine/Chart.yaml b/.github/helm/affine/Chart.yaml index d2e490ed86..281ccd9bd0 100644 --- a/.github/helm/affine/Chart.yaml +++ b/.github/helm/affine/Chart.yaml @@ -3,4 +3,4 @@ name: affine description: AFFiNE cloud chart type: application version: 0.0.0 -appVersion: '0.7.0-canary.18' +appVersion: "0.10.3-canary.2" diff --git a/.github/helm/affine/charts/graphql/Chart.yaml b/.github/helm/affine/charts/graphql/Chart.yaml index acb3e90b7b..8a66ffa1ae 100644 --- a/.github/helm/affine/charts/graphql/Chart.yaml +++ b/.github/helm/affine/charts/graphql/Chart.yaml @@ -3,4 +3,4 @@ name: graphql description: AFFiNE GraphQL server type: application version: 0.0.0 -appVersion: '0.7.0-canary.18' +appVersion: "0.10.3-canary.2" diff --git a/.github/helm/affine/charts/sync/Chart.yaml b/.github/helm/affine/charts/sync/Chart.yaml index 9fde73dfcd..071318a561 100644 --- a/.github/helm/affine/charts/sync/Chart.yaml +++ b/.github/helm/affine/charts/sync/Chart.yaml @@ -3,4 +3,4 @@ name: sync description: A Helm chart for Kubernetes type: application version: 0.0.0 -appVersion: "0.7.0-canary.18" +appVersion: "0.10.3-canary.2" diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 31ec20581b..253270d81f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -207,6 +207,12 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: setup deploy version + id: version + run: | + export APP_VERSION=`node -e "console.log(require('./package.json').version)"` + echo $APP_VERSION + echo "APP_VERSION=$APP_VERSION" >> "$GITHUB_OUTPUT" - name: Deploy to ${{ github.event.inputs.flavor }} uses: ./.github/actions/deploy with: @@ -217,6 +223,7 @@ jobs: cluster-name: ${{ secrets.GCP_CLUSTER_NAME }} cluster-location: ${{ secrets.GCP_CLUSTER_LOCATION }} env: + APP_VERSION: ${{ steps.version.outputs.APP_VERSION }} DEPLOY_HOST: ${{ secrets.DEPLOY_HOST }} CANARY_DEPLOY_HOST: ${{ secrets.CANARY_DEPLOY_HOST }} R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }} diff --git a/scripts/set-version.sh b/scripts/set-version.sh index bf421bb821..448b638143 100755 --- a/scripts/set-version.sh +++ b/scripts/set-version.sh @@ -6,3 +6,35 @@ for DIR in $(yarn workspaces list --json | jq -r '.location'); do jq ".version = \"$1\"" "$DIR"/package.json > tmp.json && mv tmp.json "$DIR"/package.json fi done + +update_app_version_in_helm_charts() { + local file_path=$1 + local new_version=$2 + + # Check if file exists + if [ ! -f "$file_path" ]; then + echo "Error: File does not exist at $file_path." + return 1 + fi + + echo "Updating $file_path with appVersion $new_version" + + # Use sed to replace the appVersion value with the new version. + sed -i.bak -E "s/^appVersion:[[:space:]]+[\"']?.*[\"']?$/appVersion: \"$new_version\"/" "$file_path" + + # Check if sed command succeeded + if [ $? -ne 0 ]; then + echo "Error: Failed to update the appVersion." + return 1 + fi + + echo "appVersion in $file_path updated to $new_version" + + rm "$file_path".bak +} + +new_version=$1 + +update_app_version_in_helm_charts ".github/helm/affine/Chart.yaml" "$new_version" +update_app_version_in_helm_charts ".github/helm/affine/charts/graphql/Chart.yaml" "$new_version" +update_app_version_in_helm_charts ".github/helm/affine/charts/sync/Chart.yaml" "$new_version" diff --git a/tools/commitlint/package.json b/tools/commitlint/package.json index 6a47516f4b..08d92fd448 100644 --- a/tools/commitlint/package.json +++ b/tools/commitlint/package.json @@ -1,6 +1,6 @@ { "name": "@affine/commitlint-config", - "version": "0.0.0", + "version": "0.10.3-canary.2", "private": true, "devDependencies": { "@commitlint/cli": "^18.4.3",