name: convert-to-yml run-name: ${{ github.actor }} is learning GitHub Actions on: push: jobs: develop-branch: if: ${{ startsWith(github.ref_name, 'format-') }} runs-on: ubuntu-latest steps: # https://github.com/RouxAntoine/checkout/tree/v3.5.4 - uses: RouxAntoine/checkout@v3.5.4 - uses: actions/setup-node@v3 with: node-version: '20' - uses: https://github.com/gilesbradshaw/batch2yaml@master with: action: yml path: '.' - name: get production branch name run: | firstString=${{ github.ref_name }} secondString="develop-" echo ::set-env name=PRODUCTION_BRANCH::${firstString/format-/"$secondString"} - name: clone run: | git remote -v git clone ${{ github.serverUrl }}/${{ github.repository }} ../cloned git -C ../cloned remote -v git -C ../cloned status 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 . ls -la git status - name: GIT commit and push all changed files env: CI_COMMIT_MESSAGE: Continuous Integration Build Artifacts 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 checkout -b ${{ env.PRODUCTION_BRANCH }} git add -A git status git commit -a -m "${{ env.CI_COMMIT_MESSAGE }} xml files converted to yml" git push -f origin HEAD:${{ env.PRODUCTION_BRANCH }} - name: make pull request #git fetch # git merge origin/master --allow-unrelated-histories --strategy-option=ours # git push origin HEAD:${{ env.PRODUCTION_BRANCH }} 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.TEA_TOKEN }} if [[ $(./tea pr ls -f=base,head | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | head -c1 | wc -c) -eq 0 ]]; then ./tea pr c --base=master --head=${{ env.PRODUCTION_BRANCH }} --description="development pull request" -t="WIP: ${{ github.event.head_commit.message }}" fi rm ./tea - uses: https://github.com/gilesbradshaw/batch2yaml@master name: back to xml 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 pr ls -f=base,head,index ./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" ./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | tr -d ' ' ./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | tr -d ' ' | tr "|" "\n" ./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | tr -d ' ' | tr "|" "\n" | head -n 4 | ./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | tr -d ' ' | tr "|" "\n" | head -n 4 | tail -1 echo ::set-env name=PR::$(./tea pr ls -f=base,head,index | grep "| master | ${{ env.PRODUCTION_BRANCH }} |" | tr -d ' ' | tr "|" "\n" | head -n 4 | tail -1) echo $PR rm ./tea - 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 changes env: CI_COMMIT_MESSAGE: Continuous Integration Build Artifacts 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 checkout -b ${{ env.BUILD_BRANCH }} git add -A git commit -a -m "${{ env.CI_COMMIT_MESSAGE }} ym files converted to xml" git push -f origin HEAD:${{ env.BUILD_BRANCH }} - 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 "ohhhh i see!!!"