batch-example/.gitea/workflows/develop -> build.yml

59 lines
2.4 KiB
YAML

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'
- 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: '.'
- name: get PR number
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 }}
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
rm ./tea
- run: git fetch
- name: get build branch name
run: |
firstString=${{ github.ref_name }}
secondString="build"
echo ::set-env name=BUILD_BRANCH::${firstString/develop\//"$secondString"\/}
- name: GIT commit and push all changed files
env:
CI_COMMIT_MESSAGE: Development branch built to xml.
CI_COMMIT_AUTHOR: Continuous Integration
run: |
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}"
git config --global user.email "username@users.noreply.github.com"
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.BUILD_BRANCH }} "
git checkout -b ${{ env.BUILD_BRANCH }}
git merge --squash ${{ github.ref_name }}
if [[ $(git diff origin/${{ env.BUILD_BRANCH }} | wc -c) -ne 0 ]]; then
git push -f origin HEAD:${{ env.BUILD_BRANCH }}
else
echo 'no changes so no push'
fi;
- name: make pull request comment
run: |
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output tea
chmod +x ./tea
./tea c $PR "this branch has been built on [${{ env.BUILD_BRANCH }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})"