From 3f8a784ea0353013b736bcef42d6db742c11267f Mon Sep 17 00:00:00 2001 From: gilesb Date: Wed, 25 Oct 2023 12:17:58 +0100 Subject: [PATCH] test-push --- .gitea/workflows/develop-build.yml | 89 ++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 .gitea/workflows/develop-build.yml diff --git a/.gitea/workflows/develop-build.yml b/.gitea/workflows/develop-build.yml new file mode 100644 index 0000000..6df3931 --- /dev/null +++ b/.gitea/workflows/develop-build.yml @@ -0,0 +1,89 @@ +name: build-develop-branch +run-name: ${{ github.actor }} is learning GitHub Actions +on: + push: + branches: + - 'develop/**' +jobs: + build-branch: + runs-on: ubuntu-latest + steps: + # https://github.com/RouxAntoine/checkout/tree/v3.5.4 + - uses: http://sigyl.com:3000/actions/checkout@v3.5.4 + with: + token: ${{ secrets.BOT_TOKEN }} + fetch-depth: '10' + - env: env + run: printenv + - name: get tea + run: | + curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output ../tea + chmod +x ../tea + ../tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.BOT_TOKEN }} + - uses: http://sigyl.com:3000/actions/setup-node@v3 + with: + node-version: '20' + - uses: http://sigyl.com:3000/actions/batch2yaml@master + with: + action: xml + path: '.' + - run: git fetch + - name: config + run: | + git config --global user.name "${{ github.actor }}" + git config --global user.email "${{ github.event.pusher.email }}" + - name: get build branch name + run: | + firstString=${{ github.ref_name }} + secondString="build" + echo ::set-env name=BUILD_BRANCH::${firstString/develop\//"$secondString"\/} + - name: status + run: | + ls + - name: push + run: | + git add -A + git commit -a -m "${{ github.ref_name }} -> ${{ env.BUILD_BRANCH }} " + if [[ $(git branch -r | grep -Fx " origin/${{ env.BUILD_BRANCH }}" | wc -c) -eq 0 ]]; then + git push origin HEAD:${{ env.BUILD_BRANCH }}; + else + if [[ $(git diff origin/${{ env.BUILD_BRANCH }} | wc -c) -ne 0 ]]; then + #git rebase -Xtheirs origin/${{ env.BUILD_BRANCH }} + git clone ${{ github.serverUrl }}/${{ github.repository }} ../cloned + git -C ../cloned fetch origin #--depth=1 + git -C ../cloned checkout $BUILD_BRANCH || git -C ../cloned checkout -b $BUILD_BRANCH + mv ../cloned/.git .. + rm -rf ../cloned + cp -r . ../cloned + rm -rf ../cloned/.git + mv ../.git ../cloned + mv .git/config ../cloned/.git + rm -r ./* + rm -r .git + mv ../cloned/* . + mv ../cloned/.git . + git add -A + git commit -a -m "${{ github.ref_name }} -> ${{ env.BUILD_BRANCH }} " + git push origin HEAD:${{ env.BUILD_BRANCH }} + else + echo 'no changes so no push' + fi; + fi; + - name: make PR + run: | + ../tea pr ls -f=base,head -o=csv + if [[ $(../tea pr ls -f=base,head -o=csv | grep "\"master\",\"${{ github.ref_name }}\"" | head -c1 | wc -c) -eq 0 ]]; then + ../tea pr c --base=master --head=${{ github.ref_name }} --description=" + development pull request + this PR is will been built on [${{ github.ref_name }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }}) + " -t="WIP: ${{ github.event.head_commit.message }}" + fi + - name: get PR number + run: | + pr=$(../tea pr ls -f=base,head,index -o csv | grep "\"master\",\"${{ github.ref_name }}\"" | tr -d ' ' | tr "," "\n" | head -n 4 | tail -1) + export PR="${pr//[\"\'\`]/}" + echo ::set-env name=PR::$PR + - name: make pull request comment + run: | + ../tea c $PR "this branch has been built on [${{ env.BUILD_BRANCH }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})" + \ No newline at end of file