Update test-assistant-api-rest-change-tracker.yml #12
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build live branch when trunk updated | |
on: | |
push: | |
branches: | |
- trunk | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
permissions: {} | |
jobs: | |
build: | |
if: github.repository_owner == 'woocommerce' && github.actor != 'github-actions[bot]' | |
runs-on: ubuntu-20.04 | |
permissions: | |
contents: read | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Get current version | |
id: version | |
uses: actions/[email protected] | |
with: | |
script: | |
const { getVersion } = require( './.github/workflows/scripts/get-plugin-version' ); | |
const version = await getVersion( 'woocommerce' ); | |
core.setOutput( 'version', version ); | |
- name: Setup WooCommerce Monorepo | |
uses: ./.github/actions/setup-woocommerce-monorepo | |
- name: Prepare plugin zips | |
id: prepare | |
env: | |
CURRENT_VERSION: ${{ steps.version.outputs.version }} | |
# Build with experimental blocks. | |
WOOCOMMERCE_BLOCKS_PHASE: 3 | |
run: | | |
# Current version must compare greather than any previously used current version for this PR. | |
# Assume GH run IDs are monotonic. | |
VERSUFFIX="${GITHUB_RUN_ID}-g$(git rev-parse --short HEAD)" | |
CURRENT_VERSION="$CURRENT_VERSION-$VERSUFFIX" | |
sed -i -e 's/Version: .*$/Version: '"$CURRENT_VERSION"'/' "$GITHUB_WORKSPACE/plugins/woocommerce/woocommerce.php" | |
echo "$CURRENT_VERSION" > "$GITHUB_WORKSPACE/plugins/woocommerce/version.txt" | |
cd "$GITHUB_WORKSPACE/plugins/woocommerce" | |
bash bin/build-zip.sh | |
mkdir "$GITHUB_WORKSPACE/zips" | |
cp "$GITHUB_WORKSPACE/plugins/woocommerce/woocommerce.zip" "$GITHUB_WORKSPACE/zips/woocommerce.zip" | |
cd "$GITHUB_WORKSPACE/zips" | |
unzip woocommerce.zip | |
rm woocommerce.zip | |
mv woocommerce woocommerce-dev | |
zip -q -r "woocommerce-dev.zip" "woocommerce-dev/" | |
rm -fR "$GITHUB_WORKSPACE/zips/woocommerce-dev" | |
# Plugin data is passed as a JSON object. | |
PLUGIN_DATA="{}" | |
PLUGIN_DATA=$( jq -c --arg slug "woocommerce" --arg ver "$CURRENT_VERSION" '.[ $slug ] = { version: $ver }' <<<"$PLUGIN_DATA" ) | |
echo "plugin-data=$PLUGIN_DATA" >> $GITHUB_OUTPUT | |
- name: Create plugins artifact | |
uses: actions/upload-artifact@v3 | |
if: steps.prepare.outputs.plugin-data != '{}' | |
with: | |
name: plugins | |
path: zips | |
# Only need to retain for a day since the beta builder slurps it up to distribute. | |
retention-days: 1 | |
- name: Inform Beta Download webhook | |
if: steps.prepare.outputs.plugin-data != '{}' | |
env: | |
SECRET: ${{ secrets.WOOBETA_SECRET }} | |
PLUGIN_DATA: ${{ steps.prepare.outputs.plugin-data }} | |
run: | | |
curl -v --fail -L \ | |
--url "https://betadownload.jetpack.me/gh-action.php?run_id=$GITHUB_RUN_ID&commit=$GITHUB_SHA" \ | |
--form-string "repo=$GITHUB_REPOSITORY" \ | |
--form-string "branch=${GITHUB_REF#refs/heads/}" \ | |
--form-string "plugins=$PLUGIN_DATA" \ | |
--form-string "secret=$SECRET" |