name: Node version on: push: branches: - main paths: - Dockerfile jobs: version-sync: name: Synchronise node-version runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v6 - 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/* - name: Set up Node JS uses: actions/setup-node@v6 with: node-version: 25.6.0 - name: Regenerate ui package-lock.json run: cd ui && npm i - name: Create Pull Request id: cpr uses: peter-evans/create-pull-request@v8.1.0 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' run: gh pr merge --merge --auto version-sync-node env: GH_TOKEN: ${{ secrets.GH_REPO_TOKEN }}