From db05207ce1978baa3b4b287c3755456af0bb3f72 Mon Sep 17 00:00:00 2001 From: fscarmen <62703343+fscarmen@users.noreply.github.com> Date: Sun, 21 Aug 2022 21:34:22 +0800 Subject: [PATCH] Create warp-go.yml --- .github/workflows/warp-go.yml | 65 +++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 .github/workflows/warp-go.yml diff --git a/.github/workflows/warp-go.yml b/.github/workflows/warp-go.yml new file mode 100644 index 0000000..2d6c1a6 --- /dev/null +++ b/.github/workflows/warp-go.yml @@ -0,0 +1,65 @@ +name: Sync warp-go latest version + +on: + workflow_dispatch: +# schedule: +# - cron: '3 2 * * *' + +jobs: + build: + name: Sync warp-go latest version + runs-on: ubuntu-latest + env: + USERNAME: ${{ secrets.GH_USERNAME }} + EMAIL: ${{ secrets.GH_EMAIL }} + + steps: + - uses: actions/checkout@v3 + - name: Update warp-go to latest version + run: | + NOW=$(wget -qO- https://raw.githubusercontent.com/${{ env.USERNAME }}/warp/main/warp-go.sh | grep 'latest=${latest' | cut -d \' -f2) + LATEST=$(wget -qO- -T1 -t1 https://gitlab.com/api/v4/projects/ProjectWARP%2Fwarp-go/releases | grep -oP '"tag_name":"v\K[^\"]+' | head -n 1) + NOW1=$(echo $NOW | cut -d \. -f1) + NOW2=$(echo $NOW | cut -d \. -f2) + NOW3=$(echo $NOW | cut -d \. -f3) + LATEST1=$(echo $LATEST | cut -d \. -f1) + LATEST2=$(echo $LATEST | cut -d \. -f2) + LATEST3=$(echo $LATEST | cut -d \. -f3) + NOW_VERSION=$(( NOW1*1000000 + NOW2*1000 + NOW3 )) + LATEST_VERSION=$(( LATEST1*1000000 + LATEST2*1000 + LATEST3 )) + if [ $LATEST_VERSION -gt $NOW_VERSION ]; then + PLATFORM=( "linux_386" + "linux_amd64" + "linux_amd64v2" + "linux_amd64v3" + "linux_amd64v4" + "linux_arm64" + "linux_386" + "linux_s390x" + ) + + SCRIPTS=( "warp-go.sh" + ) + + for i in "${PLATFORM[@]}"; do + wget -NP ${GITHUB_WORKSPACE}/warp-go/ https://gitlab.com/ProjectWARP/warp-go/-/releases/v"$LATEST"/downloads/warp-go_"$LATEST"_linux_"$i".tar.gz + rm -f ${GITHUB_WORKSPACE}/wgcf/warp-go_"$NOW"_linux_"$i".tar.gz + done + + for j in "${SCRIPTS[@]}"; do + # wget -O ${GITHUB_WORKSPACE}/$j https://raw.githubusercontent.com/${{ env.USERNAME }}/warp/main/"$j" + wget -O ${GITHUB_WORKSPACE}/$j https://raw.githubusercontent.com/${{ env.USERNAME }}/test/main/"$j" + sed -i "s/$NOW/$LATEST/g" ${GITHUB_WORKSPACE}/$j + done + + echo "VERSION=$LATEST" >> $GITHUB_ENV + fi + + - name: Upload to REPO + if: ${{ env.VERSION != '' }} + run: | + git config --global user.email "${{ env.EMAIL }}" + git config --global user.name "${{ env.USERNAME }}" + git add . + git commit -m "Sync warp-go to V${{ env.VERSION }} by Github Actions, $(date "+%Y/%m/%d %H:%M:%S")" + git push