Compare commits

...

5 Commits

Author SHA1 Message Date
Shohei Ueda
380b190669 fix: avoid #29 for keepFiles option (#34)
Some checks failed
docker image ci / test (push) Has been cancelled
docker image ci / shellcheck (push) Has been cancelled
docker image ci / hadolint (push) Has been cancelled
* fix: avoid #29
* docs: update TOC
* docs: update tag to v2.4.0
2019-09-25 03:00:25 +09:00
Roman Hotsiy
8eedda6921 feat: new option keepFiles (#33) 2019-09-25 02:41:21 +09:00
peaceiris
13d694636e docs: Add submodules to actions/checkout
https://github.com/peaceiris/actions-hugo/issues/42
2019-09-24 07:29:34 +09:00
peaceiris
551961e807 gha: remove paths 2019-09-23 14:36:00 +09:00
peaceiris
3e09c28a79 docs: update tag 2019-09-23 14:07:50 +09:00
4 changed files with 43 additions and 18 deletions

View File

@@ -4,12 +4,6 @@ on:
pull_request: pull_request:
types: [opened, synchronize] types: [opened, synchronize]
push: push:
paths:
- '**'
- '.**'
- '!LICENSE'
- '!README.md'
- '!images'
jobs: jobs:
test: test:

View File

@@ -28,6 +28,7 @@ Table of Contents
- [⭐️ `PERSONAL_TOKEN`](#%EF%B8%8F-personal_token) - [⭐️ `PERSONAL_TOKEN`](#%EF%B8%8F-personal_token)
- [⭐️ `GITHUB_TOKEN`](#%EF%B8%8F-github_token) - [⭐️ `GITHUB_TOKEN`](#%EF%B8%8F-github_token)
- [⭐️ Suppressing empty commits](#%EF%B8%8F-suppressing-empty-commits) - [⭐️ Suppressing empty commits](#%EF%B8%8F-suppressing-empty-commits)
- [⭐️ Keeping existing files](#%EF%B8%8F-keeping-existing-files)
- [Tips and FAQ](#tips-and-faq) - [Tips and FAQ](#tips-and-faq)
- [How to add `CNAME`](#how-to-add-cname) - [How to add `CNAME`](#how-to-add-cname)
- [Deployment completed but you cannot read](#deployment-completed-but-you-cannot-read) - [Deployment completed but you cannot read](#deployment-completed-but-you-cannot-read)
@@ -96,17 +97,19 @@ jobs:
runs-on: ubuntu-18.04 runs-on: ubuntu-18.04
steps: steps:
- uses: actions/checkout@master - uses: actions/checkout@master
# with:
# submodules: true
- name: Setup Hugo - name: Setup Hugo
uses: peaceiris/actions-hugo@v2.2.0 uses: peaceiris/actions-hugo@v2.2.0
with: with:
hugo-version: '0.58.2' hugo-version: '0.58.3'
- name: Build - name: Build
run: hugo --gc --minify --cleanDestinationDir run: hugo --gc --minify --cleanDestinationDir
- name: Deploy - name: Deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -150,8 +153,8 @@ You can pull a public docker image from Docker Hub.
By pulling docker images, you can reduce the overall execution time of your workflow. In addition, `latest` tag is provided. By pulling docker images, you can reduce the overall execution time of your workflow. In addition, `latest` tag is provided.
```diff ```diff
- uses: peaceiris/actions-gh-pages@v2.3.1 - uses: peaceiris/actions-gh-pages@v2.4.0
+ uses: docker://peaceiris/gh-pages:v2.3.1 + uses: docker://peaceiris/gh-pages:v2.4.0
``` ```
- [peaceiris/gh-pages - Docker Hub](https://hub.docker.com/r/peaceiris/gh-pages) - [peaceiris/gh-pages - Docker Hub](https://hub.docker.com/r/peaceiris/gh-pages)
@@ -187,8 +190,8 @@ By default, a commit will always be generated and pushed to the `PUBLISH_BRANCH`
For example: For example:
```yaml ```yaml
- name: deploy - name: Deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -197,6 +200,24 @@ For example:
emptyCommits: false emptyCommits: false
``` ```
#### ⭐️ Keeping existing files
By default, existing files in the publish branch are removed before adding the ones from publish dir. If you want the action to add new files but leave existing ones untouched, set the optional parameter `keepFiles` to `true`.
For example:
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v2.4.0
env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages
PUBLISH_DIR: ./public
with:
keepFiles: true
```
## Tips and FAQ ## Tips and FAQ
@@ -260,7 +281,7 @@ jobs:
npm run build npm run build
- name: deploy - name: deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -308,7 +329,7 @@ jobs:
run: npm run build run: npm run build
- name: deploy - name: deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -358,7 +379,7 @@ jobs:
run: touch ./out/.nojekyll run: touch ./out/.nojekyll
- name: deploy - name: deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -405,7 +426,7 @@ jobs:
run: npm run generate run: npm run generate
- name: deploy - name: deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages
@@ -453,7 +474,7 @@ jobs:
run: mkdocs build run: mkdocs build
- name: Deploy - name: Deploy
uses: peaceiris/actions-gh-pages@v2.3.1 uses: peaceiris/actions-gh-pages@v2.4.0
env: env:
ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
PUBLISH_BRANCH: gh-pages PUBLISH_BRANCH: gh-pages

View File

@@ -12,3 +12,7 @@ inputs:
description: 'If empty commits should be made to the publication branch' description: 'If empty commits should be made to the publication branch'
required: false required: false
default: 'true' default: 'true'
keepFiles:
description: 'If existing files in the publish branch should be not removed before deploying'
required: false
default: 'false'

View File

@@ -61,7 +61,13 @@ remote_branch="${PUBLISH_BRANCH}"
local_dir="${HOME}/$(tr -cd 'a-f0-9' < /dev/urandom | head -c 32)" local_dir="${HOME}/$(tr -cd 'a-f0-9' < /dev/urandom | head -c 32)"
if git clone --depth=1 --single-branch --branch "${remote_branch}" "${remote_repo}" "${local_dir}"; then if git clone --depth=1 --single-branch --branch "${remote_branch}" "${remote_repo}" "${local_dir}"; then
cd "${local_dir}" cd "${local_dir}"
git rm -r --ignore-unmatch '*'
if [[ ${INPUT_KEEPFILES} == "true" ]]; then
print_info "Keeping existing files: ${INPUT_KEEPFILES}"
else
git rm -r --ignore-unmatch '*'
fi
find "${GITHUB_WORKSPACE}/${PUBLISH_DIR}" -maxdepth 1 | \ find "${GITHUB_WORKSPACE}/${PUBLISH_DIR}" -maxdepth 1 | \
tail -n +2 | \ tail -n +2 | \
xargs -I % cp -rf % "${local_dir}/" xargs -I % cp -rf % "${local_dir}/"