Skip to content

Deploy Arise to html branch #15

Deploy Arise to html branch

Deploy Arise to html branch #15

Workflow file for this run

# .github/workflows/arise-deploy.yml
name: Deploy Arise to html branch
on:
# Runs on pushes targeting the default branch
# Only runs when the push contains changes to the site source itself. No need to rebuild the site if it's just program files that have changed.
push:
branches: ["main"]
paths: ['arise-source/**']
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Default to bash
defaults:
run:
shell: bash
jobs:
build:
runs-on: ubuntu-latest
name: Deploy Arise
steps:
- name: Check if we should deploy to prod or staging
run: |
echo "SMART DEPLOY"
echo "============"
echo "We only want to deploy to prod if the branch that triggered this workflow is 'main'. Otherwise, we want the site to be deployed to staging..."
echo ""
if [[ $GITHUB_REF == 'refs/heads/main' ]]; then
# Feel free to change the value of OUTPUT_BRANCH. This is where Arise artefacts will be deployed for production.
echo "OUTPUT_BRANCH=html" >> "$GITHUB_ENV"
echo "Workflow running from main branch. Pushing results to production deployment branch (html)."
else
# Feel free to change the value of OUTPUT_BRANCH. This is where Arise artefacts will be deployed for staging.
echo "OUTPUT_BRANCH=html-staging" >> "$GITHUB_ENV"
echo "Workflow running from a development branch. Pushing results to staging deployment branch (html-staging)."
fi
- name: git-checkout
uses: actions/checkout@v4
- name: Install pandoc
run: sudo apt-get install -y pandoc
- name: Build Arise
run: bash arise build
- name: Push to live branch
uses: s0/git-publish-subdir-action@develop
env:
REPO: self
BRANCH: ${{ env.OUTPUT_BRANCH }} # If you want to change this, change it in the step above. This allows us to intelligently deploy to production from main or staging if we're on a dev branch.
FOLDER: arise-out # The Arise build output location. Don't change this.
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Handled automatically -- Don't change this unless you're pushing to a different repo
MESSAGE: "Commit: ({sha}) {msg}" # Copies commit msg from main to the deploy version branch