Skip to content

Ship it

Ship it #4

Workflow file for this run

name: Ship it
on:
workflow_dispatch:
jobs:
ship-it:
name: Ship it
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
# Ensure full history is fetched to have a clear
# path between next and master
fetch-depth: 0
ref: next
- name: Checkout master branch
run: |
git fetch origin master
git checkout master
- name: Log commits to be shipped
id: commits-to-ship
run: |
git log --oneline master..next
echo "count=$(git log --oneline master..next | wc -l)" >> $GITHUB_OUTPUT
- name: Fast-forward master to next
if: steps.commits-to-ship.outputs.count != '0'
run: git merge --ff-only next
- name: Push updated master to origin
if: steps.commits-to-ship.outputs.count != '0'
run: |
git push origin master
env:
GITHUB_TOKEN: ${{ secrets.SHIP_IT_TOKEN }}