Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9ba947f545 | ||
|
|
ebe79a723c | ||
|
|
c77e021886 | ||
|
|
37729f1bb3 |
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
|||||||
MIT License
|
MIT License
|
||||||
|
|
||||||
Copyright (c) 2019 Shohei Ueda (peaceiris)
|
Copyright (c) 2020 Shohei Ueda (peaceiris)
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
103
README.md
103
README.md
@@ -73,6 +73,7 @@ Do you want to skip the docker build step? OK, the script mode is available.
|
|||||||
- [⭐️ Force orphan](#%EF%B8%8F-force-orphan)
|
- [⭐️ Force orphan](#%EF%B8%8F-force-orphan)
|
||||||
- [⭐️ Set Git username and email](#%EF%B8%8F-set-git-username-and-email)
|
- [⭐️ Set Git username and email](#%EF%B8%8F-set-git-username-and-email)
|
||||||
- [⭐️ Set custom commit message](#%EF%B8%8F-set-custom-commit-message)
|
- [⭐️ Set custom commit message](#%EF%B8%8F-set-custom-commit-message)
|
||||||
|
- [⭐️ Create Git tag](#%EF%B8%8F-create-git-tag)
|
||||||
- [⭐️ Script mode](#%EF%B8%8F-script-mode)
|
- [⭐️ Script mode](#%EF%B8%8F-script-mode)
|
||||||
- [Tips and FAQ](#tips-and-faq)
|
- [Tips and FAQ](#tips-and-faq)
|
||||||
- [⭐️ Use the latest and specific release](#%EF%B8%8F-use-the-latest-and-specific-release)
|
- [⭐️ Use the latest and specific release](#%EF%B8%8F-use-the-latest-and-specific-release)
|
||||||
@@ -86,6 +87,7 @@ Do you want to skip the docker build step? OK, the script mode is available.
|
|||||||
- [⭐️ Static Site Generators with Python](#%EF%B8%8F-static-site-generators-with-python)
|
- [⭐️ Static Site Generators with Python](#%EF%B8%8F-static-site-generators-with-python)
|
||||||
- [⭐️ mdBook (Rust)](#%EF%B8%8F-mdbook-rust)
|
- [⭐️ mdBook (Rust)](#%EF%B8%8F-mdbook-rust)
|
||||||
- [⭐️ Flutter Web](#%EF%B8%8F-flutter-web)
|
- [⭐️ Flutter Web](#%EF%B8%8F-flutter-web)
|
||||||
|
- [⭐️ Elm](#%EF%B8%8F-elm)
|
||||||
- [License](#license)
|
- [License](#license)
|
||||||
- [About the author](#about-the-author)
|
- [About the author](#about-the-author)
|
||||||
|
|
||||||
@@ -343,9 +345,66 @@ When we create a commit with a message `docs: Update some post`, a deployment co
|
|||||||
PUBLISH_BRANCH: gh-pages
|
PUBLISH_BRANCH: gh-pages
|
||||||
PUBLISH_DIR: ./public
|
PUBLISH_DIR: ./public
|
||||||
with:
|
with:
|
||||||
commitMessage: ${{ github.event.commits[0].message }}
|
commitMessage: ${{ github.event.head_commit.message }}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### ⭐️ Create Git tag
|
||||||
|
|
||||||
|
Here is an example workflow.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: github pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
tags:
|
||||||
|
- 'v*.*.*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-deploy:
|
||||||
|
runs-on: ubuntu-18.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Some build
|
||||||
|
|
||||||
|
- name: Prepare tag
|
||||||
|
id: prepare_tag
|
||||||
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
run: |
|
||||||
|
TAG_NAME="${GITHUB_REF##refs/tags/}"
|
||||||
|
echo "::set-output name=tag_name::${TAG_NAME}"
|
||||||
|
echo "::set-output name=deploy_tag_name::deploy-${TAG_NAME}"
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v2
|
||||||
|
env:
|
||||||
|
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
|
PUBLISH_BRANCH: gh-pages
|
||||||
|
PUBLISH_DIR: ./public
|
||||||
|
with:
|
||||||
|
tagName: ${{ steps.prepare_tag.outputs.deploy_tag_name }}
|
||||||
|
tagMessage: 'Deployment ${{ steps.prepare_tag.outputs.tag_name }}'
|
||||||
|
```
|
||||||
|
|
||||||
|
Commands on a local machine.
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ # On the master branch
|
||||||
|
$ git tag -a "v1.2.3" -m "Release v1.2.3"
|
||||||
|
$ git push origin "v1.2.3"
|
||||||
|
|
||||||
|
$ # After deployment
|
||||||
|
$ git fetch origin
|
||||||
|
$ git tag
|
||||||
|
deploy-v1.2.3 # Tag on the gh-pages branch
|
||||||
|
v1.2.3 # Tag on the master branch
|
||||||
|
```
|
||||||
|
|
||||||
|
We can set `tagOverwrite` option to `true` for overwriting a tag.
|
||||||
|
|
||||||
### ⭐️ Script mode
|
### ⭐️ Script mode
|
||||||
|
|
||||||
From `v2.5.0`, we can run this action as a shell script.
|
From `v2.5.0`, we can run this action as a shell script.
|
||||||
@@ -785,6 +844,48 @@ jobs:
|
|||||||
PUBLISH_DIR: ./build/web
|
PUBLISH_DIR: ./build/web
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### ⭐️ Elm
|
||||||
|
|
||||||
|
An exapmle workflow for [Elm] with [justgook/setup-elm].
|
||||||
|
|
||||||
|
[Elm]: https://elm-lang.org
|
||||||
|
[justgook/setup-elm]: https://github.com/justgook/setup-elm
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: github pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Setup Elm
|
||||||
|
uses: justgook/setup-elm@v1
|
||||||
|
|
||||||
|
- name: Make
|
||||||
|
run: elm make --optimize src/Main.elm
|
||||||
|
|
||||||
|
- name: Move files
|
||||||
|
run: |
|
||||||
|
mkdir ./public
|
||||||
|
mv ./index.html ./public/
|
||||||
|
# If you have non-minimal setup with some assets and separate html/js files,
|
||||||
|
# provide --output=<output-file> option for `elm make` and remove this step
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v2
|
||||||
|
env:
|
||||||
|
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
|
PUBLISH_BRANCH: gh-pages
|
||||||
|
PUBLISH_DIR: ./public
|
||||||
|
```
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
- [MIT License - peaceiris/actions-gh-pages]
|
- [MIT License - peaceiris/actions-gh-pages]
|
||||||
|
|||||||
10
action.yml
10
action.yml
@@ -29,3 +29,13 @@ inputs:
|
|||||||
commitMessage:
|
commitMessage:
|
||||||
description: 'Set custom commit message'
|
description: 'Set custom commit message'
|
||||||
required: false
|
required: false
|
||||||
|
tagName:
|
||||||
|
description: 'Set tag name'
|
||||||
|
required: false
|
||||||
|
tagMessage:
|
||||||
|
description: 'Set tag message'
|
||||||
|
required: false
|
||||||
|
tagOverwrite:
|
||||||
|
description: 'Enable overwriting tag'
|
||||||
|
required: false
|
||||||
|
default: false
|
||||||
|
|||||||
@@ -142,4 +142,22 @@ else
|
|||||||
git push origin "${remote_branch}"
|
git push origin "${remote_branch}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ -n "${INPUT_TAGNAME}" ]]; then
|
||||||
|
print_info "Tag name: ${INPUT_TAGNAME}"
|
||||||
|
print_info "Tag message: ${INPUT_TAGMESSAGE}"
|
||||||
|
print_info "Tag overwrite: ${INPUT_TAGOVERWRITE}"
|
||||||
|
if [[ -n "${INPUT_TAGMESSAGE}" ]]; then
|
||||||
|
GIT_TAG_MESSAGE="${INPUT_TAGMESSAGE}"
|
||||||
|
else
|
||||||
|
GIT_TAG_MESSAGE="Deployment ${INPUT_TAGNAME}"
|
||||||
|
fi
|
||||||
|
if [[ "${INPUT_TAGOVERWRITE}" == "true" ]]; then
|
||||||
|
GIT_TAG_OPTION="--force"
|
||||||
|
else
|
||||||
|
GIT_TAG_OPTION=""
|
||||||
|
fi
|
||||||
|
git tag "${GIT_TAG_OPTION}" -a "${INPUT_TAGNAME}" -m "${GIT_TAG_MESSAGE}"
|
||||||
|
git push "${GIT_TAG_OPTION}" origin "${INPUT_TAGNAME}"
|
||||||
|
fi
|
||||||
|
|
||||||
print_info "${GITHUB_SHA} was successfully deployed"
|
print_info "${GITHUB_SHA} was successfully deployed"
|
||||||
|
|||||||
Reference in New Issue
Block a user