Skip to content

OpenEduHub - PR Deployment #7

OpenEduHub - PR Deployment

OpenEduHub - PR Deployment #7

Workflow file for this run

name: OpenEduHub - PR Deployment
on:
workflow_dispatch:
pull_request_target:
types: [labeled]
jobs:
deploy:
if: ${{ github.event.label.name == 'needs-rendering' }}
name: Deploy to GitHub Pages
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v3
with:
path: ./repo
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.head_ref }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build and push
uses: docker/build-push-action@v3
with:
context: ./repo
file: ./repo/Dockerfile
push: false
load: true
tags: operating-systems-${{ github.event.number }}:latest
cache-from: type=gha
cache-to: type=gha
- name: Load Image
run: |
mkdir -p ${{ github.event.number }}
docker image list
docker run -v $GITHUB_WORKSPACE/repo:/usr/src/app operating-systems-${{ github.event.number }}:latest
# Popular action to deploy to GitHub Pages:
# Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
# Build output to publish to the `gh-pages-pr` branch:
publish_dir: ./${{ github.event.number }}
destination_dir: ${{ github.event.number }}
# The following lines assign commit authorship to the official
# GH-Actions bot for deploys to `gh-pages` branch:
# https://github.com/actions/checkout/issues/13#issuecomment-724415212
# The GH actions bot is used by default if you didn't specify the two fields.
# You can swap them out with your own user credentials.
publish_branch: gh-pages
- name: Add Comment to PR
uses: thollander/actions-comment-pull-request@v2
with:
message: |
Published at https://${{ github.repository_owner }}.github.io/operating-systems/${{ github.event.number }}/