|
22 | 22 | - name: Generate changelog |
23 | 23 | id: changelog |
24 | 24 | run: | |
25 | | - echo "::set-output name=tag-name::${GITHUB_REF#refs/tags/}" |
| 25 | + echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT |
26 | 26 | gh api repos/$GITHUB_REPOSITORY/releases/generate-notes \ |
27 | 27 | -f tag_name="${GITHUB_REF#refs/tags/}" \ |
28 | 28 | -f target_commitish=main \ |
|
37 | 37 | args: release --release-notes=.CHANGELOG.md |
38 | 38 | env: |
39 | 39 | GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} |
40 | | - GORELEASER_CURRENT_TAG: ${{steps.changelog.outputs.tag-name}} |
| 40 | + GORELEASER_CURRENT_TAG: ${{steps.changelog.outputs.TAG_NAME}} |
| 41 | + |
| 42 | + - name: Set up tiup |
| 43 | + id: init_tiup |
| 44 | + run: | |
| 45 | + TMP_DIR=`mktemp -d` |
| 46 | + export TIUP_HOME="$TMP_DIR/home" |
| 47 | + echo "TIUP_HOME=$TIUP_HOME" >> $GITHUB_OUTPUT |
| 48 | + echo "TIUP_BIN=$TIUP_HOME/bin/tiup" >> $GITHUB_OUTPUT |
| 49 | + rm -rf $TIUP_HOME && mkdir -p $TIUP_HOME/{bin,keys} |
| 50 | + wget -O $TMP_DIR/tiup-linux-amd64.tar.gz -q https://tiup-mirrors.pingcap.com/tiup-linux-amd64.tar.gz |
| 51 | + tar -zxf $TMP_DIR/tiup-linux-amd64.tar.gz -C $TIUP_HOME/bin && chmod 755 $TIUP_HOME/bin/tiup |
| 52 | + curl -s https://tiup-mirrors.pingcap.com/root.json -o $TIUP_HOME/bin/root.json |
| 53 | + |
| 54 | + TIUP_MIRRORS=${{ secrets.TIUP_SERVER_PROD }} |
| 55 | + $TIUP_HOME/bin/tiup mirror set ${TIUP_MIRRORS} |
| 56 | + echo ${{ secrets.TIUP_COMP_KEY_PINGCAP }} | base64 -d > $TIUP_HOME/keys/private.json |
| 57 | +
|
| 58 | + - name: Publish package |
| 59 | + env: |
| 60 | + TIUP_HOME: ${{ steps.init_tiup.outputs.TIUP_HOME }} |
| 61 | + TIUP_BIN: ${{ steps.init_tiup.outputs.TIUP_BIN }} |
| 62 | + REL_VER: ${{steps.changelog.outputs.TAG_NAME}} |
| 63 | + BINARY_NAME: "ticloud" |
| 64 | + COMPONENT_NAME: "cloud" |
| 65 | + COMPONENT_DESC: "CLI tool to manage TiDB Cloud" |
| 66 | + run: | |
| 67 | + matrix=( |
| 68 | + 'darwin amd64' |
| 69 | + 'darwin arm64' |
| 70 | + 'linux amd64' |
| 71 | + 'linux arm64' |
| 72 | + ) |
| 73 | + |
| 74 | + # skip the first letter v in the tag name |
| 75 | + export VER="${REL_VER:1}" |
| 76 | + |
| 77 | + for item in "${matrix[@]}" ; do |
| 78 | + os_arch=($item) |
| 79 | + os=(${os_arch[0]}) |
| 80 | + arch=(${os_arch[1]}) |
| 81 | +
|
| 82 | + filename="dist/${BINARY_NAME}_${VER}_${os}_${arch}.tar.gz" |
| 83 | + |
| 84 | + if [ ! -f "$filename" ]; then |
| 85 | + echo "File $filename does not exist" |
| 86 | + exit 1 |
| 87 | + fi |
| 88 | + |
| 89 | + echo "Releasing v${REL_VER} for os $os arch $arch..." |
| 90 | +
|
| 91 | + ${TIUP_BIN} mirror publish $COMPONENT_NAME ${REL_VER} $filename $BINARY_NAME --os=$os --arch=$arch --desc="$COMPONENT_DESC" |
| 92 | + done |
0 commit comments