mirror of
https://github.com/status-im/actions-gh-pages.git
synced 2025-01-09 21:05:49 +00:00
Michael Smith
76d9ea1451
Fetch remote before testing whether the publish branch exists (#7)
This re-uses the existing branch rather than always overwriting it with a new branch with a single commit. Signed-off-by: Michael Smith <michael.smith@puppet.com>
GitHub Actions for deploying to GitHub Pages
A GitHub Action to deploy your static site to GitHub Pages with Static Site Generators (Hugo, MkDocs, Gatsby, GitBook, etc.)
Getting started
Create .github/workflows/gh-pages.yml
An example with Hugo action.
name: github pages
on:
push:
branches:
- master
jobs:
build-deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@master
- name: build
uses: peaceiris/actions-hugo@v0.57.2
if: github.event.deleted == false
with:
args: --gc --minify --cleanDestinationDir
- name: deploy
uses: peaceiris/actions-gh-pages@v1.1.0
if: success()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PUBLISH_BRANCH: gh-pages
PUBLISH_DIR: ./public
Examples
MkDocs
- peaceiris/actions-pipenv: GitHub Actions for pipenv
- main.workflow - peaceiris/mkdocs-material-boilerplate
workflow "MkDocs workflow" {
on = "push"
resolves = ["deploy"]
}
action "branch-filter" {
uses = "actions/bin/filter@master"
args = "branch master"
}
action "pipenv-sync" {
needs = ["branch-filter"]
uses = "peaceiris/actions-pipenv@3.6"
args = "sync"
}
action "mkdocs-build" {
needs = ["pipenv-sync"]
uses = "peaceiris/actions-pipenv@3.6"
args = ["run", "mkdocs", "build", "--config-file", "./mkdocs-sample.yml"]
}
action "deploy" {
needs = ["mkdocs-build"]
uses = "peaceiris/actions-gh-pages@v1.1.0"
env = {
PUBLISH_DIR = "./site"
PUBLISH_BRANCH = "gh-pages"
}
secrets = ["GITHUB_TOKEN"]
}
License
MIT License - peaceiris/actions-gh-pages
About the author
Description
GitHub Actions for GitHub Pages 🚀 Deploy static files and publish your site easily. Static-Site-Generators-friendly.
https://github.com/marketplace/actions/github-pages-action
Languages
TypeScript
91.5%
Shell
3.3%
Dockerfile
3.2%
HTML
0.8%
JavaScript
0.6%
Other
0.5%