name: Build files and push to `build` branch. on: push: branches: - production paths: - themes/** - plugins/** # Enable manually running action if necessary. workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 # Required for old theme build step. - name: Checkout wporg CSS run: | svn export https://meta.svn.wordpress.org/sites/trunk/wordpress.org/public_html/wp-content/themes/pub/wporg/css themes/pub/wporg/css --quiet - name: Setup uses: WordPress/wporg-repo-tools/.github/actions/setup@trunk with: packageManager: "npm" token: ${{ secrets.GITHUB_TOKEN }} - name: Remove build artifacts run: | rm -rf themes/wporg-5ftf/node_modules themes/wporg-5ftf-2024/node_modules plugins/wporg-5ftf/node_modules - name: Ignore .gitignore run: | git add themes/wporg-5ftf/* --force git add themes/wporg-5ftf-2024/* --force git add plugins/wporg-5ftf/* --force - name: Append build number to version run: | current_version=$(grep -oP 'Version: \K[0-9]+\.[0-9]+\.[0-9]+' themes/wporg-5ftf-2024/style.css) new_version="${current_version}-${GITHUB_SHA::7}" sed -i "s/Version: $current_version/Version: $new_version/" themes/wporg-5ftf-2024/style.css sed -i "s/\"version\": \"0.1.0\"/\"version\": \"$new_version\"/" themes/wporg-5ftf-2024/build/**/block.json - name: Commit and push # Using a specific hash here instead of a tagged version, for risk mitigation, since this action modifies our repo. uses: actions-js/push@a52398fac807b0c1e5f1492c969b477c8560a0ba # 1.3 with: github_token: ${{ secrets.GITHUB_TOKEN }} branch: build force: true message: 'Build: ${{ github.sha }}'