mirror of
https://github.com/kubevela/kubevela.git
synced 2026-05-20 08:13:23 +00:00
* Chore: cherry-pick #5821 #5822 Signed-off-by: Somefive <yd219913@alibaba-inc.com> * Chore: upgrade cluster gateway Signed-off-by: Somefive <yd219913@alibaba-inc.com> * Chore: fix config test Signed-off-by: Somefive <yd219913@alibaba-inc.com> --------- Signed-off-by: Somefive <yd219913@alibaba-inc.com>
97 lines
3.6 KiB
YAML
97 lines
3.6 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "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
|
|
|
|
jobs:
|
|
build:
|
|
permissions:
|
|
contents: write
|
|
actions: read
|
|
checks: write
|
|
issues: read
|
|
packages: write
|
|
pull-requests: read
|
|
repository-projects: read
|
|
statuses: read
|
|
runs-on: ubuntu-22.04
|
|
name: goreleaser
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
|
|
with:
|
|
fetch-depth: 0
|
|
- run: git fetch --force --tags
|
|
- name: Set up Go
|
|
uses: actions/setup-go@4d34df0c2316fe8122ab82dc22947d607c0c91f9
|
|
with:
|
|
go-version: 1.19
|
|
cache: true
|
|
- uses: goreleaser/goreleaser-action@f82d6c1c344bcacabba2c841718984797f664a6b # v4.2.0
|
|
with:
|
|
distribution: goreleaser
|
|
version: 1.14.1
|
|
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
|
|
actions: read
|
|
checks: write
|
|
issues: read
|
|
packages: write
|
|
pull-requests: read
|
|
repository-projects: read
|
|
statuses: read
|
|
needs: build
|
|
runs-on: ubuntu-22.04
|
|
if: ${{ !contains(github.ref, 'alpha') && !contains(github.ref, 'beta') && !contains(github.ref, 'rc') }}
|
|
name: upload-sha256sums
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab
|
|
- name: Update kubectl plugin version in krew-index
|
|
uses: rajatjindal/krew-release-bot@df3eb197549e3568be8b4767eec31c5e8e8e6ad8 # v0.0.46
|
|
- name: Update Homebrew formula
|
|
uses: dawidd6/action-homebrew-bump-formula@d3667e5ae14df19579e4414897498e3e88f2f458 # v3.10.0
|
|
with:
|
|
token: ${{ secrets.HOMEBREW_TOKEN }}
|
|
formula: kubevela
|
|
tag: ${{ github.ref }}
|
|
revision: ${{ github.sha }}
|
|
force: false
|