From af7922d87ca0082a2d6f03eba7c51694b07bd1db Mon Sep 17 00:00:00 2001 From: Somefive Date: Wed, 31 May 2023 14:14:05 +0800 Subject: [PATCH] Chore: remove oss upload in CI (#6051) --- .github/workflows/chart.yml | 66 +++++++++--------------------- .github/workflows/registry.yml | 73 ---------------------------------- .github/workflows/release.yml | 27 ------------- 3 files changed, 18 insertions(+), 148 deletions(-) diff --git a/.github/workflows/chart.yml b/.github/workflows/chart.yml index daa7d9795..bfdd66163 100644 --- a/.github/workflows/chart.yml +++ b/.github/workflows/chart.yml @@ -9,24 +9,12 @@ on: permissions: contents: read -env: - BUCKET: ${{ secrets.OSS_BUCKET }} - ENDPOINT: ${{ secrets.OSS_ENDPOINT }} - ACCESS_KEY: ${{ secrets.OSS_ACCESS_KEY }} - ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }} - ARTIFACT_HUB_REPOSITORY_ID: ${{ secrets.ARTIFACT_HUB_REPOSITORY_ID }} - jobs: publish-charts: env: HELM_CHARTS_DIR: charts HELM_CHART: charts/vela-core - LEGACY_HELM_CHART: legacy/charts/vela-core-legacy - VELA_ROLLOUT_HELM_CHART: runtime/rollout/charts - LOCAL_OSS_DIRECTORY: .oss HELM_CHART_NAME: vela-core - LEGACY_HELM_CHART_NAME: vela-core-legacy - VELA_ROLLOUT_HELM_CHART_NAME: vela-rollout runs-on: ubuntu-22.04 steps: - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab @@ -46,13 +34,6 @@ jobs: - name: Generate helm doc run: | make helm-doc-gen - - name: Prepare legacy chart - run: | - rsync -r $LEGACY_HELM_CHART $HELM_CHARTS_DIR - rsync -r $HELM_CHART/* $LEGACY_HELM_CHART --exclude=Chart.yaml --exclude=crds - - name: Prepare vela chart - run: | - rsync -r $VELA_ROLLOUT_HELM_CHART $HELM_CHARTS_DIR - name: Get the version id: get_version run: | @@ -63,35 +44,24 @@ jobs: image_tag=${{ steps.get_version.outputs.VERSION }} chart_version=${{ steps.get_version.outputs.VERSION }} sed -i "s/latest/${image_tag}/g" $HELM_CHART/values.yaml - sed -i "s/latest/${image_tag}/g" $LEGACY_HELM_CHART/values.yaml - sed -i "s/latest/${image_tag}/g" $VELA_ROLLOUT_HELM_CHART/values.yaml chart_smever=${chart_version#"v"} sed -i "s/0.1.0/$chart_smever/g" $HELM_CHART/Chart.yaml - sed -i "s/0.1.0/$chart_smever/g" $LEGACY_HELM_CHART/Chart.yaml - sed -i "s/0.1.0/$chart_smever/g" $VELA_ROLLOUT_HELM_CHART/Chart.yaml - - name: Install ossutil - run: wget http://gosspublic.alicdn.com/ossutil/1.7.0/ossutil64 && chmod +x ossutil64 && mv ossutil64 ossutil - - name: Configure Alibaba Cloud OSSUTIL - run: ./ossutil --config-file .ossutilconfig config -i ${ACCESS_KEY} -k ${ACCESS_KEY_SECRET} -e ${ENDPOINT} -c .ossutilconfig - - name: sync cloud to local - run: ./ossutil --config-file .ossutilconfig sync oss://$BUCKET/core $LOCAL_OSS_DIRECTORY - - name: add artifacthub stuff to the repo + + - uses: jnwng/github-app-installation-token-action@v2 + id: get_app_token + with: + appId: 340472 + installationId: 38064967 + privateKey: ${{ secrets.GH_KUBEVELA_APP_PRIVATE_KEY }} + - name: Sync Chart Repo run: | - rsync $HELM_CHART/README.md $LEGACY_HELM_CHART/README.md - rsync $HELM_CHART/README.md $VELA_ROLLOUT_HELM_CHART/README.md - sed -i "s/ARTIFACT_HUB_REPOSITORY_ID/$ARTIFACT_HUB_REPOSITORY_ID/g" hack/artifacthub/artifacthub-repo.yml - rsync hack/artifacthub/artifacthub-repo.yml $LOCAL_OSS_DIRECTORY - - name: Package helm charts - run: | - helm package $HELM_CHART --destination $LOCAL_OSS_DIRECTORY - helm package $LEGACY_HELM_CHART --destination $LOCAL_OSS_DIRECTORY - helm package $VELA_ROLLOUT_HELM_CHART --destination $LOCAL_OSS_DIRECTORY - helm repo index --url https://$BUCKET.$ENDPOINT/core $LOCAL_OSS_DIRECTORY - - name: sync local to cloud - run: | - image_tag=${{ steps.get_version.outputs.VERSION }} - chart_semver=${image_tag#"v"} - ./ossutil --config-file .ossutilconfig cp -f $LOCAL_OSS_DIRECTORY/index.yaml oss://$BUCKET/core/index.yaml - ./ossutil --config-file .ossutilconfig cp -f $LOCAL_OSS_DIRECTORY/$HELM_CHART_NAME-${chart_semver}.tgz oss://$BUCKET/core/$HELM_CHART_NAME-${chart_semver}.tgz - ./ossutil --config-file .ossutilconfig cp -f $LOCAL_OSS_DIRECTORY/$LEGACY_HELM_CHART_NAME-${chart_semver}.tgz oss://$BUCKET/core/$LEGACY_HELM_CHART_NAME-${chart_semver}.tgz - ./ossutil --config-file .ossutilconfig cp -f $LOCAL_OSS_DIRECTORY/$VELA_ROLLOUT_HELM_CHART_NAME-${chart_semver}.tgz oss://$BUCKET/core/$VELA_ROLLOUT_HELM_CHART_NAME-${chart_semver}.tgz + git config --global user.email "135009839+kubevela[bot]@users.noreply.github.com" + git config --global user.name "kubevela[bot]" + git clone https://x-access-token:${{ steps.get_app_token.outputs.token }}@github.com/kubevela/charts.git kubevela-charts + helm package $HELM_CHART --destination ./kubevela-charts/docs/ + helm repo index --url https://kubevela.github.io/charts ./kubevela-charts/docs/ + cd kubevela-charts/ + git add docs/ + chart_version=${{ steps.get_version.outputs.VERSION }} + git commit -m "update vela-core chart ${chart_version}" + git push https://x-access-token:${{ steps.get_app_token.outputs.token }}@github.com/kubevela/charts.git diff --git a/.github/workflows/registry.yml b/.github/workflows/registry.yml index f13e5873b..d90c50a4d 100644 --- a/.github/workflows/registry.yml +++ b/.github/workflows/registry.yml @@ -86,76 +86,3 @@ jobs: tags: |- docker.io/oamdev/vela-cli:${{ steps.get_version.outputs.VERSION }} ghcr.io/${{ github.repository_owner }}/oamdev/vela-cli:${{ steps.get_version.outputs.VERSION }} - - publish-addon-images: - permissions: - packages: write - runs-on: ubuntu-22.04 - steps: - - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab - - name: Get the version - id: get_version - run: | - VERSION=${GITHUB_REF#refs/tags/} - if [[ ${GITHUB_REF} == "refs/heads/master" ]]; then - VERSION=latest - fi - echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT - - name: Get git revision - id: vars - shell: bash - run: | - echo "git_revision=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - - name: Login ghcr.io - uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Login docker.io - uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a # v2.1.0 - with: - registry: docker.io - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 # v2.1.0 - - uses: docker/setup-buildx-action@f03ac48505955848960e80bbb68046aa35c7b9e7 # v2.4.1 - with: - driver-opts: image=moby/buildkit:master - - - uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 # v4.0.0 - name: Build & Pushing runtime rollout Dockerhub, GHCR - with: - context: . - file: runtime/rollout/Dockerfile - labels: |- - org.opencontainers.image.source=https://github.com/${{ github.repository }} - org.opencontainers.image.revision=${{ github.sha }} - platforms: linux/amd64,linux/arm64 - push: ${{ github.event_name != 'pull_request' }} - build-args: | - GITVERSION=git-${{ steps.vars.outputs.git_revision }} - VERSION=${{ steps.get_version.outputs.VERSION }} - GOPROXY=https://proxy.golang.org - tags: |- - docker.io/oamdev/vela-rollout:${{ steps.get_version.outputs.VERSION }} - ghcr.io/${{ github.repository_owner }}/oamdev/vela-rollout:${{ steps.get_version.outputs.VERSION }} - - publish-capabilities: - env: - CAPABILITY_BUCKET: kubevela-registry - CAPABILITY_DIR: capabilities - CAPABILITY_ENDPOINT: oss-cn-beijing.aliyuncs.com - runs-on: ubuntu-22.04 - steps: - - uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab - - name: Install ossutil - run: wget http://gosspublic.alicdn.com/ossutil/1.7.0/ossutil64 && chmod +x ossutil64 && mv ossutil64 ossutil - - name: Configure Alibaba Cloud OSSUTIL - run: ./ossutil --config-file .ossutilconfig config -i ${ACCESS_KEY} -k ${ACCESS_KEY_SECRET} -e ${CAPABILITY_ENDPOINT} -c .ossutilconfig - - name: sync capabilities bucket to local - run: ./ossutil --config-file .ossutilconfig sync oss://$CAPABILITY_BUCKET $CAPABILITY_DIR - - name: rsync all capabilites - run: rsync vela-templates/registry/auto-gen/* $CAPABILITY_DIR - - name: sync local to cloud - run: ./ossutil --config-file .ossutilconfig sync $CAPABILITY_DIR oss://$CAPABILITY_BUCKET -f diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 448ecc2e7..910ca6cd8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,12 +6,6 @@ on: - "v*" workflow_dispatch: { } -env: - BUCKET: ${{ secrets.CLI_OSS_BUCKET }} - ENDPOINT: ${{ secrets.CLI_OSS_ENDPOINT }} - ACCESS_KEY: ${{ secrets.CLI_OSS_ACCESS_KEY }} - ACCESS_KEY_SECRET: ${{ secrets.CLI_OSS_ACCESS_KEY_SECRET }} - permissions: contents: read @@ -46,27 +40,6 @@ jobs: args: release --rm-dist --timeout 60m env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # Since goreleaser haven't supported aliyun OSS, we need to upload the release manually - - name: Get version - run: echo "VELA_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV - - name: Install ossutil - run: wget http://gosspublic.alicdn.com/ossutil/1.7.0/ossutil64 && chmod +x ossutil64 && mv ossutil64 ossutil - - name: Configure Alibaba Cloud OSSUTIL - run: ./ossutil --config-file .ossutilconfig config -i ${ACCESS_KEY} -k ${ACCESS_KEY_SECRET} -e ${ENDPOINT} - - name: split files to be upload - run: mkdir -p ./dist/files_upload && mv ./dist/*.tar.gz ./dist/files_upload && mv ./dist/*.zip ./dist/files_upload - - name: sync local to cloud - run: ./ossutil --config-file .ossutilconfig sync ./dist/files_upload oss://$BUCKET/binary/vela/${{ env.VELA_VERSION }} - - name: sync the latest version file - if: ${{ !contains(env.VELA_VERSION,'alpha') && !contains(env.VELA_VERSION,'beta') && !contains(env.VELA_VERSION,'rc') }} - run: | - LATEST_VERSION=$(curl -fsSl https://static.kubevela.net/binary/vela/latest_version) - verlte() { - [ "$1" = "`echo -e "$1\n$2" | sort -V | head -n1`" ] - } - verlte ${{ env.VELA_VERSION }} $LATEST_VERSION && echo "${{ env.VELA_VERSION }} <= $LATEST_VERSION, skip update" && exit 0 - echo ${{ env.VELA_VERSION }} > ./latest_version - ./ossutil --config-file .ossutilconfig cp -u ./latest_version oss://$BUCKET/binary/vela/latest_version upload-plugin-homebrew: permissions: contents: write