woocommerce/plugins/woocommerce-blocks/.github/workflows/nightly-builds.yml

72 lines
2.2 KiB
YAML

name: Nightly builds
on:
schedule:
- cron: '1 0 * * *' # Run at 12:01 AM UTC.
workflow_dispatch:
env:
NODE_OPTIONS: --max-old-space-size=4096 # development build takes a lot of memory
jobs:
build:
name: Nightly builds
strategy:
fail-fast: false
matrix:
build: [trunk]
runs-on: ubuntu-20.04
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
ref: ${{ matrix.build }}
- name: Install Node
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install Node Dependencies
run: npm ci --no-optional
- name: Build zip
run: bash bin/build-plugin-zip.sh -d
- name: Deploy nightly build
uses: WebFreak001/deploy-nightly@v2.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
# 80943895 is the release ID of this nightly release https://github.com/woocommerce/woocommerce-blocks/releases/tag/nightly
upload_url: https://uploads.github.com/repos/${{ github.repository }}/releases/80943895/assets{?name,label}
release_id: 80943895
asset_path: woocommerce-gutenberg-products-block.zip
asset_name: woocommerce-blocks-${{ matrix.build }}-nightly.zip
asset_content_type: application/zip
max_releases: 1
- name: Get Date
id: date
uses: lee-dohm/calculate-dates-and-times@v1.0.2
with:
format: 'YYYY-MM-DD'
subtract: '1 day'
- name: Update release notes
uses: irongut/EditRelease@v1.2.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
id: 80943895
body: "Nightly release auto generated everyday at 12:01 AM UTC. \n\n[PRs merged since last nightly build](https://github.com/woocommerce/woocommerce-blocks/pulls?q=is%3Apr+closed%3A>%3D{{ steps.date.outputs.date }}+is%3Amerged)"
spacing: 0
replacebody: true
update:
name: Update nightly tag commit ref
runs-on: ubuntu-20.04
steps:
- name: Update nightly tag
uses: richardsimko/github-tag-action@v1.0.11
with:
tag_name: nightly
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}