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

86 lines
3.5 KiB
YAML
Raw Normal View History

2023-10-23 01:26:40 +00:00
name: convert-to-yml
run-name: ${{ github.actor }} is learning GitHub Actions
on:
push:
branches:
- 'build/**'
jobs:
develop-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'
- run: git fetch
- name: log
run: git log -10
- uses: http://sigyl.com:3000/actions/batch2yaml@master
with:
action: yml
path: '.'
- name: get development branch name
run: |
firstString=${{ github.ref_name }}
secondString="develop"
echo ::set-env name=DEVELOPMENT_BRANCH::${firstString/build\//"$secondString"\/}
2023-10-23 08:39:37 +00:00
- name: commit
2023-10-23 01:26:40 +00:00
env:
CI_COMMIT_MESSAGE: converted to yml for review.
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
2023-10-23 08:29:46 +00:00
git commit -a -m "${{ github.ref_name }} -> ${{ env.DEVELOPMENT_BRANCH }}"
2023-10-23 08:44:28 +00:00
- name: status
env:
CI_COMMIT_MESSAGE: converted to yml for review.
CI_COMMIT_AUTHOR: Continuous Integration
run: |
2023-10-23 09:25:13 +00:00
git branch -r
2023-10-23 11:11:43 +00:00
echo $(git branch -r | grep -Fx " origin/${{ env.DEVELOPMENT_BRANCH }}" | wc -c)
2023-10-23 08:39:37 +00:00
- name: diff
env:
CI_COMMIT_MESSAGE: converted to yml for review.
CI_COMMIT_AUTHOR: Continuous Integration
run: |
2023-10-23 11:11:43 +00:00
if [[ $(git branch -r | grep -Fx " origin/${{ env.DEVELOPMENT_BRANCH }}" | wc -c) -eq 0 ]]; then
2023-10-23 11:06:27 +00:00
echo no development branch so pushing
2023-10-23 11:11:43 +00:00
git push origin HEAD:${{ env.DEVELOPMENT_BRANCH }};
2023-10-23 09:18:34 +00:00
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 }};
if [[ $(./tea pr ls -f=base,head | grep "| master | ${{ env.DEVELOPMENT_BRANCH }} |" | head -c1 | wc -c) -eq 0 ]]; then
2023-10-23 09:38:23 +00:00
./tea pr c --base=master --head=${{ env.DEVELOPMENT_BRANCH }} --description="development pull request" -t="WIP: ${{ github.event.head_commit.message }}"
2023-10-23 09:18:34 +00:00
fi
echo 'pushed new branch and created pr';
2023-10-23 08:39:37 +00:00
else
2023-10-23 11:16:51 +00:00
if [[ $(git diff origin/${{ env.DEVELOPMENT_BRANCH }} | wc -c) -ne 0 ]]; then
git clone ${{ github.serverUrl }}/${{ github.repository }} ../cloned
git -C ../cloned fetch origin #--depth=1
git -C ../cloned branch -r
git -C ../cloned checkout $DEVELOPMENT_BRANCH || git -C ../cloned checkout -b $DEVELOPMENT_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 status
2023-10-23 11:18:10 +00:00
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.DEVELOPMENT_BRANCH }}"
2023-10-23 11:16:51 +00:00
git push origin HEAD:${{ env.DEVELOPMENT_BRANCH }};
2023-10-23 09:16:00 +00:00
else
echo 'no changes so no push'
fi;
fi