name: Node version on: push: branches: - main paths: - Dockerfile jobs: version-sync: name: Synchronise node-version runs-on: ubuntu-20.04 steps: - name: Check out code uses: actions/checkout@v3 - name: Get Node version from Dockerfile run: | echo "NODE_VERSION=$(grep 'FROM node:' Dockerfile | cut -d ':' -f2 | cut -d '-' -f1 | tr -d '\n')" >> $GITHUB_ENV - name: Synchronise Node version in actions run: | sed -i -E s/'([\ \t]+)node-version: .+'/'\1node-version: ${{ env.NODE_VERSION }}'/g .github/workflows/* sed -i -E s/'([\ \t]+)"node": .+'/'\1"node": "${{ env.NODE_VERSION }}"'/g ui/package.json - name: Set up Node JS uses: actions/setup-node@v3 with: node-version: 19.1.0 - name: Regenerate ui package-lock.json run: cd ui && npm i - name: Create Pull Request id: cpr uses: peter-evans/create-pull-request@v4.2.2 with: token: ${{ secrets.GH_REPO_TOKEN }} author: "Ɓukasz Mierzwa " commit-message: "chore(actions): use latest Node version" branch: version-sync-node delete-branch: true title: "chore(actions): use latest Node version" - name: Check outputs run: | echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}" echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}" - name: Enable Pull Request Automerge if: steps.cpr.outputs.pull-request-operation == 'created' uses: peter-evans/enable-pull-request-automerge@v2.2.1 with: token: ${{ secrets.GH_REPO_TOKEN }} pull-request-number: ${{ steps.cpr.outputs.pull-request-number }} merge-method: rebase