Merge to stage #101
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: Merge to stage | |
on: | |
schedule: | |
- cron: '0 * * * *' # Run every hour | |
workflow_dispatch: # Allow manual trigger | |
pull_request: | |
types: [labeled] # Run when a label is added to a PR | |
env: | |
MILO_RELEASE_SLACK_WH: ${{ secrets.MILO_RELEASE_SLACK_WH }} | |
jobs: | |
merge-to-stage: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/[email protected] | |
- name: Check label | |
id: check_label | |
uses: actions/[email protected] | |
with: | |
script: | | |
const fs = require('fs'); | |
const event = JSON.parse(fs.readFileSync(process.env.GITHUB_EVENT_PATH, 'utf8')); | |
if (process.env.GITHUB_EVENT_NAME === 'pull_request') { | |
const { label: { name } } = event; | |
return name === 'Ready for Stage'; | |
} | |
return true; | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Merge to stage or queue to merge | |
uses: actions/[email protected] | |
with: | |
script: | | |
const main = require('./.github/workflows/merge-to-stage.js') | |
main({ github, context, core }) | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |