Compare commits
185 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
42954117ce | ||
|
|
48b33dca85 | ||
|
|
45bd46f922 | ||
|
|
95792e1c0f | ||
|
|
66acd31e22 | ||
|
|
31256664b6 | ||
|
|
e90f765da6 | ||
|
|
725f7db867 | ||
|
|
46b269eb77 | ||
|
|
572a9b5eb9 | ||
|
|
d81433ecbd | ||
|
|
a284cb02e9 | ||
|
|
4682881fa3 | ||
|
|
9765b50692 | ||
|
|
772c200ac1 | ||
|
|
25e5ffa147 | ||
|
|
144799313d | ||
|
|
87e03f1be4 | ||
|
|
c77e4d0f87 | ||
|
|
5c575e8b27 | ||
|
|
1a9f7eb481 | ||
|
|
c6c5feba5e | ||
|
|
edd5ff366e | ||
|
|
f15a311467 | ||
|
|
274c177da0 | ||
|
|
24f34b2d74 | ||
|
|
a60f4671fe | ||
|
|
b3747cde80 | ||
|
|
04aa727212 | ||
|
|
3bdd7da7d7 | ||
|
|
f679a0dbd1 | ||
|
|
c41db76534 | ||
|
|
2cddccc8c3 | ||
|
|
cb130c640d | ||
|
|
3b4c9db644 | ||
|
|
803227f54b | ||
|
|
c1c219f526 | ||
|
|
b4f6cbe8b1 | ||
|
|
9cb40f4ee9 | ||
|
|
31a25da109 | ||
|
|
120ec442c1 | ||
|
|
e399650661 | ||
|
|
edfebaf01b | ||
|
|
9fba4cf667 | ||
|
|
9c2e2dd3ce | ||
|
|
e5f4a9361d | ||
|
|
2a142a0e74 | ||
|
|
abae70beb5 | ||
|
|
fe21b422bf | ||
|
|
0b2e6b45b9 | ||
|
|
c96473bb55 | ||
|
|
913650d45b | ||
|
|
82c33532d4 | ||
|
|
45708a0373 | ||
|
|
def0f6b635 | ||
|
|
b00ccd8065 | ||
|
|
afac56dcec | ||
|
|
f3be898a96 | ||
|
|
457c86c44a | ||
|
|
b9e600fd62 | ||
|
|
f89d8688b5 | ||
|
|
0762b5c9b9 | ||
|
|
c1ee410019 | ||
|
|
c04664fa6b | ||
|
|
b5c306f7ff | ||
|
|
50d8ed5bb6 | ||
|
|
d874503733 | ||
|
|
8955511f50 | ||
|
|
f034a3f485 | ||
|
|
c20c670c27 | ||
|
|
5a84f48f78 | ||
|
|
67200cfb5a | ||
|
|
37b07f70e3 | ||
|
|
48392f0c0c | ||
|
|
548761031c | ||
|
|
79bf213729 | ||
|
|
a1d6c2131c | ||
|
|
f74f5a30da | ||
|
|
fb9ff7fb2e | ||
|
|
16beda69bf | ||
|
|
a6d0886173 | ||
|
|
8146aedaa9 | ||
|
|
7af7235a08 | ||
|
|
42cf99685e | ||
|
|
74041e385e | ||
|
|
1f2df4a7dd | ||
|
|
61e2a61aea | ||
|
|
d7934f1bfb | ||
|
|
25119e64f4 | ||
|
|
05a7c4edd9 | ||
|
|
4c2d9ecb85 | ||
|
|
6b302fdd50 | ||
|
|
f80024481c | ||
|
|
ba912f746b | ||
|
|
02db90c5c8 | ||
|
|
b5599b36fd | ||
|
|
3f71ec211a | ||
|
|
5bfcd3f213 | ||
|
|
3226514b95 | ||
|
|
4f4235c78c | ||
|
|
079d48367e | ||
|
|
4fb3d60161 | ||
|
|
0c8fc2d5e6 | ||
|
|
4bf31e4520 | ||
|
|
0794e07c99 | ||
|
|
2b5ce90dc9 | ||
|
|
681dcab3fd | ||
|
|
70c0076457 | ||
|
|
a49e738c32 | ||
|
|
5d053d30d0 | ||
|
|
4cf5105929 | ||
|
|
2392f69e4d | ||
|
|
fecb564860 | ||
|
|
7259f5ccc2 | ||
|
|
c8397307b4 | ||
|
|
7dd962e52e | ||
|
|
ded3953565 | ||
|
|
71958c534b | ||
|
|
eca3d9d25e | ||
|
|
24d40fe124 | ||
|
|
19b0b66a7c | ||
|
|
23abc3124a | ||
|
|
866d7e715c | ||
|
|
6f45501409 | ||
|
|
bf46251210 | ||
|
|
f8993157cb | ||
|
|
9cf67ec63b | ||
|
|
0f5c65e140 | ||
|
|
2046290e2b | ||
|
|
600bb6caa2 | ||
|
|
20912713da | ||
|
|
674c2318ce | ||
|
|
0b4686e3a6 | ||
|
|
1029512144 | ||
|
|
6c430d988e | ||
|
|
6f6bb2661a | ||
|
|
d1700b5653 | ||
|
|
1b5d710b24 | ||
|
|
3667febec5 | ||
|
|
8546b0c56b | ||
|
|
2c04f23922 | ||
|
|
b15488f0b3 | ||
|
|
612f1f7579 | ||
|
|
af7aac1007 | ||
|
|
6896bd8b80 | ||
|
|
ad558aa8bd | ||
|
|
5051105279 | ||
|
|
99a89f661a | ||
|
|
8cd820bd66 | ||
|
|
f633b0f6b5 | ||
|
|
a2712f7b92 | ||
|
|
09b03c0bb1 | ||
|
|
afee929f89 | ||
|
|
4b17904d54 | ||
|
|
ce4e3beff1 | ||
|
|
3874723ac6 | ||
|
|
f0c76f03b6 | ||
|
|
b7f7b0dddb | ||
|
|
14e12e8e74 | ||
|
|
f30118c78e | ||
|
|
0cb61e91a5 | ||
|
|
42a6cdde0c | ||
|
|
250469649c | ||
|
|
a5a8912d3e | ||
|
|
5980f05de8 | ||
|
|
106f76b593 | ||
|
|
8a36f3edfc | ||
|
|
220a06da5e | ||
|
|
e193524bff | ||
|
|
7e92312ae4 | ||
|
|
3d656402e5 | ||
|
|
6901b8e8fc | ||
|
|
932df18147 | ||
|
|
c935046a93 | ||
|
|
ed8dfeaf86 | ||
|
|
381bc0b884 | ||
|
|
3914720f25 | ||
|
|
f53ab0c2a5 | ||
|
|
6b76e36ab3 | ||
|
|
a4205cbdd8 | ||
|
|
d753ac9b7d | ||
|
|
488b74cc9f | ||
|
|
16d58bea33 | ||
|
|
a8941b89c6 | ||
|
|
0413b987d2 |
35
.devcontainer/devcontainer.json
Normal file
35
.devcontainer/devcontainer.json
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"name": "Node.js",
|
||||||
|
"image": "docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest",
|
||||||
|
|
||||||
|
// Use 'settings' to set *default* container specific settings.json values on container create.
|
||||||
|
"settings": {
|
||||||
|
"terminal.integrated.shell.linux": "/bin/bash"
|
||||||
|
},
|
||||||
|
|
||||||
|
// Add the IDs of extensions you want installed when the container is created in the array below.
|
||||||
|
"extensions": [
|
||||||
|
"bungcip.better-toml",
|
||||||
|
"EditorConfig.EditorConfig",
|
||||||
|
"donjayamanne.githistory",
|
||||||
|
"eamodio.gitlens",
|
||||||
|
"oderwat.indent-rainbow",
|
||||||
|
"yzhang.markdown-all-in-one",
|
||||||
|
"shd101wyy.markdown-preview-enhanced",
|
||||||
|
"christian-kohler.path-intellisense",
|
||||||
|
"lfs.vscode-emacs-friendly",
|
||||||
|
"ms-azuretools.vscode-docker",
|
||||||
|
"dbaeumer.vscode-eslint",
|
||||||
|
"firsttris.vscode-jest-runner",
|
||||||
|
"VisualStudioExptTeam.vscodeintellicode"
|
||||||
|
],
|
||||||
|
|
||||||
|
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||||
|
// "forwardPorts": [3000],
|
||||||
|
|
||||||
|
// Specifies a command that should be run after the container has been created.
|
||||||
|
"postCreateCommand": "npm ci",
|
||||||
|
|
||||||
|
// Comment out the next line to run as root instead.
|
||||||
|
// "remoteUser": "runner"
|
||||||
|
}
|
||||||
9
.github/dependabot.yml
vendored
9
.github/dependabot.yml
vendored
@@ -8,11 +8,8 @@ updates:
|
|||||||
timezone: Japan
|
timezone: Japan
|
||||||
labels:
|
labels:
|
||||||
- dependencies
|
- dependencies
|
||||||
ignore:
|
allow:
|
||||||
- dependency-name: "@types/node"
|
- dependency-type: "production"
|
||||||
versions:
|
|
||||||
- ">= 13.a, < 14"
|
|
||||||
- ">= 14.a, < 15"
|
|
||||||
commit-message:
|
commit-message:
|
||||||
prefix: deps
|
prefix: deps
|
||||||
|
|
||||||
@@ -21,6 +18,6 @@ updates:
|
|||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "daily"
|
||||||
labels:
|
labels:
|
||||||
- "dependencies:ci"
|
- "CI/CD"
|
||||||
commit-message:
|
commit-message:
|
||||||
prefix: ci
|
prefix: ci
|
||||||
|
|||||||
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@@ -3,7 +3,7 @@ name: "Code Scanning"
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
pull_request:
|
pull_request:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|||||||
21
.github/workflows/dev-image.yml
vendored
21
.github/workflows/dev-image.yml
vendored
@@ -1,25 +1,27 @@
|
|||||||
name: 'Dev Image CI'
|
name: 'Dev Image CI'
|
||||||
|
|
||||||
on:
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
- cron: '11 11 * * *'
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
paths:
|
paths:
|
||||||
- '.github/workflows/dev-image.yml'
|
- '.github/workflows/dev-image.yml'
|
||||||
- '.dockerignore'
|
- '.dockerignore'
|
||||||
- '.nvmrc'
|
- '.nvmrc'
|
||||||
- 'Dockerfile'
|
- 'Dockerfile'
|
||||||
- 'Makefile'
|
- 'Makefile'
|
||||||
|
- 'docker-compose.yml'
|
||||||
pull_request:
|
pull_request:
|
||||||
types:
|
|
||||||
- opened
|
|
||||||
- synchronize
|
|
||||||
paths:
|
paths:
|
||||||
- '.github/workflows/dev-image.yml'
|
- '.github/workflows/dev-image.yml'
|
||||||
- '.dockerignore'
|
- '.dockerignore'
|
||||||
- '.nvmrc'
|
- '.nvmrc'
|
||||||
- 'Dockerfile'
|
- 'Dockerfile'
|
||||||
- 'Makefile'
|
- 'Makefile'
|
||||||
|
- 'docker-compose.yml'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
skipci:
|
skipci:
|
||||||
@@ -34,10 +36,11 @@ jobs:
|
|||||||
- uses: actions/checkout@v2.3.1
|
- uses: actions/checkout@v2.3.1
|
||||||
- name: Login to Packages
|
- name: Login to Packages
|
||||||
run: echo '${{ secrets.GITHUB_TOKEN }}' | docker login 'docker.pkg.github.com' -u 'peaceiris' --password-stdin
|
run: echo '${{ secrets.GITHUB_TOKEN }}' | docker login 'docker.pkg.github.com' -u 'peaceiris' --password-stdin
|
||||||
- run: make pull
|
- run: docker-compose pull --quiet
|
||||||
if: github.event_name == 'pull_request'
|
if: github.event_name == 'pull_request'
|
||||||
- run: make build
|
- run: make build
|
||||||
- run: make cirun cmd="npm ci"
|
- run: docker images
|
||||||
- run: make ciall
|
- run: make ci
|
||||||
- run: make push
|
- run: make all
|
||||||
if: github.ref == 'refs/heads/master'
|
- run: docker-compose push
|
||||||
|
if: github.ref == 'refs/heads/main'
|
||||||
|
|||||||
23
.github/workflows/release.yml
vendored
23
.github/workflows/release.yml
vendored
@@ -10,27 +10,6 @@ jobs:
|
|||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2.3.1
|
- uses: actions/checkout@v2.3.1
|
||||||
|
- uses: peaceiris/workflows/create-release-npm@v0.7.0
|
||||||
- name: Dump GitHub context
|
|
||||||
env:
|
|
||||||
GITHUB_CONTEXT: ${{ toJson(github) }}
|
|
||||||
run: echo "${GITHUB_CONTEXT}"
|
|
||||||
|
|
||||||
- name: Install github/hub
|
|
||||||
run: |
|
|
||||||
export HUB_VERSION="2.14.2"
|
|
||||||
curl -fsSL https://github.com/github/hub/raw/8d91904208171b013f9a9d1175f4ab39068db047/script/get | bash -s "${HUB_VERSION}"
|
|
||||||
|
|
||||||
- name: Create release
|
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: |
|
|
||||||
TAG_NAME="${GITHUB_REF##refs/tags/}"
|
|
||||||
echo "See [CHANGELOG.md](https://github.com/${GITHUB_REPOSITORY}/blob/${TAG_NAME}/CHANGELOG.md) for more details." > ./release_notes.md
|
|
||||||
RELEASE_NAME="$(jq -r '.name' ./package.json)"
|
|
||||||
sed -i "1i${RELEASE_NAME} ${TAG_NAME}\n" ./release_notes.md
|
|
||||||
./bin/hub release create \
|
|
||||||
--draft \
|
|
||||||
--prerelease \
|
|
||||||
--file ./release_notes.md \
|
|
||||||
"${TAG_NAME}"
|
|
||||||
|
|||||||
33
.github/workflows/test.yml
vendored
33
.github/workflows/test.yml
vendored
@@ -3,7 +3,7 @@ name: 'Test'
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
paths-ignore:
|
paths-ignore:
|
||||||
- '*.md'
|
- '*.md'
|
||||||
pull_request:
|
pull_request:
|
||||||
@@ -34,7 +34,7 @@ jobs:
|
|||||||
id: nvm
|
id: nvm
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2.1.0
|
uses: actions/setup-node@v2.1.2
|
||||||
with:
|
with:
|
||||||
node-version: '${{ steps.nvm.outputs.NVMRC }}'
|
node-version: '${{ steps.nvm.outputs.NVMRC }}'
|
||||||
|
|
||||||
@@ -48,6 +48,15 @@ jobs:
|
|||||||
|
|
||||||
- run: npm ci
|
- run: npm ci
|
||||||
|
|
||||||
|
- name: npm audit
|
||||||
|
if: startsWith(matrix.os, 'ubuntu-18.04')
|
||||||
|
run: |
|
||||||
|
npm audit > ./audit.log || true
|
||||||
|
if ! [ "$(cat ./audit.log | wc -l)" = 1 ]; then
|
||||||
|
echo "::warning::$(cat ./audit.log)"
|
||||||
|
fi
|
||||||
|
rm ./audit.log
|
||||||
|
|
||||||
- name: Run prettier
|
- name: Run prettier
|
||||||
if: startsWith(matrix.os, 'ubuntu-18.04')
|
if: startsWith(matrix.os, 'ubuntu-18.04')
|
||||||
run: npm run format:check
|
run: npm run format:check
|
||||||
@@ -64,7 +73,7 @@ jobs:
|
|||||||
name: coverage-${{ matrix.os }}
|
name: coverage-${{ matrix.os }}
|
||||||
path: coverage
|
path: coverage
|
||||||
|
|
||||||
- uses: codecov/codecov-action@v1.0.10
|
- uses: codecov/codecov-action@v1.0.13
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
|
||||||
@@ -72,26 +81,26 @@ jobs:
|
|||||||
run: npm run build
|
run: npm run build
|
||||||
|
|
||||||
- name: Remove lint-staged husky
|
- name: Remove lint-staged husky
|
||||||
if: github.ref == 'refs/heads/master'
|
if: github.ref == 'refs/heads/main'
|
||||||
run: |
|
run: |
|
||||||
npm uninstall lint-staged husky
|
npm uninstall lint-staged husky
|
||||||
git checkout package-lock.json package.json
|
git checkout package-lock.json package.json
|
||||||
|
|
||||||
- name: Setup mdBook
|
- name: Setup mdBook
|
||||||
if: github.ref == 'refs/heads/master'
|
if: github.ref == 'refs/heads/main'
|
||||||
uses: peaceiris/actions-mdbook@v1.1.12
|
uses: peaceiris/actions-mdbook@v1.1.13
|
||||||
with:
|
with:
|
||||||
mdbook-version: '0.3.7'
|
mdbook-version: '0.3.7'
|
||||||
|
|
||||||
- name: Build site
|
- name: Build site
|
||||||
if: github.ref == 'refs/heads/master'
|
if: github.ref == 'refs/heads/main'
|
||||||
working-directory: ./test_projects/mdbook
|
working-directory: ./test_projects/mdbook
|
||||||
run: mdbook build
|
run: mdbook build
|
||||||
|
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
if: |
|
if: |
|
||||||
startsWith(matrix.os, 'ubuntu-18.04') &&
|
startsWith(matrix.os, 'ubuntu-18.04') &&
|
||||||
github.ref == 'refs/heads/master'
|
github.ref == 'refs/heads/main'
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
@@ -110,7 +119,7 @@ jobs:
|
|||||||
- name: Deploy
|
- name: Deploy
|
||||||
if: |
|
if: |
|
||||||
startsWith(matrix.os, 'ubuntu-16.04') &&
|
startsWith(matrix.os, 'ubuntu-16.04') &&
|
||||||
github.ref == 'refs/heads/master'
|
github.ref == 'refs/heads/main'
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
@@ -128,7 +137,7 @@ jobs:
|
|||||||
- name: Deploy
|
- name: Deploy
|
||||||
if: |
|
if: |
|
||||||
startsWith(matrix.os, 'macos') &&
|
startsWith(matrix.os, 'macos') &&
|
||||||
github.ref == 'refs/heads/master'
|
github.ref == 'refs/heads/main'
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
@@ -147,7 +156,7 @@ jobs:
|
|||||||
- name: Deploy
|
- name: Deploy
|
||||||
if: |
|
if: |
|
||||||
startsWith(matrix.os, 'windows') &&
|
startsWith(matrix.os, 'windows') &&
|
||||||
github.ref == 'refs/heads/master'
|
github.ref == 'refs/heads/main'
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
@@ -166,7 +175,7 @@ jobs:
|
|||||||
- name: Deploy
|
- name: Deploy
|
||||||
if: |
|
if: |
|
||||||
startsWith(matrix.os, 'ubuntu-20.04') &&
|
startsWith(matrix.os, 'ubuntu-20.04') &&
|
||||||
github.ref == 'refs/heads/master'
|
github.ref == 'refs/heads/main'
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
|
|||||||
2
.prettierignore
Normal file
2
.prettierignore
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
node_modules/
|
||||||
|
lib/
|
||||||
339
CHANGELOG.md
339
CHANGELOG.md
@@ -2,6 +2,345 @@
|
|||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||||
|
|
||||||
|
## [3.7.2](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.1...v3.7.2) (2020-10-15)
|
||||||
|
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* peaceiris/workflows/create-release-npm@v0.7.0 ([45bd46f](https://github.com/peaceiris/actions-gh-pages/commit/45bd46f92200c682e8e4a5d0f542aa12f9417131))
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* copy dotfiles (#521) ([95792e1](https://github.com/peaceiris/actions-gh-pages/commit/95792e1c0fe9dfef8ebe7284d1af7ca787fde866)), closes [#521](https://github.com/peaceiris/actions-gh-pages/issues/521) [#520](https://github.com/peaceiris/actions-gh-pages/issues/520) [#512](https://github.com/peaceiris/actions-gh-pages/issues/512) [#507](https://github.com/peaceiris/actions-gh-pages/issues/507) [#509](https://github.com/peaceiris/actions-gh-pages/issues/509) [#390](https://github.com/peaceiris/actions-gh-pages/issues/390) [#324](https://github.com/peaceiris/actions-gh-pages/issues/324) [#103](https://github.com/peaceiris/actions-gh-pages/issues/103)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.7.1](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0...v3.7.1) (2020-10-14)
|
||||||
|
|
||||||
|
|
||||||
|
### chore
|
||||||
|
|
||||||
|
* add .prettierignore ([772c200](https://github.com/peaceiris/actions-gh-pages/commit/772c200ac146a7e8d63c227a919456f8e0b4693f))
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* allow dependency-type production (#518) ([572a9b5](https://github.com/peaceiris/actions-gh-pages/commit/572a9b5eb96036fc7a15f7edc15612d6889f9cfa)), closes [#518](https://github.com/peaceiris/actions-gh-pages/issues/518)
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @types/node from 12.12.63 to 12.12.64 (#506) ([a60f467](https://github.com/peaceiris/actions-gh-pages/commit/a60f4671feb4a666aab43d6ac5a3783dc4657a43)), closes [#506](https://github.com/peaceiris/actions-gh-pages/issues/506)
|
||||||
|
* bump @types/node from 12.12.64 to 12.12.66 (#508) ([5c575e8](https://github.com/peaceiris/actions-gh-pages/commit/5c575e8b276eea8921774c99a7b83c0d66cea90a)), closes [#508](https://github.com/peaceiris/actions-gh-pages/issues/508)
|
||||||
|
* bump @types/node from 12.12.66 to 12.12.67 (#511) ([1447993](https://github.com/peaceiris/actions-gh-pages/commit/144799313d4ad48903ce4729920e3d2f1429bbeb)), closes [#511](https://github.com/peaceiris/actions-gh-pages/issues/511)
|
||||||
|
* bump jest from 26.5.0 to 26.5.2 (#504) ([24f34b2](https://github.com/peaceiris/actions-gh-pages/commit/24f34b2d740cd79924d8a98bb8f26576309eeced)), closes [#504](https://github.com/peaceiris/actions-gh-pages/issues/504)
|
||||||
|
* bump jest from 26.5.2 to 26.5.3 (#515) ([a284cb0](https://github.com/peaceiris/actions-gh-pages/commit/a284cb02e9b796754ca6b5c8471b228ec8c6958e)), closes [#515](https://github.com/peaceiris/actions-gh-pages/issues/515)
|
||||||
|
* bump jest-circus from 26.5.1 to 26.5.2 (#505) ([274c177](https://github.com/peaceiris/actions-gh-pages/commit/274c177da0a2ff2cfe592e6b36c355f8bc062be5)), closes [#505](https://github.com/peaceiris/actions-gh-pages/issues/505)
|
||||||
|
* bump jest-circus from 26.5.2 to 26.5.3 (#516) ([9765b50](https://github.com/peaceiris/actions-gh-pages/commit/9765b50692abbd7b95c1c097da071f5a9c98804d)), closes [#516](https://github.com/peaceiris/actions-gh-pages/issues/516)
|
||||||
|
* bump node from 12.18.4 to 12.19.0 (#510) ([87e03f1](https://github.com/peaceiris/actions-gh-pages/commit/87e03f1be4c6673e544b6a89259729c5c646cdf6)), closes [#510](https://github.com/peaceiris/actions-gh-pages/issues/510)
|
||||||
|
* update (#517) ([d81433e](https://github.com/peaceiris/actions-gh-pages/commit/d81433ecbd529e53bb1201223120e2febf24b310)), closes [#517](https://github.com/peaceiris/actions-gh-pages/issues/517)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* add notes about keep_files ([c77e4d0](https://github.com/peaceiris/actions-gh-pages/commit/c77e4d0f87024d01904cc067c1a8b8affd80c1f7)), closes [#507](https://github.com/peaceiris/actions-gh-pages/issues/507) [#509](https://github.com/peaceiris/actions-gh-pages/issues/509)
|
||||||
|
* pin version to v3 ([b3747cd](https://github.com/peaceiris/actions-gh-pages/commit/b3747cde802bb259e2c13135ae1f36d309bd3808))
|
||||||
|
* remove link to #349 ([1a9f7eb](https://github.com/peaceiris/actions-gh-pages/commit/1a9f7eb4817f70390ed147b00fdf4b7284cd913d)), closes [#349](https://github.com/peaceiris/actions-gh-pages/issues/349)
|
||||||
|
* update exclude_assets ([4682881](https://github.com/peaceiris/actions-gh-pages/commit/4682881fa3a4b9f5a25027d6bf1b47f6d6fda5e9))
|
||||||
|
* update Flutter Web ([edd5ff3](https://github.com/peaceiris/actions-gh-pages/commit/edd5ff366e489149e15c36cfe923b1d71953b7a7))
|
||||||
|
* update Swift Publish ([c6c5feb](https://github.com/peaceiris/actions-gh-pages/commit/c6c5feba5e7cdf1e9227296b38c6ab27a6372304))
|
||||||
|
* update Swift Publish ([f15a311](https://github.com/peaceiris/actions-gh-pages/commit/f15a3114676f95a60146c8270e93a3ddd2c03086))
|
||||||
|
* update title position ([46b269e](https://github.com/peaceiris/actions-gh-pages/commit/46b269eb77e5fe6f2fc9c9cc531541227dfeca22))
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* Add link to README in log ([25e5ffa](https://github.com/peaceiris/actions-gh-pages/commit/25e5ffa1476a0017af4dfa0feb054ac18ccd1797))
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* copyAssets (#512) ([725f7db](https://github.com/peaceiris/actions-gh-pages/commit/725f7db867bb4bb443f5d8bdffb18297aab5e5a3)), closes [#512](https://github.com/peaceiris/actions-gh-pages/issues/512)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-8...v3.7.0) (2020-10-06)
|
||||||
|
|
||||||
|
|
||||||
|
### chore
|
||||||
|
|
||||||
|
* add ms-azuretools.vscode-docker ([b5c306f](https://github.com/peaceiris/actions-gh-pages/commit/b5c306f7ffdc59a10e5731919fd1b53b2f31d08b))
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* bump actions/setup-node from v2.1.1 to v2.1.2 (#496) ([c1c219f](https://github.com/peaceiris/actions-gh-pages/commit/c1c219f526155987550e06bedfcc8e2fcc34f19b)), closes [#496](https://github.com/peaceiris/actions-gh-pages/issues/496)
|
||||||
|
* bump codecov/codecov-action from v1.0.12 to v1.0.13 (#454) ([16beda6](https://github.com/peaceiris/actions-gh-pages/commit/16beda69bf1c2971147330f49aaed617dcd38a2c)), closes [#454](https://github.com/peaceiris/actions-gh-pages/issues/454)
|
||||||
|
* bump peaceiris/actions-mdbook from v1.1.12 to v1.1.13 (#503) ([c41db76](https://github.com/peaceiris/actions-gh-pages/commit/c41db7653434f02391fb62fd0b3a1392c96e0f3a)), closes [#503](https://github.com/peaceiris/actions-gh-pages/issues/503)
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @actions/core from 1.2.4 to 1.2.5 (#464) ([f034a3f](https://github.com/peaceiris/actions-gh-pages/commit/f034a3f4851fe530b19b0413e95e6dc9f6651cac)), closes [#464](https://github.com/peaceiris/actions-gh-pages/issues/464)
|
||||||
|
* bump @actions/core from 1.2.5 to 1.2.6 (#493) ([31a25da](https://github.com/peaceiris/actions-gh-pages/commit/31a25da1090b19d7964d43a4999bbcac970cabc2)), closes [#493](https://github.com/peaceiris/actions-gh-pages/issues/493)
|
||||||
|
* bump @types/jest from 26.0.10 to 26.0.12 (#469) ([50d8ed5](https://github.com/peaceiris/actions-gh-pages/commit/50d8ed5bb609b910779ba8fb2be482988b1b2715)), closes [#469](https://github.com/peaceiris/actions-gh-pages/issues/469)
|
||||||
|
* bump @types/jest from 26.0.12 to 26.0.13 (#472) ([c1ee410](https://github.com/peaceiris/actions-gh-pages/commit/c1ee41001942b9ad1cab043438839698182a8e36)), closes [#472](https://github.com/peaceiris/actions-gh-pages/issues/472)
|
||||||
|
* bump @types/jest from 26.0.13 to 26.0.14 (#487) ([e5f4a93](https://github.com/peaceiris/actions-gh-pages/commit/e5f4a9361dc7a7fcf85bc93cdda63498b5b2675a)), closes [#487](https://github.com/peaceiris/actions-gh-pages/issues/487)
|
||||||
|
* bump @types/jest from 26.0.9 to 26.0.10 (#452) ([a6d0886](https://github.com/peaceiris/actions-gh-pages/commit/a6d08861738e12d61a6165e91744ad47ec5055c8)), closes [#452](https://github.com/peaceiris/actions-gh-pages/issues/452)
|
||||||
|
* bump @types/js-yaml from 3.12.4 to 3.12.5 (#369) ([b9e600f](https://github.com/peaceiris/actions-gh-pages/commit/b9e600fd62e1b00b9bece7bb97364b5e2851bde8)), closes [#369](https://github.com/peaceiris/actions-gh-pages/issues/369)
|
||||||
|
* bump @types/node from 12.12.54 to 12.12.55 (#471) ([c04664f](https://github.com/peaceiris/actions-gh-pages/commit/c04664fa6b9c7976cb163f63bf3eeadb89dc5d35)), closes [#471](https://github.com/peaceiris/actions-gh-pages/issues/471)
|
||||||
|
* bump @types/node from 12.12.55 to 12.12.56 (#477) ([b00ccd8](https://github.com/peaceiris/actions-gh-pages/commit/b00ccd8065e8b7492a736dc24ab492edd78c4d94)), closes [#477](https://github.com/peaceiris/actions-gh-pages/issues/477)
|
||||||
|
* bump @types/node from 12.12.56 to 12.12.57 (#478) ([def0f6b](https://github.com/peaceiris/actions-gh-pages/commit/def0f6b6353a5f7375d8883fab8ba2a31aae4dde)), closes [#478](https://github.com/peaceiris/actions-gh-pages/issues/478)
|
||||||
|
* bump @types/node from 12.12.57 to 12.12.58 (#480) ([82c3353](https://github.com/peaceiris/actions-gh-pages/commit/82c33532d47c1e3e1022768837fe72240e14df4e)), closes [#480](https://github.com/peaceiris/actions-gh-pages/issues/480)
|
||||||
|
* bump @types/node from 12.12.58 to 12.12.59 (#484) ([0b2e6b4](https://github.com/peaceiris/actions-gh-pages/commit/0b2e6b45b9742859757becb0e32d2dac9603ae8b)), closes [#484](https://github.com/peaceiris/actions-gh-pages/issues/484)
|
||||||
|
* bump @types/node from 12.12.59 to 12.12.61 (#486) ([2a142a0](https://github.com/peaceiris/actions-gh-pages/commit/2a142a0e742af73091ee341d3a16e417831d2ade)), closes [#486](https://github.com/peaceiris/actions-gh-pages/issues/486)
|
||||||
|
* bump @types/node from 12.12.61 to 12.12.62 (#488) ([9c2e2dd](https://github.com/peaceiris/actions-gh-pages/commit/9c2e2dd3cef54dcc19cbf40f9e82d565a0e0958a)), closes [#488](https://github.com/peaceiris/actions-gh-pages/issues/488)
|
||||||
|
* bump @types/node from 12.12.62 to 12.12.63 (#499) ([803227f](https://github.com/peaceiris/actions-gh-pages/commit/803227f54b5889f9da91766b49c882a8f1757188)), closes [#499](https://github.com/peaceiris/actions-gh-pages/issues/499)
|
||||||
|
* bump @vercel/ncc from 0.23.0 to 0.24.0 (#466) ([c20c670](https://github.com/peaceiris/actions-gh-pages/commit/c20c670c27d0e3057e45943f483bd0065f6041c8)), closes [#466](https://github.com/peaceiris/actions-gh-pages/issues/466)
|
||||||
|
* bump @vercel/ncc from 0.24.0 to 0.24.1 (#482) ([c96473b](https://github.com/peaceiris/actions-gh-pages/commit/c96473bb55710193901822a1ff27f6832eb72088)), closes [#482](https://github.com/peaceiris/actions-gh-pages/issues/482)
|
||||||
|
* bump eslint-config-prettier from 6.11.0 to 6.12.0 (#494) ([9cb40f4](https://github.com/peaceiris/actions-gh-pages/commit/9cb40f4ee908941ea49e90aff1ad48df306fcc38)), closes [#494](https://github.com/peaceiris/actions-gh-pages/issues/494)
|
||||||
|
* bump eslint-plugin-jest from 23.20.0 to 24.0.0 (#474) ([457c86c](https://github.com/peaceiris/actions-gh-pages/commit/457c86c44a39d04fbdcb8689e2f7672171751c58)), closes [#474](https://github.com/peaceiris/actions-gh-pages/issues/474)
|
||||||
|
* bump eslint-plugin-jest from 24.0.0 to 24.0.1 (#481) ([913650d](https://github.com/peaceiris/actions-gh-pages/commit/913650d45b7f1ea255cb5ff4b56dbe9c7b07a2ca)), closes [#481](https://github.com/peaceiris/actions-gh-pages/issues/481)
|
||||||
|
* bump eslint-plugin-jest from 24.0.1 to 24.0.2 (#491) ([e399650](https://github.com/peaceiris/actions-gh-pages/commit/e3996506619cae3bd515e7465c8dd5061c206101)), closes [#491](https://github.com/peaceiris/actions-gh-pages/issues/491)
|
||||||
|
* bump eslint-plugin-jest from 24.0.2 to 24.1.0 (#501) ([cb130c6](https://github.com/peaceiris/actions-gh-pages/commit/cb130c640dd2b2db834221575f347c93197363f0)), closes [#501](https://github.com/peaceiris/actions-gh-pages/issues/501)
|
||||||
|
* bump husky from 4.2.5 to 4.3.0 (#475) ([afac56d](https://github.com/peaceiris/actions-gh-pages/commit/afac56dcec4acb0a3c4bdcee799b2d5e6a582c99)), closes [#475](https://github.com/peaceiris/actions-gh-pages/issues/475)
|
||||||
|
* bump jest from 25.5.4 to 26.3.0 (#447) ([1f2df4a](https://github.com/peaceiris/actions-gh-pages/commit/1f2df4a7dd60e855bfd97162973852d897887c7a)), closes [#447](https://github.com/peaceiris/actions-gh-pages/issues/447)
|
||||||
|
* bump jest from 26.3.0 to 26.4.0 (#450) ([7af7235](https://github.com/peaceiris/actions-gh-pages/commit/7af7235a08b063929bd7e0c55498c7bf5b21f73f)), closes [#450](https://github.com/peaceiris/actions-gh-pages/issues/450)
|
||||||
|
* bump jest from 26.4.0 to 26.4.1 (#457) ([a1d6c21](https://github.com/peaceiris/actions-gh-pages/commit/a1d6c2131c75b416675be135a52a998a17923d86)), closes [#457](https://github.com/peaceiris/actions-gh-pages/issues/457)
|
||||||
|
* bump jest from 26.4.1 to 26.4.2 (#461) ([48392f0](https://github.com/peaceiris/actions-gh-pages/commit/48392f0c0cacab183ba360172d795ea0517c5b52)), closes [#461](https://github.com/peaceiris/actions-gh-pages/issues/461)
|
||||||
|
* bump jest from 26.4.2 to 26.5.0 (#500) ([3b4c9db](https://github.com/peaceiris/actions-gh-pages/commit/3b4c9db6447ee157aacdda858a7012007f285b26)), closes [#500](https://github.com/peaceiris/actions-gh-pages/issues/500)
|
||||||
|
* bump jest-circus from 26.2.2 to 26.3.0 (#446) ([61e2a61](https://github.com/peaceiris/actions-gh-pages/commit/61e2a61aea18b6db8407f51f442a89c30b0a4b16)), closes [#446](https://github.com/peaceiris/actions-gh-pages/issues/446)
|
||||||
|
* bump jest-circus from 26.3.0 to 26.4.0 (#449) ([74041e3](https://github.com/peaceiris/actions-gh-pages/commit/74041e385e8c91588c923bb9a9dad5e0c675dc10)), closes [#449](https://github.com/peaceiris/actions-gh-pages/issues/449)
|
||||||
|
* bump jest-circus from 26.4.0 to 26.4.1 (#458) ([f74f5a3](https://github.com/peaceiris/actions-gh-pages/commit/f74f5a30da4f78a3cfec43fbe471308d45252fb9)), closes [#458](https://github.com/peaceiris/actions-gh-pages/issues/458)
|
||||||
|
* bump jest-circus from 26.4.1 to 26.4.2 (#460) ([5487610](https://github.com/peaceiris/actions-gh-pages/commit/548761031c6cca51ad96d778241b2f4189e85876)), closes [#460](https://github.com/peaceiris/actions-gh-pages/issues/460)
|
||||||
|
* bump jest-circus from 26.4.2 to 26.5.1 (#498) ([2cddccc](https://github.com/peaceiris/actions-gh-pages/commit/2cddccc8c3678fdfa63dd9a29bbca1ace787eade)), closes [#498](https://github.com/peaceiris/actions-gh-pages/issues/498)
|
||||||
|
* bump lint-staged from 10.2.11 to 10.2.13 (#463) ([67200cf](https://github.com/peaceiris/actions-gh-pages/commit/67200cfb5a4969bf12cbc84e48a072956aad09ca)), closes [#463](https://github.com/peaceiris/actions-gh-pages/issues/463)
|
||||||
|
* bump lint-staged from 10.2.13 to 10.3.0 (#473) ([0762b5c](https://github.com/peaceiris/actions-gh-pages/commit/0762b5c9b9d1d565ef5dd34b6cfd8e7864ffdf15)), closes [#473](https://github.com/peaceiris/actions-gh-pages/issues/473)
|
||||||
|
* bump lint-staged from 10.3.0 to 10.4.0 (#485) ([abae70b](https://github.com/peaceiris/actions-gh-pages/commit/abae70beb5c5f4d3e69fad85eec74879a7c022e4)), closes [#485](https://github.com/peaceiris/actions-gh-pages/issues/485)
|
||||||
|
* bump node from 12.18.3 to 12.18.4 (#489) ([9fba4cf](https://github.com/peaceiris/actions-gh-pages/commit/9fba4cf667368d5b10eff9771bfd1df51546b1d8)), closes [#489](https://github.com/peaceiris/actions-gh-pages/issues/489)
|
||||||
|
* bump node-fetch from 2.6.0 to 2.6.1 (#479) ([45708a0](https://github.com/peaceiris/actions-gh-pages/commit/45708a03737eaa992c9b6979c21a8b852bbc5f6a)), closes [#479](https://github.com/peaceiris/actions-gh-pages/issues/479)
|
||||||
|
* bump prettier from 2.0.5 to 2.1.0 (#462) ([37b07f7](https://github.com/peaceiris/actions-gh-pages/commit/37b07f70e3922aaf5677eb3ebdf2ffc0fd18cfab)), closes [#462](https://github.com/peaceiris/actions-gh-pages/issues/462)
|
||||||
|
* bump prettier from 2.1.0 to 2.1.1 (#465) ([8955511](https://github.com/peaceiris/actions-gh-pages/commit/8955511f502023da36495f9331276ee8257a44d8)), closes [#465](https://github.com/peaceiris/actions-gh-pages/issues/465)
|
||||||
|
* bump prettier from 2.1.1 to 2.1.2 (#483) ([fe21b42](https://github.com/peaceiris/actions-gh-pages/commit/fe21b422bf4670fb994fee05bef0563b80d29a31)), closes [#483](https://github.com/peaceiris/actions-gh-pages/issues/483)
|
||||||
|
* bump standard-version from 8.0.2 to 9.0.0 (#453) ([8146aed](https://github.com/peaceiris/actions-gh-pages/commit/8146aedaa917e5ba0e9383328b53b283506f286b)), closes [#453](https://github.com/peaceiris/actions-gh-pages/issues/453)
|
||||||
|
* bump ts-jest from 25.5.1 to 26.2.0 (#448) ([42cf996](https://github.com/peaceiris/actions-gh-pages/commit/42cf99685e494616538e9f3e9f49524a1964de37)), closes [#448](https://github.com/peaceiris/actions-gh-pages/issues/448)
|
||||||
|
* bump ts-jest from 26.2.0 to 26.3.0 (#467) ([5a84f48](https://github.com/peaceiris/actions-gh-pages/commit/5a84f48f784a37aa957d6ca09e66026a251aa46c)), closes [#467](https://github.com/peaceiris/actions-gh-pages/issues/467)
|
||||||
|
* bump ts-jest from 26.3.0 to 26.4.0 (#492) ([edfebaf](https://github.com/peaceiris/actions-gh-pages/commit/edfebaf01b68194497965068543f085f726ad1bf)), closes [#492](https://github.com/peaceiris/actions-gh-pages/issues/492)
|
||||||
|
* bump ts-jest from 26.4.0 to 26.4.1 (#495) ([b4f6cbe](https://github.com/peaceiris/actions-gh-pages/commit/b4f6cbe8b15af25d3f1b5e3e11066669a792ccae)), closes [#495](https://github.com/peaceiris/actions-gh-pages/issues/495)
|
||||||
|
* bump typescript from 3.9.7 to 4.0.2 (#468) ([d874503](https://github.com/peaceiris/actions-gh-pages/commit/d87450373360617bad3affaa5e3ef40153eeaaee)), closes [#468](https://github.com/peaceiris/actions-gh-pages/issues/468)
|
||||||
|
* bump typescript from 4.0.2 to 4.0.3 (#490) ([120ec44](https://github.com/peaceiris/actions-gh-pages/commit/120ec442c194f65cc7fbfba21cbe4987480cf914)), closes [#490](https://github.com/peaceiris/actions-gh-pages/issues/490)
|
||||||
|
* change @zeit/ncc to @vercel/ncc (#459) ([79bf213](https://github.com/peaceiris/actions-gh-pages/commit/79bf213729e88d1c383575834ddac86d57d3daa5)), closes [#459](https://github.com/peaceiris/actions-gh-pages/issues/459)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* add note about keep_files and force_orphan (#456) ([fb9ff7f](https://github.com/peaceiris/actions-gh-pages/commit/fb9ff7fb2ebdc1a780c8a17bbdb3c71d6d1ccc38)), closes [#456](https://github.com/peaceiris/actions-gh-pages/issues/456) [#455](https://github.com/peaceiris/actions-gh-pages/issues/455)
|
||||||
|
* bump v3.7.0-6 to v3.7.0-8 ([d7934f1](https://github.com/peaceiris/actions-gh-pages/commit/d7934f1bfbc15c35643fbec079d6483308ac867c))
|
||||||
|
* change master branch to another (#436) ([f89d868](https://github.com/peaceiris/actions-gh-pages/commit/f89d8688b5d8ad20b650ecaf48e1dc1d07178674)), closes [#436](https://github.com/peaceiris/actions-gh-pages/issues/436)
|
||||||
|
* Fix typo in README (#476) ([f3be898](https://github.com/peaceiris/actions-gh-pages/commit/f3be898a9685a229d5312bbc6a63eb8d2c5a0f02)), closes [#476](https://github.com/peaceiris/actions-gh-pages/issues/476)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-8](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-7...v3.7.0-8) (2020-08-09)
|
||||||
|
|
||||||
|
|
||||||
|
### chore
|
||||||
|
|
||||||
|
* Add vscode devcontainer ([6b302fd](https://github.com/peaceiris/actions-gh-pages/commit/6b302fdd506eb1874da1e7245b19bc66c4db0bfc))
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* Add actions runner env (#443) ([ba912f7](https://github.com/peaceiris/actions-gh-pages/commit/ba912f746bdcba752e96a9c6731af9f9ff289f0e)), closes [#443](https://github.com/peaceiris/actions-gh-pages/issues/443)
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @types/jest from 26.0.7 to 26.0.8 (#439) ([3f71ec2](https://github.com/peaceiris/actions-gh-pages/commit/3f71ec211a08aef8dde6999c8ee81dae974a26f2)), closes [#439](https://github.com/peaceiris/actions-gh-pages/issues/439)
|
||||||
|
* bump @types/jest from 26.0.8 to 26.0.9 (#442) ([02db90c](https://github.com/peaceiris/actions-gh-pages/commit/02db90c5c8564c8b0c1432aca1b52d66d10c7583)), closes [#442](https://github.com/peaceiris/actions-gh-pages/issues/442)
|
||||||
|
* bump @types/node from 12.12.53 to 12.12.54 (#441) ([b5599b3](https://github.com/peaceiris/actions-gh-pages/commit/b5599b36fdd4acffdb3fb4d55bb94ac76a2b3b98)), closes [#441](https://github.com/peaceiris/actions-gh-pages/issues/441)
|
||||||
|
|
||||||
|
### refactor
|
||||||
|
|
||||||
|
* Enhance log (#444) ([f800244](https://github.com/peaceiris/actions-gh-pages/commit/f80024481c7939706fac36cee86324c56371d6fd)), closes [#444](https://github.com/peaceiris/actions-gh-pages/issues/444)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-7](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-6...v3.7.0-7) (2020-08-02)
|
||||||
|
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* add env (#419) ([71958c5](https://github.com/peaceiris/actions-gh-pages/commit/71958c534b1f4dadbef055d8851541314574559b)), closes [#419](https://github.com/peaceiris/actions-gh-pages/issues/419)
|
||||||
|
* Add npm audit (#426) ([a49e738](https://github.com/peaceiris/actions-gh-pages/commit/a49e738c320151f18296dbcda6a418408cd64ea3)), closes [#426](https://github.com/peaceiris/actions-gh-pages/issues/426)
|
||||||
|
* add workflow_dispatch and schedule ([24d40fe](https://github.com/peaceiris/actions-gh-pages/commit/24d40fe124feecb6c5f4259a1906fcafd603b8f6))
|
||||||
|
* change base image from Debian to Ubuntu 18.04 (#428) ([70c0076](https://github.com/peaceiris/actions-gh-pages/commit/70c0076457b26d38a26bacbac279b8bf35cc47c8)), closes [#428](https://github.com/peaceiris/actions-gh-pages/issues/428)
|
||||||
|
* Clean up apt cache and junk (#425) ([5d053d3](https://github.com/peaceiris/actions-gh-pages/commit/5d053d30d0c607d63ce46c3d7ce321bfdb1c11c1)), closes [#425](https://github.com/peaceiris/actions-gh-pages/issues/425)
|
||||||
|
* enhance version log (#429) ([681dcab](https://github.com/peaceiris/actions-gh-pages/commit/681dcab3fd25a0f24dc66bb2767c0e37934aad5c)), closes [#429](https://github.com/peaceiris/actions-gh-pages/issues/429)
|
||||||
|
* reuse NODE_VERSION in nodesource URL (#430) ([2b5ce90](https://github.com/peaceiris/actions-gh-pages/commit/2b5ce90dc9ac2814d6e8ee5322d3e18b42ad008f)), closes [#430](https://github.com/peaceiris/actions-gh-pages/issues/430)
|
||||||
|
* Set default branch to main (#424) ([4cf5105](https://github.com/peaceiris/actions-gh-pages/commit/4cf510592915a8c58f536094aa9b881196852ce1)), closes [#424](https://github.com/peaceiris/actions-gh-pages/issues/424)
|
||||||
|
* set env CI to true (#418) ([eca3d9d](https://github.com/peaceiris/actions-gh-pages/commit/eca3d9d25efd39b60b2e32fe85e94b53951f9096)), closes [#418](https://github.com/peaceiris/actions-gh-pages/issues/418)
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* Apply npm audit fix (#434) ([4bf31e4](https://github.com/peaceiris/actions-gh-pages/commit/4bf31e45208169b022dc9b870de61d6eea322d29)), closes [#434](https://github.com/peaceiris/actions-gh-pages/issues/434)
|
||||||
|
* bump @types/node from 12.12.52 to 12.12.53 (#421) ([c839730](https://github.com/peaceiris/actions-gh-pages/commit/c8397307b446e9d81d20682060c40e8dd4de96b0)), closes [#421](https://github.com/peaceiris/actions-gh-pages/issues/421)
|
||||||
|
* bump eslint-plugin-jest from 23.18.0 to 23.18.2 (#420) ([7259f5c](https://github.com/peaceiris/actions-gh-pages/commit/7259f5ccc2d61b325b9c8f33d570170a345d496b)), closes [#420](https://github.com/peaceiris/actions-gh-pages/issues/420)
|
||||||
|
* bump eslint-plugin-jest from 23.18.2 to 23.19.0 (#423) ([2392f69](https://github.com/peaceiris/actions-gh-pages/commit/2392f69e4dd8264685215438922790389daedb24)), closes [#423](https://github.com/peaceiris/actions-gh-pages/issues/423)
|
||||||
|
* bump eslint-plugin-jest from 23.19.0 to 23.20.0 (#432) ([0c8fc2d](https://github.com/peaceiris/actions-gh-pages/commit/0c8fc2d5e699acedef9512db7f3c240fa110285a)), closes [#432](https://github.com/peaceiris/actions-gh-pages/issues/432)
|
||||||
|
* bump git from 2.27.0 to 2.28.0 (#422) ([fecb564](https://github.com/peaceiris/actions-gh-pages/commit/fecb5648609eee9e7add9fa2d5a9397abb3398db)), closes [#422](https://github.com/peaceiris/actions-gh-pages/issues/422)
|
||||||
|
* bump jest-circus from 26.1.0 to 26.2.2 (#435) ([4fb3d60](https://github.com/peaceiris/actions-gh-pages/commit/4fb3d60161340ada324107b29fe7f4aa4a6487f0)), closes [#435](https://github.com/peaceiris/actions-gh-pages/issues/435)
|
||||||
|
* bump node from 12.18.2 to 12.18.3 (#431) ([0794e07](https://github.com/peaceiris/actions-gh-pages/commit/0794e07c99f802bb0f1a4c00972e46b381a360ee)), closes [#431](https://github.com/peaceiris/actions-gh-pages/issues/431)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* Add exclude_assets section ([7dd962e](https://github.com/peaceiris/actions-gh-pages/commit/7dd962e52e7deb89dfa860da173ddbb96462d371))
|
||||||
|
* bump hugo from 0.74.2 to 0.74.3 ([ded3953](https://github.com/peaceiris/actions-gh-pages/commit/ded3953565f3dde01b9678834705b16df9be1df6))
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* Add .nojekyll file by default for all branches (#438) ([079d483](https://github.com/peaceiris/actions-gh-pages/commit/079d48367e5a8bc6448f5e9846666d27ea66e1e5)), closes [#438](https://github.com/peaceiris/actions-gh-pages/issues/438)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-6](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-5...v3.7.0-6) (2020-07-25)
|
||||||
|
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* exclude_assets supports glob patterns (#417) ([6f45501](https://github.com/peaceiris/actions-gh-pages/commit/6f45501409dbe16857c00f6d40a51bea56254f2b)), closes [#417](https://github.com/peaceiris/actions-gh-pages/issues/417) [#163](https://github.com/peaceiris/actions-gh-pages/issues/163)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-5](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-4...v3.7.0-5) (2020-07-25)
|
||||||
|
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* Add exclude_assets option (#416) ([0f5c65e](https://github.com/peaceiris/actions-gh-pages/commit/0f5c65e1408b30fe461ba319ca9a01d20c293cd4)), closes [#416](https://github.com/peaceiris/actions-gh-pages/issues/416) [#163](https://github.com/peaceiris/actions-gh-pages/issues/163)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-4](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-3...v3.7.0-4) (2020-07-25)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* copyAssets() for destination_dir (#414) ([674c231](https://github.com/peaceiris/actions-gh-pages/commit/674c2318cebb9ba59aa8fbf8ec4fae8482e51e5c)), closes [#414](https://github.com/peaceiris/actions-gh-pages/issues/414)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-3](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-2...v3.7.0-3) (2020-07-24)
|
||||||
|
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @types/jest from 26.0.5 to 26.0.7 (#411) ([d1700b5](https://github.com/peaceiris/actions-gh-pages/commit/d1700b565361478232daa6d66d3fe7c146b9d08f)), closes [#411](https://github.com/peaceiris/actions-gh-pages/issues/411)
|
||||||
|
* bump @types/node from 12.12.51 to 12.12.52 (#412) ([1b5d710](https://github.com/peaceiris/actions-gh-pages/commit/1b5d710b249d09c1e229931378217c47773de8ed)), closes [#412](https://github.com/peaceiris/actions-gh-pages/issues/412)
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* set full path of publishing assets (#413) ([6f6bb26](https://github.com/peaceiris/actions-gh-pages/commit/6f6bb2661a12d5db5d7df62962d1d28403a02860)), closes [#413](https://github.com/peaceiris/actions-gh-pages/issues/413) [/github.com/peaceiris/actions-gh-pages/issues/410#issuecomment-663507581](https://github.com//github.com/peaceiris/actions-gh-pages/issues/410/issues/issuecomment-663507581)
|
||||||
|
|
||||||
|
### refactor
|
||||||
|
|
||||||
|
* change message type from warning to info ([3667feb](https://github.com/peaceiris/actions-gh-pages/commit/3667febec573a36efa26505b6a712b314242991a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-2](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-1...v3.7.0-2) (2020-07-23)
|
||||||
|
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* Add docker-compose.yml (#406) ([a2712f7](https://github.com/peaceiris/actions-gh-pages/commit/a2712f7b923e3e05d0f46e54fbcacef3380aca31)), closes [#406](https://github.com/peaceiris/actions-gh-pages/issues/406)
|
||||||
|
* bump actions/setup-node from v2.1.0 to v2.1.1 (#407) ([8cd820b](https://github.com/peaceiris/actions-gh-pages/commit/8cd820bd660be6aa016923b6b35005df2fb071da)), closes [#407](https://github.com/peaceiris/actions-gh-pages/issues/407)
|
||||||
|
* bump codecov/codecov-action from v1.0.11 to v1.0.12 (#409) ([af7aac1](https://github.com/peaceiris/actions-gh-pages/commit/af7aac10073791e2907990204f723d6b0ff902c5)), closes [#409](https://github.com/peaceiris/actions-gh-pages/issues/409)
|
||||||
|
* remove types [skip ci] ([f633b0f](https://github.com/peaceiris/actions-gh-pages/commit/f633b0f6b54f252348cc3b10713b111caaf6f3d1))
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* Add Code Scanning workflow badge ([99a89f6](https://github.com/peaceiris/actions-gh-pages/commit/99a89f661a291c444965018bf828995e08d7bb7b))
|
||||||
|
* bump hugo from 0.71.1 to 0.74.2 ([ad558aa](https://github.com/peaceiris/actions-gh-pages/commit/ad558aa8bd9ad82edc7bd886159659328e6d61de))
|
||||||
|
* change default-branch to main ([6896bd8](https://github.com/peaceiris/actions-gh-pages/commit/6896bd8b80ecc02e6c47bbcf7fc1ae0bd4d47645))
|
||||||
|
* change master branch to default-branch (#408) ([5051105](https://github.com/peaceiris/actions-gh-pages/commit/505110527986e8c3d30694488f643d6529d0d593)), closes [#408](https://github.com/peaceiris/actions-gh-pages/issues/408)
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* chdir to workDir after copied assets ([612f1f7](https://github.com/peaceiris/actions-gh-pages/commit/612f1f7579820dc380d265d61924f7a7d8718859)), closes [#324](https://github.com/peaceiris/actions-gh-pages/issues/324)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-1](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.0-0...v3.7.0-1) (2020-07-21)
|
||||||
|
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* Enhance section name ([3874723](https://github.com/peaceiris/actions-gh-pages/commit/3874723ac6158d13e3f1e3c8fd34e1ce96d9edf7))
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* KeepFiles behaviour when DestinationDir has dir (#405) ([ce4e3be](https://github.com/peaceiris/actions-gh-pages/commit/ce4e3beff1ed33658f3160b0f45b688c6ea09932)), closes [#405](https://github.com/peaceiris/actions-gh-pages/issues/405) [#324](https://github.com/peaceiris/actions-gh-pages/issues/324)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# [3.7.0-0](https://github.com/peaceiris/actions-gh-pages/compare/v3.6.4...v3.7.0-0) (2020-07-21)
|
||||||
|
|
||||||
|
|
||||||
|
### ci
|
||||||
|
|
||||||
|
* bump codecov/codecov-action from v1.0.10 to v1.0.11 (#401) ([a5a8912](https://github.com/peaceiris/actions-gh-pages/commit/a5a8912d3e47a3ba8785d356ebed0fd02e2eeb46)), closes [#401](https://github.com/peaceiris/actions-gh-pages/issues/401)
|
||||||
|
* update label ([5980f05](https://github.com/peaceiris/actions-gh-pages/commit/5980f05de835c05638459c3c7a80d76edd0c7969))
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @types/jest from 26.0.4 to 26.0.5 (#402) ([42a6cdd](https://github.com/peaceiris/actions-gh-pages/commit/42a6cdde0c0d499af05cd22020132f6240d578a8)), closes [#402](https://github.com/peaceiris/actions-gh-pages/issues/402)
|
||||||
|
* bump @types/node from 12.12.50 to 12.12.51 (#404) ([0cb61e9](https://github.com/peaceiris/actions-gh-pages/commit/0cb61e91a5487c04cb202e13a8d2bc25c09c80e1)), closes [#404](https://github.com/peaceiris/actions-gh-pages/issues/404)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* update dependabot label ([2504696](https://github.com/peaceiris/actions-gh-pages/commit/250469649c036a88f547b96f94867900a1f19163))
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* Add destination_dir option (#403) ([f30118c](https://github.com/peaceiris/actions-gh-pages/commit/f30118c78eebbbe6cf66009b80a7414a4047de43)), closes [#403](https://github.com/peaceiris/actions-gh-pages/issues/403) [#324](https://github.com/peaceiris/actions-gh-pages/issues/324) [#390](https://github.com/peaceiris/actions-gh-pages/issues/390)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.6.4](https://github.com/peaceiris/actions-gh-pages/compare/v3.6.3...v3.6.4) (2020-07-18)
|
||||||
|
|
||||||
|
|
||||||
|
### chore
|
||||||
|
|
||||||
|
* change default branch from master to main (#396) ([932df18](https://github.com/peaceiris/actions-gh-pages/commit/932df18147b59ce4a998b4caabfcc50f1889c827)), closes [#396](https://github.com/peaceiris/actions-gh-pages/issues/396)
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump standard-version from 8.0.1 to 8.0.2 (#395) ([c935046](https://github.com/peaceiris/actions-gh-pages/commit/c935046a93788ca4ea55bb13f438ae77a54a9197)), closes [#395](https://github.com/peaceiris/actions-gh-pages/issues/395)
|
||||||
|
* bump typescript from 3.9.6 to 3.9.7 (#399) ([7e92312](https://github.com/peaceiris/actions-gh-pages/commit/7e92312ae46d6a7ad1c55a6ce3d98c66ae1ddda3)), closes [#399](https://github.com/peaceiris/actions-gh-pages/issues/399)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* change default branch from master to main (#397) ([6901b8e](https://github.com/peaceiris/actions-gh-pages/commit/6901b8e8fcec69a339c4a622b85ec3f66e78f90a)), closes [#397](https://github.com/peaceiris/actions-gh-pages/issues/397)
|
||||||
|
|
||||||
|
### feat
|
||||||
|
|
||||||
|
* Allow absolute path for publish_dir (#400) ([e193524](https://github.com/peaceiris/actions-gh-pages/commit/e193524bff3509becae7e3ced3114176cc70a5dd)), closes [#400](https://github.com/peaceiris/actions-gh-pages/issues/400) [#242](https://github.com/peaceiris/actions-gh-pages/issues/242)
|
||||||
|
* enhance error message (#398) ([3d65640](https://github.com/peaceiris/actions-gh-pages/commit/3d656402e52a96a0c027e4ad98f3ce06da7f8c1b)), closes [#398](https://github.com/peaceiris/actions-gh-pages/issues/398)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.6.3](https://github.com/peaceiris/actions-gh-pages/compare/v3.6.2...v3.6.3) (2020-07-14)
|
||||||
|
|
||||||
|
|
||||||
|
### deps
|
||||||
|
|
||||||
|
* bump @types/node from 12.12.48 to 12.12.50 (#392) ([a4205cb](https://github.com/peaceiris/actions-gh-pages/commit/a4205cbdd8cd3a11aee9c47b7f9d99a615b70a21)), closes [#392](https://github.com/peaceiris/actions-gh-pages/issues/392)
|
||||||
|
* bump standard-version from 8.0.0 to 8.0.1 (#391) ([6b76e36](https://github.com/peaceiris/actions-gh-pages/commit/6b76e36ab31b40e721fdf587221239d94ca5d141)), closes [#391](https://github.com/peaceiris/actions-gh-pages/issues/391)
|
||||||
|
|
||||||
|
### docs
|
||||||
|
|
||||||
|
* Add dependabot.yml example (#385) ([a8941b8](https://github.com/peaceiris/actions-gh-pages/commit/a8941b89c6f5476753fcdadcacbfb73206faefb3)), closes [#385](https://github.com/peaceiris/actions-gh-pages/issues/385)
|
||||||
|
* add notes #349 (#387) ([488b74c](https://github.com/peaceiris/actions-gh-pages/commit/488b74cc9f861adb4649850096fb9f367363c096)), closes [#349](https://github.com/peaceiris/actions-gh-pages/issues/349) [#387](https://github.com/peaceiris/actions-gh-pages/issues/387)
|
||||||
|
* Add Schedule and Manual Deployment (#386) ([16d58be](https://github.com/peaceiris/actions-gh-pages/commit/16d58bea333f07b6141ab6d6f95dca541fde8853)), closes [#386](https://github.com/peaceiris/actions-gh-pages/issues/386)
|
||||||
|
* pin actions/setup-node from v2 to v2.1.0 (#389) ([d753ac9](https://github.com/peaceiris/actions-gh-pages/commit/d753ac9b7dd593b0877d35bc997ea8665c73866c)), closes [#389](https://github.com/peaceiris/actions-gh-pages/issues/389) [#388](https://github.com/peaceiris/actions-gh-pages/issues/388)
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* isProhibitedBranch detection (#394) ([f53ab0c](https://github.com/peaceiris/actions-gh-pages/commit/f53ab0c2a5d3f3b2e6524639bae8ca84e454e049)), closes [#394](https://github.com/peaceiris/actions-gh-pages/issues/394)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [3.6.2](https://github.com/peaceiris/actions-gh-pages/compare/v3.6.1...v3.6.2) (2020-07-08)
|
## [3.6.2](https://github.com/peaceiris/actions-gh-pages/compare/v3.6.1...v3.6.2) (2020-07-08)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
60
Dockerfile
60
Dockerfile
@@ -1,31 +1,55 @@
|
|||||||
ARG NODE_VERSION
|
FROM ubuntu:18.04
|
||||||
|
|
||||||
FROM node:${NODE_VERSION}-buster-slim
|
|
||||||
|
|
||||||
SHELL ["/bin/bash", "-l", "-c"]
|
SHELL ["/bin/bash", "-l", "-c"]
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
|
apt-get install -y --no-install-recommends software-properties-common gnupg && \
|
||||||
|
add-apt-repository ppa:git-core/ppa && \
|
||||||
|
apt-get update && \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
git \
|
||||||
libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev autoconf \
|
curl \
|
||||||
ca-certificates \
|
|
||||||
wget \
|
wget \
|
||||||
ssh \
|
ssh \
|
||||||
vim && \
|
vim && \
|
||||||
rm -rf /var/lib/apt/lists/* && \
|
apt-get autoclean && \
|
||||||
npm i -g npm
|
apt-get clean && \
|
||||||
|
apt-get autoremove -y && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
WORKDIR /git
|
WORKDIR /node
|
||||||
ENV GIT_VERSION="2.27.0"
|
ARG NODE_VERSION
|
||||||
RUN wget -q "https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz" && \
|
RUN curl -o nodejs.deb "https://deb.nodesource.com/node_${NODE_VERSION%%.*}.x/pool/main/n/nodejs/nodejs_${NODE_VERSION}-1nodesource1_amd64.deb" && \
|
||||||
tar -zxf "./v${GIT_VERSION}.tar.gz" && \
|
apt-get update && \
|
||||||
rm "./v${GIT_VERSION}.tar.gz" && \
|
apt-get install -y --no-install-recommends ./nodejs.deb && \
|
||||||
cd "./git-${GIT_VERSION}" && \
|
npm i -g npm && \
|
||||||
make configure && \
|
curl -sL https://deb.nodesource.com/test | bash - && \
|
||||||
./configure --prefix=/usr && \
|
rm -rf /var/lib/apt/lists/* && \
|
||||||
make all && \
|
rm -rf /node
|
||||||
make install
|
|
||||||
|
|
||||||
WORKDIR /repo
|
WORKDIR /repo
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND="noninteractive"
|
||||||
|
ENV LANG="C.UTF-8"
|
||||||
|
ENV CI="true"
|
||||||
|
ENV ImageVersion="20200717.1"
|
||||||
|
ENV GITHUB_SERVER_URL="https://github.com"
|
||||||
|
ENV GITHUB_API_URL="https://api.github.com"
|
||||||
|
ENV GITHUB_GRAPHQL_URL="https://api.github.com/graphql"
|
||||||
|
ENV GITHUB_REPOSITORY_OWNER="peaceiris"
|
||||||
|
ENV GITHUB_ACTIONS="true"
|
||||||
|
ENV GITHUB_ACTOR="peaceiris"
|
||||||
|
ENV GITHUB_REPOSITORY="actions/pages"
|
||||||
|
ENV RUNNER_OS="Linux"
|
||||||
|
ENV RUNNER_TOOL_CACHE="/opt/hostedtoolcache"
|
||||||
|
ENV RUNNER_USER="runner"
|
||||||
|
ENV RUNNER_TEMP="/home/runner/work/_temp"
|
||||||
|
ENV RUNNER_WORKSPACE="/home/runner/work/pages"
|
||||||
|
|
||||||
|
RUN echo "node version: $(node -v)" && \
|
||||||
|
echo "npm version: $(npm -v)" && \
|
||||||
|
git --version && \
|
||||||
|
git config --global init.defaultBranch main && \
|
||||||
|
git config --global init.defaultBranch
|
||||||
|
|
||||||
CMD [ "bash" ]
|
CMD [ "bash" ]
|
||||||
|
|||||||
38
Makefile
38
Makefile
@@ -1,46 +1,22 @@
|
|||||||
cmd := "bash"
|
|
||||||
msg := ""
|
|
||||||
IMAGE_NAME := docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest
|
IMAGE_NAME := docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest
|
||||||
NODE_VERSION := $(shell cat ./.nvmrc)
|
NODE_VERSION := $(shell cat ./.nvmrc)
|
||||||
DOCKER_RUN := docker run --rm -i -t -v ${PWD}:/repo -v ~/.gitconfig:/root/.gitconfig $(IMAGE_NAME)
|
|
||||||
DOCKER_RUN_CI := docker run --rm -v ${PWD}:/repo $(IMAGE_NAME)
|
|
||||||
|
|
||||||
|
|
||||||
.PHONY: build
|
.PHONY: build
|
||||||
build:
|
build:
|
||||||
docker build . \
|
docker-compose build --build-arg NODE_VERSION=$(NODE_VERSION)
|
||||||
--build-arg NODE_VERSION=$(NODE_VERSION) \
|
|
||||||
--cache-from=${IMAGE_NAME} \
|
|
||||||
-t $(IMAGE_NAME)
|
|
||||||
|
|
||||||
.PHONY: pull
|
|
||||||
pull:
|
|
||||||
docker pull ${IMAGE_NAME}
|
|
||||||
|
|
||||||
.PHONY: push
|
|
||||||
push:
|
|
||||||
docker push ${IMAGE_NAME}
|
|
||||||
|
|
||||||
.PHONY: run
|
.PHONY: run
|
||||||
run:
|
run:
|
||||||
$(DOCKER_RUN) $(cmd)
|
docker-compose run --rm dev bash
|
||||||
|
|
||||||
.PHONY: cirun
|
.PHONY: ci
|
||||||
cirun:
|
ci:
|
||||||
$(DOCKER_RUN_CI) $(cmd)
|
docker-compose run --rm -T dev npm ci
|
||||||
|
|
||||||
.PHONY: test
|
.PHONY: test
|
||||||
test:
|
test:
|
||||||
$(DOCKER_RUN) npm test
|
docker-compose run --rm -T dev npm test
|
||||||
|
|
||||||
.PHONY: commit
|
|
||||||
commit:
|
|
||||||
$(DOCKER_RUN) git commit -m "$(msg)"
|
|
||||||
|
|
||||||
.PHONY: all
|
.PHONY: all
|
||||||
all:
|
all:
|
||||||
$(DOCKER_RUN) npm run all
|
docker-compose run --rm -T dev npm run all
|
||||||
|
|
||||||
.PHONY: ciall
|
|
||||||
ciall:
|
|
||||||
$(DOCKER_RUN_CI) npm run all
|
|
||||||
|
|||||||
298
README.md
298
README.md
@@ -1,14 +1,13 @@
|
|||||||
[](https://github.com/peaceiris/actions-gh-pages/blob/master/LICENSE)
|
## GitHub Actions for GitHub Pages
|
||||||
[](https://github.com/peaceiris/actions-gh-pages/releases/latest)
|
|
||||||
[](https://github.com/peaceiris/actions-gh-pages/releases)
|
|
||||||

|
|
||||||
[](https://www.codefactor.io/repository/github/peaceiris/actions-gh-pages)
|
|
||||||
|
|
||||||
<img width="400" alt="GitHub Actions for deploying to GitHub Pages with Static Site Generators" src="./images/ogp.svg">
|
<img width="400" alt="GitHub Actions for deploying to GitHub Pages with Static Site Generators" src="./images/ogp.svg">
|
||||||
|
|
||||||
|
[](https://github.com/peaceiris/actions-gh-pages/blob/main/LICENSE)
|
||||||
|
[](https://github.com/peaceiris/actions-gh-pages/releases/latest)
|
||||||
## GitHub Actions for GitHub Pages
|
[](https://github.com/peaceiris/actions-gh-pages/releases)
|
||||||
|

|
||||||
|

|
||||||
|
[](https://www.codefactor.io/repository/github/peaceiris/actions-gh-pages)
|
||||||
|
|
||||||
This is a **GitHub Action** to deploy your static files to **GitHub Pages**.
|
This is a **GitHub Action** to deploy your static files to **GitHub Pages**.
|
||||||
This deploy action can be combined simply and freely with [Static Site Generators]. (Hugo, MkDocs, Gatsby, mdBook, Next, Nuxt, and so on.)
|
This deploy action can be combined simply and freely with [Static Site Generators]. (Hugo, MkDocs, Gatsby, mdBook, Next, Nuxt, and so on.)
|
||||||
@@ -17,7 +16,6 @@ This deploy action can be combined simply and freely with [Static Site Generator
|
|||||||
|
|
||||||
The next example step will deploy `./public` directory to the remote `gh-pages` branch.
|
The next example step will deploy `./public` directory to the remote `gh-pages` branch.
|
||||||
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
@@ -36,7 +34,9 @@ Three tokens are supported.
|
|||||||
| `deploy_key` | ✅️ | ✅️ | SSH | Necessary |
|
| `deploy_key` | ✅️ | ✅️ | SSH | Necessary |
|
||||||
| `personal_token` | ✅️ | ✅️ | HTTPS | Necessary |
|
| `personal_token` | ✅️ | ✅️ | HTTPS | Necessary |
|
||||||
|
|
||||||
Notes: Actually, the `GITHUB_TOKEN` works for deploying to GitHub Pages but it has still some limitations. For the first deployment, we need to select the `gh-pages` branch or `master` branch on the repository settings tab. See [First Deployment with `GITHUB_TOKEN`](#%EF%B8%8F-first-deployment-with-github_token)
|
Notes: Actually, the `GITHUB_TOKEN` works for deploying to GitHub Pages but it has still some limitations.
|
||||||
|
For the first deployment, we need to select the `gh-pages` branch or another branch on the repository settings tab.
|
||||||
|
See [First Deployment with `GITHUB_TOKEN`](#%EF%B8%8F-first-deployment-with-github_token)
|
||||||
|
|
||||||
### Supported Platforms
|
### Supported Platforms
|
||||||
|
|
||||||
@@ -61,20 +61,20 @@ All Actions runners: Linux (Ubuntu), macOS, and Windows are supported.
|
|||||||
|
|
||||||
|
|
||||||
- [Getting started](#getting-started)
|
- [Getting started](#getting-started)
|
||||||
- [⭐️ Repository type - Project](#%EF%B8%8F-repository-type---project)
|
|
||||||
- [⭐️ Repository type - User and Organization](#%EF%B8%8F-repository-type---user-and-organization)
|
|
||||||
- [Options](#options)
|
- [Options](#options)
|
||||||
- [⭐️ `github_token`](#%EF%B8%8F-github_token)
|
- [⭐️ Set Runner's Access Token `github_token`](#%EF%B8%8F-set-runners-access-token-github_token)
|
||||||
- [⭐️ `deploy_key`](#%EF%B8%8F-deploy_key)
|
- [⭐️ Set SSH Private Key `deploy_key`](#%EF%B8%8F-set-ssh-private-key-deploy_key)
|
||||||
- [⭐️ `personal_token`](#%EF%B8%8F-personal_token)
|
- [⭐️ Set Personal Access Token `personal_token`](#%EF%B8%8F-set-personal-access-token-personal_token)
|
||||||
- [⭐️ `publish_branch`](#%EF%B8%8F-publish_branch)
|
- [⭐️ Set Another GitHub Pages Branch `publish_branch`](#%EF%B8%8F-set-another-github-pages-branch-publish_branch)
|
||||||
- [⭐️ `publish_dir`](#%EF%B8%8F-publish_dir)
|
- [⭐️ Source Directory `publish_dir`](#%EF%B8%8F-source-directory-publish_dir)
|
||||||
- [⭐️ CNAME](#%EF%B8%8F-cname)
|
- [⭐️ Deploy to Subdirectory `destination_dir`](#%EF%B8%8F-deploy-to-subdirectory-destination_dir)
|
||||||
- [⭐️ Enable Built-in Jekyll](#%EF%B8%8F-enable-built-in-jekyll)
|
- [⭐️ Filter publishing assets `exclude_assets`](#%EF%B8%8F-filter-publishing-assets-exclude_assets)
|
||||||
- [⭐️ Allow empty commits](#%EF%B8%8F-allow-empty-commits)
|
- [⭐️ Add CNAME file `cname`](#%EF%B8%8F-add-cname-file-cname)
|
||||||
- [⭐️ Keeping existing files](#%EF%B8%8F-keeping-existing-files)
|
- [⭐️ Enable Built-in Jekyll `enable_jekyll`](#%EF%B8%8F-enable-built-in-jekyll-enable_jekyll)
|
||||||
- [⭐️ Deploy to external repository](#%EF%B8%8F-deploy-to-external-repository)
|
- [⭐️ Allow empty commits `allow_empty_commit`](#%EF%B8%8F-allow-empty-commits-allow_empty_commit)
|
||||||
- [⭐️ Force orphan](#%EF%B8%8F-force-orphan)
|
- [⭐️ Keeping existing files `keep_files`](#%EF%B8%8F-keeping-existing-files-keep_files)
|
||||||
|
- [⭐️ Deploy to external repository `external_repository`](#%EF%B8%8F-deploy-to-external-repository-external_repository)
|
||||||
|
- [⭐️ Force orphan `force_orphan`](#%EF%B8%8F-force-orphan-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)
|
- [⭐️ Create Git tag](#%EF%B8%8F-create-git-tag)
|
||||||
@@ -82,6 +82,7 @@ All Actions runners: Linux (Ubuntu), macOS, and Windows are supported.
|
|||||||
- [⭐️ Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key)
|
- [⭐️ Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key)
|
||||||
- [⭐️ First Deployment with `GITHUB_TOKEN`](#%EF%B8%8F-first-deployment-with-github_token)
|
- [⭐️ First Deployment with `GITHUB_TOKEN`](#%EF%B8%8F-first-deployment-with-github_token)
|
||||||
- [⭐️ 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)
|
||||||
|
- [⭐️ Schedule and Manual Deployment](#%EF%B8%8F-schedule-and-manual-deployment)
|
||||||
- [Examples](#examples)
|
- [Examples](#examples)
|
||||||
- [⭐️ Static Site Generators with Node.js](#%EF%B8%8F-static-site-generators-with-nodejs)
|
- [⭐️ Static Site Generators with Node.js](#%EF%B8%8F-static-site-generators-with-nodejs)
|
||||||
- [⭐️ Gatsby](#%EF%B8%8F-gatsby)
|
- [⭐️ Gatsby](#%EF%B8%8F-gatsby)
|
||||||
@@ -103,11 +104,9 @@ All Actions runners: Linux (Ubuntu), macOS, and Windows are supported.
|
|||||||
|
|
||||||
## Getting started
|
## Getting started
|
||||||
|
|
||||||
### ⭐️ Repository type - Project
|
Add your workflow file `.github/workflows/gh-pages.yml` and push it to your remote default branch.
|
||||||
|
|
||||||
Add your workflow file `.github/workflows/gh-pages.yml` and push to the remote master branch.
|
Here is an example workflow for Hugo.
|
||||||
|
|
||||||
An example workflow for Hugo.
|
|
||||||
|
|
||||||
- [peaceiris/actions-hugo: GitHub Actions for Hugo](https://github.com/peaceiris/actions-hugo)
|
- [peaceiris/actions-hugo: GitHub Actions for Hugo](https://github.com/peaceiris/actions-hugo)
|
||||||
|
|
||||||
@@ -119,7 +118,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main # Set a branch name to trigger deployment
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -133,7 +132,7 @@ jobs:
|
|||||||
- name: Setup Hugo
|
- name: Setup Hugo
|
||||||
uses: peaceiris/actions-hugo@v2
|
uses: peaceiris/actions-hugo@v2
|
||||||
with:
|
with:
|
||||||
hugo-version: '0.71.1'
|
hugo-version: '0.74.3'
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: hugo --minify
|
run: hugo --minify
|
||||||
@@ -145,47 +144,10 @@ jobs:
|
|||||||
publish_dir: ./public
|
publish_dir: ./public
|
||||||
```
|
```
|
||||||
|
|
||||||
The above example is for [Project Pages sites]. (`<username>/<project_name>` repository)
|
|
||||||
|
|
||||||
| Actions log overview | GitHub Pages log |
|
| Actions log overview | GitHub Pages log |
|
||||||
|---|---|
|
|---|---|
|
||||||
|  |  |
|
|  |  |
|
||||||
|
|
||||||
### ⭐️ Repository type - User and Organization
|
|
||||||
|
|
||||||
For [User and Organization Pages sites] (`<username>/<username>.github.io` repository),
|
|
||||||
we have to set `master` branch to `publish_branch`.
|
|
||||||
|
|
||||||
A default value of `publish_branch` is `gh-pages`.
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- source # default branch
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
deploy:
|
|
||||||
runs-on: ubuntu-18.04
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- run: somebuild
|
|
||||||
|
|
||||||
- name: Deploy
|
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
|
||||||
with:
|
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
publish_dir: ./public
|
|
||||||
publish_branch: master # deploying branch
|
|
||||||
```
|
|
||||||
|
|
||||||
[Project Pages sites]: https://help.github.com/en/articles/user-organization-and-project-pages#project-pages-sites
|
|
||||||
[User and Organization Pages sites]: https://help.github.com/en/articles/user-organization-and-project-pages#user-and-organization-pages-sites
|
|
||||||
|
|
||||||

|
|
||||||

|
|
||||||
|
|
||||||
<div align="right">
|
<div align="right">
|
||||||
<a href="#table-of-contents">Back to TOC ☝️</a>
|
<a href="#table-of-contents">Back to TOC ☝️</a>
|
||||||
</div>
|
</div>
|
||||||
@@ -194,7 +156,7 @@ jobs:
|
|||||||
|
|
||||||
## Options
|
## Options
|
||||||
|
|
||||||
### ⭐️ `github_token`
|
### ⭐️ Set Runner's Access Token `github_token`
|
||||||
|
|
||||||
**This option is for `GITHUB_TOKEN`, not a personal access token.**
|
**This option is for `GITHUB_TOKEN`, not a personal access token.**
|
||||||
|
|
||||||
@@ -210,7 +172,7 @@ GitHub Actions runner automatically creates a `GITHUB_TOKEN` secret to use in yo
|
|||||||
|
|
||||||
For more details about `GITHUB_TOKEN`: [Authenticating with the GITHUB_TOKEN - GitHub Help](https://help.github.com/en/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)
|
For more details about `GITHUB_TOKEN`: [Authenticating with the GITHUB_TOKEN - GitHub Help](https://help.github.com/en/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)
|
||||||
|
|
||||||
### ⭐️ `deploy_key`
|
### ⭐️ Set SSH Private Key `deploy_key`
|
||||||
|
|
||||||
Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH deploy key, and set the `deploy_key` option like the following.
|
Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH deploy key, and set the `deploy_key` option like the following.
|
||||||
|
|
||||||
@@ -222,11 +184,10 @@ Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH
|
|||||||
publish_dir: ./public
|
publish_dir: ./public
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ `personal_token`
|
### ⭐️ Set Personal Access Token `personal_token`
|
||||||
|
|
||||||
[Generate a personal access token (`repo`)](https://github.com/settings/tokens) and add it to Secrets as `PERSONAL_TOKEN`, it works as well as `ACTIONS_DEPLOY_KEY`.
|
[Generate a personal access token (`repo`)](https://github.com/settings/tokens) and add it to Secrets as `PERSONAL_TOKEN`, it works as well as `ACTIONS_DEPLOY_KEY`.
|
||||||
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
@@ -235,21 +196,22 @@ Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH
|
|||||||
publish_dir: ./public
|
publish_dir: ./public
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ `publish_branch`
|
### ⭐️ Set Another GitHub Pages Branch `publish_branch`
|
||||||
|
|
||||||
A target branch to deploy to GitHub Pages. The default is `gh-pages`.
|
Set a branch name to use as GitHub Pages branch.
|
||||||
|
The default is `gh-pages`.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
uses: peaceiris/actions-gh-pages@v3
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
with:
|
with:
|
||||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
publish_branch: master # default: gh-pages
|
publish_branch: your-branch # default: gh-pages
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ `publish_dir`
|
### ⭐️ Source Directory `publish_dir`
|
||||||
|
|
||||||
A target directory to deploy to GitHub Pages. The default is `public`.
|
A source directory to deploy to GitHub Pages. The default is `public`.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
@@ -259,7 +221,61 @@ A target directory to deploy to GitHub Pages. The default is `public`.
|
|||||||
publish_dir: ./out # default: public
|
publish_dir: ./out # default: public
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ CNAME
|
### ⭐️ Deploy to Subdirectory `destination_dir`
|
||||||
|
|
||||||
|
*This feature is on beta.*
|
||||||
|
*Any feedback is welcome at [Issue #324](https://github.com/peaceiris/actions-gh-pages/issues/324)*
|
||||||
|
|
||||||
|
A destination subdirectory on a publishing branch. The default is empty.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
destination_dir: subdir
|
||||||
|
```
|
||||||
|
|
||||||
|
### ⭐️ Filter publishing assets `exclude_assets`
|
||||||
|
|
||||||
|
*This feature is on beta.*
|
||||||
|
*Any feedback is welcome at [Issue #163](https://github.com/peaceiris/actions-gh-pages/issues/163)*
|
||||||
|
|
||||||
|
Set files or directories to exclude from publishing assets.
|
||||||
|
The default is `.github`.
|
||||||
|
Values should be split with a comma.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
exclude_assets: '.github,exclude-file1,exclude-file2'
|
||||||
|
```
|
||||||
|
|
||||||
|
Set `exclude_assets` to empty for including the `.github` directory to deployment assets.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
|
with:
|
||||||
|
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} # Recommended for this usage
|
||||||
|
# personal_token: ${{ secrets.PERSONAL_TOKEN }} # An alternative
|
||||||
|
# github_token: ${{ secrets.GITHUB_TOKEN }} # This does not work for this usage
|
||||||
|
exclude_assets: ''
|
||||||
|
```
|
||||||
|
|
||||||
|
The `exclude_assets` option supports glob patterns.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
exclude_assets: '.github,exclude-file.txt,exclude-dir/**.txt'
|
||||||
|
```
|
||||||
|
|
||||||
|
### ⭐️ Add CNAME file `cname`
|
||||||
|
|
||||||
To add `CNAME` file, we can set the `cname` option.
|
To add `CNAME` file, we can set the `cname` option.
|
||||||
|
|
||||||
@@ -274,7 +290,7 @@ For more details about `CNAME`, read the official documentation: [Managing a cus
|
|||||||
cname: github.com
|
cname: github.com
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ Enable Built-in Jekyll
|
### ⭐️ Enable Built-in Jekyll `enable_jekyll`
|
||||||
|
|
||||||
If you want GitHub Pages to process your site with the static site generator Jekyll, set `enable_jekyll` to true.
|
If you want GitHub Pages to process your site with the static site generator Jekyll, set `enable_jekyll` to true.
|
||||||
|
|
||||||
@@ -296,7 +312,7 @@ Bypassing Jekyll makes the deployment faster and is necessary if you are deployi
|
|||||||
|
|
||||||
For more details about `.nojekyll`: [Bypassing Jekyll on GitHub Pages - The GitHub Blog](https://github.blog/2009-12-29-bypassing-jekyll-on-github-pages/)
|
For more details about `.nojekyll`: [Bypassing Jekyll on GitHub Pages - The GitHub Blog](https://github.blog/2009-12-29-bypassing-jekyll-on-github-pages/)
|
||||||
|
|
||||||
### ⭐️ Allow empty commits
|
### ⭐️ Allow empty commits `allow_empty_commit`
|
||||||
|
|
||||||
By default, a commit will not be generated when no file changes. If you want to allow an empty commit, set the optional parameter `allow_empty_commit` to `true`.
|
By default, a commit will not be generated when no file changes. If you want to allow an empty commit, set the optional parameter `allow_empty_commit` to `true`.
|
||||||
|
|
||||||
@@ -311,10 +327,15 @@ For example:
|
|||||||
allow_empty_commit: true
|
allow_empty_commit: true
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ Keeping existing files
|
### ⭐️ Keeping existing files `keep_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 `keep_files` to `true`.
|
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 `keep_files` to `true`.
|
||||||
|
|
||||||
|
Note that users who are using a Static Site Generator do not need this option in most cases. Please reconsider your project structure and building scripts, or use a built-in feature of a Static Site Generator before you enable this flag.
|
||||||
|
|
||||||
|
- [Static Files | Hugo](https://gohugo.io/content-management/static-files/)
|
||||||
|
- [Using the Static Folder | Gatsby](https://www.gatsbyjs.com/docs/static-folder/)
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -326,7 +347,10 @@ For example:
|
|||||||
keep_files: true
|
keep_files: true
|
||||||
```
|
```
|
||||||
|
|
||||||
### ⭐️ Deploy to external repository
|
With the v3, this option does not support working with the force_orphan option. The next major release (version 4) will support this.
|
||||||
|
See [the issue #455](https://github.com/peaceiris/actions-gh-pages/issues/455)
|
||||||
|
|
||||||
|
### ⭐️ Deploy to external repository `external_repository`
|
||||||
|
|
||||||
By default, your files are published to the repository which is running this action.
|
By default, your files are published to the repository which is running this action.
|
||||||
If you want to publish to another repository on GitHub, set the environment variable `external_repository` to `<username>/<external-repository>`.
|
If you want to publish to another repository on GitHub, set the environment variable `external_repository` to `<username>/<external-repository>`.
|
||||||
@@ -339,7 +363,7 @@ For example:
|
|||||||
with:
|
with:
|
||||||
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
|
||||||
external_repository: username/external-repository
|
external_repository: username/external-repository
|
||||||
publish_branch: master
|
publish_branch: your-branch # default: gh-pages
|
||||||
publish_dir: ./public
|
publish_dir: ./public
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -348,14 +372,14 @@ When you use `deploy_key`, set your private key to the repository which includes
|
|||||||
|
|
||||||
**Note that `GITHUB_TOKEN` has no permission to access to external repositories. Please create a personal access token and set it to `personal_token` like `personal_token: ${{ secrets.PERSONAL_TOKEN }}`.**
|
**Note that `GITHUB_TOKEN` has no permission to access to external repositories. Please create a personal access token and set it to `personal_token` like `personal_token: ${{ secrets.PERSONAL_TOKEN }}`.**
|
||||||
|
|
||||||
Use case:
|
Use case:
|
||||||
|
|
||||||
A GitHub Free Plan account cannot use the GitHub Pages in a private repository. To make your source contents private and deploy it with the GitHub Pages, you can deploy your site from a private repository to a public repository using this option.
|
A GitHub Free Plan account cannot use the GitHub Pages in a private repository. To make your source contents private and deploy it with the GitHub Pages, you can deploy your site from a private repository to a public repository using this option.
|
||||||
|
|
||||||
- `peaceiris/homepage`: A private repository running this action with `external_repository: peaceiris/peaceiris.github.io`
|
- `peaceiris/homepage`: A private repository running this action with `external_repository: peaceiris/peaceiris.github.io`
|
||||||
- `peaceiris/peaceiris.github.io`: A public repository using GitHub Pages
|
- `peaceiris/peaceiris.github.io`: A public repository using GitHub Pages
|
||||||
|
|
||||||
### ⭐️ Force orphan
|
### ⭐️ Force orphan `force_orphan`
|
||||||
|
|
||||||
We can set the `force_orphan: true` option.
|
We can set the `force_orphan: true` option.
|
||||||
This allows you to make your publish branch with only the latest commit.
|
This allows you to make your publish branch with only the latest commit.
|
||||||
@@ -424,7 +448,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
tags:
|
tags:
|
||||||
- 'v*.*.*'
|
- 'v*.*.*'
|
||||||
|
|
||||||
@@ -456,7 +480,7 @@ jobs:
|
|||||||
Commands on a local machine.
|
Commands on a local machine.
|
||||||
|
|
||||||
```console
|
```console
|
||||||
$ # On the master branch
|
$ # On a main branch
|
||||||
$ git tag -a "v1.2.3" -m "Release v1.2.3"
|
$ git tag -a "v1.2.3" -m "Release v1.2.3"
|
||||||
$ git push origin "v1.2.3"
|
$ git push origin "v1.2.3"
|
||||||
|
|
||||||
@@ -464,7 +488,7 @@ $ # After deployment
|
|||||||
$ git fetch origin
|
$ git fetch origin
|
||||||
$ git tag
|
$ git tag
|
||||||
deploy-v1.2.3 # Tag on the gh-pages branch
|
deploy-v1.2.3 # Tag on the gh-pages branch
|
||||||
v1.2.3 # Tag on the master branch
|
v1.2.3 # Tag on the main branch
|
||||||
```
|
```
|
||||||
|
|
||||||
<div align="right">
|
<div align="right">
|
||||||
@@ -518,6 +542,50 @@ It is useful to watch this repository (release only) to check the [latest releas
|
|||||||
|
|
||||||
[latest release]: https://github.com/peaceiris/actions-gh-pages/releases
|
[latest release]: https://github.com/peaceiris/actions-gh-pages/releases
|
||||||
|
|
||||||
|
For continuous updating, we can use the GitHub native Dependabot.
|
||||||
|
Here is an example configuration of the bot. The config file is located in `.github/dependabot.yml`.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
version: 2
|
||||||
|
updates:
|
||||||
|
- package-ecosystem: "github-actions"
|
||||||
|
directory: "/"
|
||||||
|
schedule:
|
||||||
|
interval: "daily"
|
||||||
|
labels:
|
||||||
|
- "CI/CD"
|
||||||
|
commit-message:
|
||||||
|
prefix: ci
|
||||||
|
```
|
||||||
|
|
||||||
|
See the official documentation for more details about the Dependabot: [Keeping your dependencies updated automatically - GitHub Docs](https://docs.github.com/en/github/administering-a-repository/keeping-your-dependencies-updated-automatically)
|
||||||
|
|
||||||
|
### ⭐️ Schedule and Manual Deployment
|
||||||
|
|
||||||
|
For deploying regularly, we can set the `on.schedule` workflow trigger.
|
||||||
|
See [Scheduled events | Events that trigger workflows - GitHub Docs](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events)
|
||||||
|
|
||||||
|
For deploying manually, we can set the `on.workflow_dispatch` workflow trigger.
|
||||||
|
See [Manual events `workflow_dispatch` | Events that trigger workflows - GitHub Docs](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#manual-events)
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: github pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
schedule:
|
||||||
|
- cron: "22 22 * * *"
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-18.04
|
||||||
|
steps:
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
<div align="right">
|
<div align="right">
|
||||||
<a href="#table-of-contents">Back to TOC ☝️</a>
|
<a href="#table-of-contents">Back to TOC ☝️</a>
|
||||||
</div>
|
</div>
|
||||||
@@ -543,7 +611,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -552,7 +620,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -587,7 +655,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -596,7 +664,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -635,7 +703,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -644,7 +712,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -686,7 +754,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -695,7 +763,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -732,7 +800,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
paths:
|
paths:
|
||||||
- '.github/workflows/deploy.yml'
|
- '.github/workflows/deploy.yml'
|
||||||
- 'website/**'
|
- 'website/**'
|
||||||
@@ -747,7 +815,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -789,7 +857,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -845,7 +913,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -880,7 +948,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -891,7 +959,7 @@ jobs:
|
|||||||
- name: Setup Flutter
|
- name: Setup Flutter
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/flutter/flutter.git --depth 1 -b beta _flutter
|
git clone https://github.com/flutter/flutter.git --depth 1 -b beta _flutter
|
||||||
echo "::add-path::${GITHUB_WORKSPACE}/_flutter/bin"
|
echo "${GITHUB_WORKSPACE}/_flutter/bin" >> ${GITHUB_PATH}
|
||||||
|
|
||||||
- name: Install
|
- name: Install
|
||||||
run: |
|
run: |
|
||||||
@@ -910,7 +978,7 @@ jobs:
|
|||||||
|
|
||||||
### ⭐️ Elm
|
### ⭐️ Elm
|
||||||
|
|
||||||
An exapmle workflow for [Elm].
|
An example workflow for [Elm].
|
||||||
|
|
||||||
[Elm]: https://elm-lang.org
|
[Elm]: https://elm-lang.org
|
||||||
|
|
||||||
@@ -920,7 +988,7 @@ name: github pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@@ -929,7 +997,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@v2
|
uses: actions/setup-node@v2.1.0
|
||||||
with:
|
with:
|
||||||
node-version: '12.x'
|
node-version: '12.x'
|
||||||
|
|
||||||
@@ -996,21 +1064,33 @@ name: GitHub Pages
|
|||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: macos-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/Publish_build
|
||||||
|
.build
|
||||||
|
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-spm-
|
||||||
|
|
||||||
- name: Setup JohnSundell/Publish
|
- name: Setup JohnSundell/Publish
|
||||||
run: |
|
run: |
|
||||||
cd ${HOME}
|
cd ${HOME}
|
||||||
git clone --depth=1 https://github.com/JohnSundell/Publish.git
|
export PUBLISH_VERSION="0.7.0"
|
||||||
cd ./Publish
|
git clone https://github.com/JohnSundell/Publish.git
|
||||||
|
cd ./Publish && git checkout ${PUBLISH_VERSION}
|
||||||
|
mv ~/Publish_build .build || true
|
||||||
swift build -c release
|
swift build -c release
|
||||||
echo "::add-path::${HOME}/Publish/.build/release"
|
cp -r .build ~/Publish_build || true
|
||||||
|
echo "${HOME}/Publish/.build/release" >> ${GITHUB_PATH}
|
||||||
|
|
||||||
- run: publish-cli generate
|
- run: publish-cli generate
|
||||||
|
|
||||||
@@ -1031,7 +1111,7 @@ jobs:
|
|||||||
|
|
||||||
- [MIT License - peaceiris/actions-gh-pages]
|
- [MIT License - peaceiris/actions-gh-pages]
|
||||||
|
|
||||||
[MIT License - peaceiris/actions-gh-pages]: https://github.com/peaceiris/actions-gh-pages/blob/master/LICENSE
|
[MIT License - peaceiris/actions-gh-pages]: https://github.com/peaceiris/actions-gh-pages/blob/main/LICENSE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,8 @@ beforeEach(() => {
|
|||||||
jest.resetModules();
|
jest.resetModules();
|
||||||
process.stdout.write = jest.fn();
|
process.stdout.write = jest.fn();
|
||||||
|
|
||||||
const doc = yaml.safeLoad(fs.readFileSync(__dirname + '/../action.yml', 'utf8'));
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||||
|
const doc: any = yaml.safeLoad(fs.readFileSync(__dirname + '/../action.yml', 'utf8'));
|
||||||
Object.keys(doc.inputs).forEach(name => {
|
Object.keys(doc.inputs).forEach(name => {
|
||||||
const envVar = `INPUT_${name.replace(/ /g, '_').toUpperCase()}`;
|
const envVar = `INPUT_${name.replace(/ /g, '_').toUpperCase()}`;
|
||||||
process.env[envVar] = doc.inputs[name]['default'];
|
process.env[envVar] = doc.inputs[name]['default'];
|
||||||
@@ -17,7 +18,8 @@ beforeEach(() => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
afterEach(() => {
|
afterEach(() => {
|
||||||
const doc = yaml.safeLoad(fs.readFileSync(__dirname + '/../action.yml', 'utf8'));
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||||
|
const doc: any = yaml.safeLoad(fs.readFileSync(__dirname + '/../action.yml', 'utf8'));
|
||||||
Object.keys(doc.inputs).forEach(name => {
|
Object.keys(doc.inputs).forEach(name => {
|
||||||
const envVar = `INPUT_${name.replace(/ /g, '_').toUpperCase()}`;
|
const envVar = `INPUT_${name.replace(/ /g, '_').toUpperCase()}`;
|
||||||
console.debug(`delete ${envVar}\t${process.env[envVar]}`);
|
console.debug(`delete ${envVar}\t${process.env[envVar]}`);
|
||||||
@@ -40,6 +42,7 @@ function getInputsLog(authMethod: string, inps: Inputs): string {
|
|||||||
[INFO] ${authMethod}: true
|
[INFO] ${authMethod}: true
|
||||||
[INFO] PublishBranch: ${inps.PublishBranch}
|
[INFO] PublishBranch: ${inps.PublishBranch}
|
||||||
[INFO] PublishDir: ${inps.PublishDir}
|
[INFO] PublishDir: ${inps.PublishDir}
|
||||||
|
[INFO] DestinationDir: ${inps.DestinationDir}
|
||||||
[INFO] ExternalRepository: ${inps.ExternalRepository}
|
[INFO] ExternalRepository: ${inps.ExternalRepository}
|
||||||
[INFO] AllowEmptyCommit: ${inps.AllowEmptyCommit}
|
[INFO] AllowEmptyCommit: ${inps.AllowEmptyCommit}
|
||||||
[INFO] KeepFiles: ${inps.KeepFiles}
|
[INFO] KeepFiles: ${inps.KeepFiles}
|
||||||
@@ -52,6 +55,7 @@ function getInputsLog(authMethod: string, inps: Inputs): string {
|
|||||||
[INFO] TagMessage: ${inps.TagMessage}
|
[INFO] TagMessage: ${inps.TagMessage}
|
||||||
[INFO] EnableJekyll (DisableNoJekyll): ${inps.DisableNoJekyll}
|
[INFO] EnableJekyll (DisableNoJekyll): ${inps.DisableNoJekyll}
|
||||||
[INFO] CNAME: ${inps.CNAME}
|
[INFO] CNAME: ${inps.CNAME}
|
||||||
|
[INFO] ExcludeAssets ${inps.ExcludeAssets}
|
||||||
`;
|
`;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -107,6 +111,7 @@ describe('getInputs()', () => {
|
|||||||
expect(inps.PersonalToken).toMatch('');
|
expect(inps.PersonalToken).toMatch('');
|
||||||
expect(inps.PublishBranch).toMatch('gh-pages');
|
expect(inps.PublishBranch).toMatch('gh-pages');
|
||||||
expect(inps.PublishDir).toMatch('public');
|
expect(inps.PublishDir).toMatch('public');
|
||||||
|
expect(inps.DestinationDir).toMatch('');
|
||||||
expect(inps.ExternalRepository).toMatch('');
|
expect(inps.ExternalRepository).toMatch('');
|
||||||
expect(inps.AllowEmptyCommit).toBe(false);
|
expect(inps.AllowEmptyCommit).toBe(false);
|
||||||
expect(inps.KeepFiles).toBe(false);
|
expect(inps.KeepFiles).toBe(false);
|
||||||
@@ -119,6 +124,7 @@ describe('getInputs()', () => {
|
|||||||
expect(inps.TagMessage).toMatch('');
|
expect(inps.TagMessage).toMatch('');
|
||||||
expect(inps.DisableNoJekyll).toBe(false);
|
expect(inps.DisableNoJekyll).toBe(false);
|
||||||
expect(inps.CNAME).toMatch('');
|
expect(inps.CNAME).toMatch('');
|
||||||
|
expect(inps.ExcludeAssets).toMatch('.github');
|
||||||
});
|
});
|
||||||
|
|
||||||
test('get spec inputs', () => {
|
test('get spec inputs', () => {
|
||||||
@@ -127,6 +133,7 @@ describe('getInputs()', () => {
|
|||||||
process.env['INPUT_PERSONAL_TOKEN'] = 'test_personal_token';
|
process.env['INPUT_PERSONAL_TOKEN'] = 'test_personal_token';
|
||||||
process.env['INPUT_PUBLISH_BRANCH'] = 'master';
|
process.env['INPUT_PUBLISH_BRANCH'] = 'master';
|
||||||
process.env['INPUT_PUBLISH_DIR'] = 'out';
|
process.env['INPUT_PUBLISH_DIR'] = 'out';
|
||||||
|
process.env['INPUT_DESTINATION_DIR'] = 'subdir';
|
||||||
process.env['INPUT_EXTERNAL_REPOSITORY'] = 'user/repo';
|
process.env['INPUT_EXTERNAL_REPOSITORY'] = 'user/repo';
|
||||||
process.env['INPUT_ALLOW_EMPTY_COMMIT'] = 'true';
|
process.env['INPUT_ALLOW_EMPTY_COMMIT'] = 'true';
|
||||||
process.env['INPUT_KEEP_FILES'] = 'true';
|
process.env['INPUT_KEEP_FILES'] = 'true';
|
||||||
@@ -139,6 +146,7 @@ describe('getInputs()', () => {
|
|||||||
process.env['INPUT_TAG_MESSAGE'] = 'Deployment v1.2.3';
|
process.env['INPUT_TAG_MESSAGE'] = 'Deployment v1.2.3';
|
||||||
process.env['INPUT_DISABLE_NOJEKYLL'] = 'true';
|
process.env['INPUT_DISABLE_NOJEKYLL'] = 'true';
|
||||||
process.env['INPUT_CNAME'] = 'github.com';
|
process.env['INPUT_CNAME'] = 'github.com';
|
||||||
|
process.env['INPUT_EXCLUDE_ASSETS'] = '.github';
|
||||||
|
|
||||||
const inps: Inputs = getInputs();
|
const inps: Inputs = getInputs();
|
||||||
|
|
||||||
@@ -147,6 +155,7 @@ describe('getInputs()', () => {
|
|||||||
expect(inps.PersonalToken).toMatch('test_personal_token');
|
expect(inps.PersonalToken).toMatch('test_personal_token');
|
||||||
expect(inps.PublishBranch).toMatch('master');
|
expect(inps.PublishBranch).toMatch('master');
|
||||||
expect(inps.PublishDir).toMatch('out');
|
expect(inps.PublishDir).toMatch('out');
|
||||||
|
expect(inps.DestinationDir).toMatch('subdir');
|
||||||
expect(inps.ExternalRepository).toMatch('user/repo');
|
expect(inps.ExternalRepository).toMatch('user/repo');
|
||||||
expect(inps.AllowEmptyCommit).toBe(true);
|
expect(inps.AllowEmptyCommit).toBe(true);
|
||||||
expect(inps.KeepFiles).toBe(true);
|
expect(inps.KeepFiles).toBe(true);
|
||||||
@@ -159,6 +168,7 @@ describe('getInputs()', () => {
|
|||||||
expect(inps.TagMessage).toMatch('Deployment v1.2.3');
|
expect(inps.TagMessage).toMatch('Deployment v1.2.3');
|
||||||
expect(inps.DisableNoJekyll).toBe(true);
|
expect(inps.DisableNoJekyll).toBe(true);
|
||||||
expect(inps.CNAME).toMatch('github.com');
|
expect(inps.CNAME).toMatch('github.com');
|
||||||
|
expect(inps.ExcludeAssets).toMatch('.github');
|
||||||
});
|
});
|
||||||
|
|
||||||
test('get spec inputs enable_jekyll', () => {
|
test('get spec inputs enable_jekyll', () => {
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
import {getUserName, getUserEmail, setCommitAuthor, getCommitMessage} from '../src/git-utils';
|
import {
|
||||||
import {getWorkDirName, createWorkDir} from '../src/utils';
|
setRepo,
|
||||||
|
getUserName,
|
||||||
|
getUserEmail,
|
||||||
|
setCommitAuthor,
|
||||||
|
getCommitMessage
|
||||||
|
} from '../src/git-utils';
|
||||||
|
import {getInputs} from '../src/get-inputs';
|
||||||
|
import {Inputs} from '../src/interfaces';
|
||||||
|
import {getWorkDirName, createDir} from '../src/utils';
|
||||||
import {CmdResult} from '../src/interfaces';
|
import {CmdResult} from '../src/interfaces';
|
||||||
import * as exec from '@actions/exec';
|
import * as exec from '@actions/exec';
|
||||||
|
|
||||||
@@ -14,6 +22,36 @@ afterEach(() => {
|
|||||||
delete process.env['GITHUB_REPOSITORY'];
|
delete process.env['GITHUB_REPOSITORY'];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('setRepo()', () => {
|
||||||
|
test('throw error destination_dir should be a relative path', async () => {
|
||||||
|
process.env['INPUT_GITHUB_TOKEN'] = 'test_github_token';
|
||||||
|
process.env['INPUT_PUBLISH_BRANCH'] = 'gh-pages';
|
||||||
|
process.env['INPUT_PUBLISH_DIR'] = 'public';
|
||||||
|
process.env['INPUT_DESTINATION_DIR'] = '/subdir';
|
||||||
|
// process.env['INPUT_EXTERNAL_REPOSITORY'] = 'user/repo';
|
||||||
|
// process.env['INPUT_ALLOW_EMPTY_COMMIT'] = 'true';
|
||||||
|
// process.env['INPUT_KEEP_FILES'] = 'true';
|
||||||
|
// process.env['INPUT_FORCE_ORPHAN'] = 'true';
|
||||||
|
// process.env['INPUT_USER_NAME'] = 'username';
|
||||||
|
// process.env['INPUT_USER_EMAIL'] = 'github@github.com';
|
||||||
|
// process.env['INPUT_COMMIT_MESSAGE'] = 'feat: Add new feature';
|
||||||
|
// process.env['INPUT_FULL_COMMIT_MESSAGE'] = 'feat: Add new feature';
|
||||||
|
// process.env['INPUT_TAG_NAME'] = 'deploy-v1.2.3';
|
||||||
|
// process.env['INPUT_TAG_MESSAGE'] = 'Deployment v1.2.3';
|
||||||
|
// process.env['INPUT_DISABLE_NOJEKYLL'] = 'true';
|
||||||
|
// process.env['INPUT_CNAME'] = 'github.com';
|
||||||
|
process.env['INPUT_EXCLUDE_ASSETS'] = '.github';
|
||||||
|
const inps: Inputs = getInputs();
|
||||||
|
const remoteURL = 'https://x-access-token:pat@github.com/actions/pages.git';
|
||||||
|
const date = new Date();
|
||||||
|
const unixTime = date.getTime();
|
||||||
|
const workDir = await getWorkDirName(`${unixTime}`);
|
||||||
|
await expect(setRepo(inps, remoteURL, workDir)).rejects.toThrowError(
|
||||||
|
'destination_dir should be a relative path'
|
||||||
|
);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
describe('getUserName()', () => {
|
describe('getUserName()', () => {
|
||||||
test('get default git user name', () => {
|
test('get default git user name', () => {
|
||||||
const userName = '';
|
const userName = '';
|
||||||
@@ -51,7 +89,7 @@ describe('setCommitAuthor()', () => {
|
|||||||
})();
|
})();
|
||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
await createWorkDir(workDirName);
|
await createDir(workDirName);
|
||||||
process.chdir(workDirName);
|
process.chdir(workDirName);
|
||||||
await exec.exec('git', ['init']);
|
await exec.exec('git', ['init']);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -47,6 +47,32 @@ describe('setGithubToken()', () => {
|
|||||||
expect(test).toMatch(expected);
|
expect(test).toMatch(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('return remote url with GITHUB_TOKEN gh-pages (RegExp)', () => {
|
||||||
|
const expected = 'https://x-access-token:GITHUB_TOKEN@github.com/owner/repo.git';
|
||||||
|
const test = setGithubToken(
|
||||||
|
'GITHUB_TOKEN',
|
||||||
|
'owner/repo',
|
||||||
|
'gh-pages',
|
||||||
|
'',
|
||||||
|
'refs/heads/gh-pages-base',
|
||||||
|
'push'
|
||||||
|
);
|
||||||
|
expect(test).toMatch(expected);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('throw error gh-pages-base to gh-pages-base (RegExp)', () => {
|
||||||
|
expect(() => {
|
||||||
|
setGithubToken(
|
||||||
|
'GITHUB_TOKEN',
|
||||||
|
'owner/repo',
|
||||||
|
'gh-pages-base',
|
||||||
|
'',
|
||||||
|
'refs/heads/gh-pages-base',
|
||||||
|
'push'
|
||||||
|
);
|
||||||
|
}).toThrowError('You deploy from gh-pages-base to gh-pages-base');
|
||||||
|
});
|
||||||
|
|
||||||
test('throw error master to master', () => {
|
test('throw error master to master', () => {
|
||||||
expect(() => {
|
expect(() => {
|
||||||
setGithubToken('GITHUB_TOKEN', 'owner/repo', 'master', '', 'refs/heads/master', 'push');
|
setGithubToken('GITHUB_TOKEN', 'owner/repo', 'master', '', 'refs/heads/master', 'push');
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import fs from 'fs';
|
|||||||
import {
|
import {
|
||||||
getHomeDir,
|
getHomeDir,
|
||||||
getWorkDirName,
|
getWorkDirName,
|
||||||
createWorkDir,
|
createDir,
|
||||||
addNoJekyll,
|
addNoJekyll,
|
||||||
addCNAME,
|
addCNAME,
|
||||||
skipOnFork
|
skipOnFork
|
||||||
@@ -51,11 +51,11 @@ describe('getWorkDirName()', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('createWorkDir()', () => {
|
describe('createDir()', () => {
|
||||||
test('create work directory', async () => {
|
test('create a directory', async () => {
|
||||||
const unixTime = await getTime();
|
const unixTime = await getTime();
|
||||||
const workDirName = await getWorkDirName(`${unixTime}`);
|
const workDirName = await getWorkDirName(`${unixTime}`);
|
||||||
await createWorkDir(workDirName);
|
await createDir(workDirName);
|
||||||
const test = fs.existsSync(workDirName);
|
const test = fs.existsSync(workDirName);
|
||||||
expect(test).toBe(true);
|
expect(test).toBe(true);
|
||||||
});
|
});
|
||||||
@@ -65,33 +65,19 @@ async function getWorkDir(): Promise<string> {
|
|||||||
const unixTime = await getTime();
|
const unixTime = await getTime();
|
||||||
let workDir = '';
|
let workDir = '';
|
||||||
workDir = await getWorkDirName(`${unixTime}`);
|
workDir = await getWorkDirName(`${unixTime}`);
|
||||||
await createWorkDir(workDir);
|
await createDir(workDir);
|
||||||
return workDir;
|
return workDir;
|
||||||
}
|
}
|
||||||
|
|
||||||
describe('addNoJekyll()', () => {
|
describe('addNoJekyll()', () => {
|
||||||
test('add .nojekyll gh-pages', async () => {
|
test('add .nojekyll', async () => {
|
||||||
let workDir = '';
|
let workDir = '';
|
||||||
(async (): Promise<void> => {
|
(async (): Promise<void> => {
|
||||||
workDir = await getWorkDir();
|
workDir = await getWorkDir();
|
||||||
})();
|
})();
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
const filepath = path.join(workDir, '.nojekyll');
|
||||||
|
|
||||||
await addNoJekyll(workDir, false, 'gh-pages');
|
await addNoJekyll(workDir, false);
|
||||||
const test = fs.existsSync(filepath);
|
|
||||||
expect(test).toBe(true);
|
|
||||||
|
|
||||||
fs.unlinkSync(filepath);
|
|
||||||
});
|
|
||||||
|
|
||||||
test('add .nojekyll master', async () => {
|
|
||||||
let workDir = '';
|
|
||||||
(async (): Promise<void> => {
|
|
||||||
workDir = await getWorkDir();
|
|
||||||
})();
|
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
|
||||||
|
|
||||||
await addNoJekyll(workDir, false, 'master');
|
|
||||||
const test = fs.existsSync(filepath);
|
const test = fs.existsSync(filepath);
|
||||||
expect(test).toBe(true);
|
expect(test).toBe(true);
|
||||||
|
|
||||||
@@ -106,57 +92,21 @@ describe('addNoJekyll()', () => {
|
|||||||
const filepath = path.join(workDir, '.nojekyll');
|
const filepath = path.join(workDir, '.nojekyll');
|
||||||
fs.closeSync(fs.openSync(filepath, 'w'));
|
fs.closeSync(fs.openSync(filepath, 'w'));
|
||||||
|
|
||||||
await addNoJekyll(workDir, false, 'master');
|
await addNoJekyll(workDir, false);
|
||||||
const test = fs.existsSync(filepath);
|
const test = fs.existsSync(filepath);
|
||||||
expect(test).toBe(true);
|
expect(test).toBe(true);
|
||||||
|
|
||||||
fs.unlinkSync(filepath);
|
fs.unlinkSync(filepath);
|
||||||
});
|
});
|
||||||
|
|
||||||
test('not add .nojekyll disable_nojekyll gh-pages', async () => {
|
test('not add .nojekyll disable_nojekyll', async () => {
|
||||||
let workDir = '';
|
let workDir = '';
|
||||||
(async (): Promise<void> => {
|
(async (): Promise<void> => {
|
||||||
workDir = await getWorkDir();
|
workDir = await getWorkDir();
|
||||||
})();
|
})();
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
const filepath = path.join(workDir, '.nojekyll');
|
||||||
|
|
||||||
await addNoJekyll(workDir, true, 'gh-pages');
|
await addNoJekyll(workDir, true);
|
||||||
const test = fs.existsSync(filepath);
|
|
||||||
expect(test).toBe(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
test('not add .nojekyll disable_nojekyll master', async () => {
|
|
||||||
let workDir = '';
|
|
||||||
(async (): Promise<void> => {
|
|
||||||
workDir = await getWorkDir();
|
|
||||||
})();
|
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
|
||||||
|
|
||||||
await addNoJekyll(workDir, true, 'master');
|
|
||||||
const test = fs.existsSync(filepath);
|
|
||||||
expect(test).toBe(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
test('not add .nojekyll other-branch', async () => {
|
|
||||||
let workDir = '';
|
|
||||||
(async (): Promise<void> => {
|
|
||||||
workDir = await getWorkDir();
|
|
||||||
})();
|
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
|
||||||
|
|
||||||
await addNoJekyll(workDir, false, 'other-branch');
|
|
||||||
const test = fs.existsSync(filepath);
|
|
||||||
expect(test).toBe(false);
|
|
||||||
});
|
|
||||||
|
|
||||||
test('not add .nojekyll disable_nojekyll other-branch', async () => {
|
|
||||||
let workDir = '';
|
|
||||||
(async (): Promise<void> => {
|
|
||||||
workDir = await getWorkDir();
|
|
||||||
})();
|
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
|
||||||
|
|
||||||
await addNoJekyll(workDir, true, 'other-branch');
|
|
||||||
const test = fs.existsSync(filepath);
|
const test = fs.existsSync(filepath);
|
||||||
expect(test).toBe(false);
|
expect(test).toBe(false);
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -25,6 +25,10 @@ inputs:
|
|||||||
description: 'Set an input directory for deployment.'
|
description: 'Set an input directory for deployment.'
|
||||||
required: false
|
required: false
|
||||||
default: 'public'
|
default: 'public'
|
||||||
|
destination_dir:
|
||||||
|
description: 'Set an destination subdirectory for deployment.'
|
||||||
|
required: false
|
||||||
|
default: ''
|
||||||
external_repository:
|
external_repository:
|
||||||
description: 'Set an external repository (owner/repo).'
|
description: 'Set an external repository (owner/repo).'
|
||||||
required: false
|
required: false
|
||||||
@@ -69,3 +73,7 @@ inputs:
|
|||||||
cname:
|
cname:
|
||||||
description: 'Set custom domain'
|
description: 'Set custom domain'
|
||||||
required: false
|
required: false
|
||||||
|
exclude_assets:
|
||||||
|
description: 'Set files or directories to exclude from a publish directory.'
|
||||||
|
required: false
|
||||||
|
default: '.github'
|
||||||
|
|||||||
16
docker-compose.yml
Normal file
16
docker-compose.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
version: '3.2'
|
||||||
|
|
||||||
|
services:
|
||||||
|
dev:
|
||||||
|
image: 'docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest'
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
cache_from:
|
||||||
|
- 'docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest'
|
||||||
|
container_name: peaceiris_actions_github_pages
|
||||||
|
volumes:
|
||||||
|
- ${PWD}:/repo
|
||||||
|
stdin_open: true
|
||||||
|
tty: true
|
||||||
|
command:
|
||||||
|
- bash
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 43 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 54 KiB |
File diff suppressed because one or more lines are too long
5616
package-lock.json
generated
5616
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
41
package.json
41
package.json
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "actions-github-pages",
|
"name": "actions-github-pages",
|
||||||
"version": "3.6.2",
|
"version": "3.7.2",
|
||||||
"description": "GitHub Actions for GitHub Pages",
|
"description": "GitHub Actions for GitHub Pages",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"engines": {
|
"engines": {
|
||||||
@@ -54,30 +54,33 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://github.com/peaceiris/actions-gh-pages#readme",
|
"homepage": "https://github.com/peaceiris/actions-gh-pages#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "^1.2.4",
|
"@actions/core": "^1.2.6",
|
||||||
"@actions/exec": "^1.0.4",
|
"@actions/exec": "^1.0.4",
|
||||||
"@actions/github": "^4.0.0",
|
"@actions/github": "^4.0.0",
|
||||||
"@actions/io": "^1.0.2"
|
"@actions/glob": "^0.1.0",
|
||||||
|
"@actions/io": "^1.0.2",
|
||||||
|
"@types/shelljs": "^0.8.8",
|
||||||
|
"shelljs": "^0.8.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/jest": "^26.0.4",
|
"@types/jest": "^26.0.14",
|
||||||
"@types/js-yaml": "^3.12.4",
|
"@types/js-yaml": "^3.12.5",
|
||||||
"@types/node": "~12",
|
"@types/node": "~12",
|
||||||
"@typescript-eslint/eslint-plugin": "^2.34.0",
|
"@typescript-eslint/eslint-plugin": "^4.4.0",
|
||||||
"@typescript-eslint/parser": "^2.34.0",
|
"@typescript-eslint/parser": "^4.4.0",
|
||||||
"@zeit/ncc": "^0.22.3",
|
"@vercel/ncc": "^0.24.1",
|
||||||
"eslint": "^6.8.0",
|
"eslint": "^7.11.0",
|
||||||
"eslint-config-prettier": "^6.11.0",
|
"eslint-config-prettier": "^6.12.0",
|
||||||
"eslint-plugin-jest": "^23.18.0",
|
"eslint-plugin-jest": "^24.1.0",
|
||||||
"eslint-plugin-prettier": "^3.1.4",
|
"eslint-plugin-prettier": "^3.1.4",
|
||||||
"husky": "^4.2.5",
|
"husky": "^4.3.0",
|
||||||
"jest": "^25.5.4",
|
"jest": "^26.5.3",
|
||||||
"jest-circus": "^26.1.0",
|
"jest-circus": "^26.5.3",
|
||||||
"js-yaml": "^3.14.0",
|
"js-yaml": "^3.14.0",
|
||||||
"lint-staged": "^10.2.11",
|
"lint-staged": "^10.4.0",
|
||||||
"prettier": "2.0.5",
|
"prettier": "2.1.2",
|
||||||
"standard-version": "^8.0.0",
|
"standard-version": "^9.0.0",
|
||||||
"ts-jest": "^25.5.1",
|
"ts-jest": "^26.4.1",
|
||||||
"typescript": "^3.9.6"
|
"typescript": "^4.0.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
16
release.sh
16
release.sh
@@ -3,9 +3,11 @@
|
|||||||
# fail on unset variables and command errors
|
# fail on unset variables and command errors
|
||||||
set -eu -o pipefail # -x: is for debugging
|
set -eu -o pipefail # -x: is for debugging
|
||||||
|
|
||||||
|
DEFAULT_BRANCH="main"
|
||||||
|
|
||||||
CURRENT_BRANCH="$(git branch --show-current)"
|
CURRENT_BRANCH="$(git branch --show-current)"
|
||||||
if [ "${CURRENT_BRANCH}" != "master" ]; then
|
if [ "${CURRENT_BRANCH}" != "${DEFAULT_BRANCH}" ]; then
|
||||||
echo "$0: Current branch ${CURRENT_BRANCH} is not master, continue? (y/n)"
|
echo "$0: Current branch ${CURRENT_BRANCH} is not ${DEFAULT_BRANCH}, continue? (y/n)"
|
||||||
read -r res
|
read -r res
|
||||||
if [ "${res}" = "n" ]; then
|
if [ "${res}" = "n" ]; then
|
||||||
echo "$0: Stop script"
|
echo "$0: Stop script"
|
||||||
@@ -14,7 +16,7 @@ if [ "${CURRENT_BRANCH}" != "master" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
PRERELEASE_TYPE_LIST="prerelease prepatch preminor premajor"
|
PRERELEASE_TYPE_LIST="prerelease prepatch preminor premajor"
|
||||||
if [ "${CURRENT_BRANCH}" != "master" ]; then
|
if [ "${CURRENT_BRANCH}" != "${DEFAULT_BRANCH}" ]; then
|
||||||
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST}"
|
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST}"
|
||||||
else
|
else
|
||||||
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST} patch minor major"
|
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST} patch minor major"
|
||||||
@@ -37,10 +39,10 @@ if [ "${res}" = "n" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
git fetch origin
|
git fetch origin
|
||||||
if [ "${CURRENT_BRANCH}" != "master" ]; then
|
if [ "${CURRENT_BRANCH}" != "${DEFAULT_BRANCH}" ]; then
|
||||||
git pull origin "${CURRENT_BRANCH}"
|
git pull origin "${CURRENT_BRANCH}"
|
||||||
else
|
else
|
||||||
git pull origin master
|
git pull origin ${DEFAULT_BRANCH}
|
||||||
git tag -d v3 || true
|
git tag -d v3 || true
|
||||||
git pull origin --tags
|
git pull origin --tags
|
||||||
fi
|
fi
|
||||||
@@ -58,10 +60,10 @@ git rm ./lib/index.js
|
|||||||
rm -rf ./lib
|
rm -rf ./lib
|
||||||
git commit -m "chore(release): Remove build assets [skip ci]"
|
git commit -m "chore(release): Remove build assets [skip ci]"
|
||||||
|
|
||||||
if [ "${CURRENT_BRANCH}" != "master" ]; then
|
if [ "${CURRENT_BRANCH}" != "${DEFAULT_BRANCH}" ]; then
|
||||||
git push origin "${CURRENT_BRANCH}"
|
git push origin "${CURRENT_BRANCH}"
|
||||||
else
|
else
|
||||||
git push origin master
|
git push origin ${DEFAULT_BRANCH}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
TAG_NAME="v$(jq -r '.version' ./package.json)"
|
TAG_NAME="v$(jq -r '.version' ./package.json)"
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ export function showInputs(inps: Inputs): void {
|
|||||||
[INFO] ${authMethod}: true
|
[INFO] ${authMethod}: true
|
||||||
[INFO] PublishBranch: ${inps.PublishBranch}
|
[INFO] PublishBranch: ${inps.PublishBranch}
|
||||||
[INFO] PublishDir: ${inps.PublishDir}
|
[INFO] PublishDir: ${inps.PublishDir}
|
||||||
|
[INFO] DestinationDir: ${inps.DestinationDir}
|
||||||
[INFO] ExternalRepository: ${inps.ExternalRepository}
|
[INFO] ExternalRepository: ${inps.ExternalRepository}
|
||||||
[INFO] AllowEmptyCommit: ${inps.AllowEmptyCommit}
|
[INFO] AllowEmptyCommit: ${inps.AllowEmptyCommit}
|
||||||
[INFO] KeepFiles: ${inps.KeepFiles}
|
[INFO] KeepFiles: ${inps.KeepFiles}
|
||||||
@@ -27,6 +28,7 @@ export function showInputs(inps: Inputs): void {
|
|||||||
[INFO] TagMessage: ${inps.TagMessage}
|
[INFO] TagMessage: ${inps.TagMessage}
|
||||||
[INFO] EnableJekyll (DisableNoJekyll): ${inps.DisableNoJekyll}
|
[INFO] EnableJekyll (DisableNoJekyll): ${inps.DisableNoJekyll}
|
||||||
[INFO] CNAME: ${inps.CNAME}
|
[INFO] CNAME: ${inps.CNAME}
|
||||||
|
[INFO] ExcludeAssets ${inps.ExcludeAssets}
|
||||||
`);
|
`);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -52,6 +54,7 @@ export function getInputs(): Inputs {
|
|||||||
PersonalToken: core.getInput('personal_token'),
|
PersonalToken: core.getInput('personal_token'),
|
||||||
PublishBranch: core.getInput('publish_branch'),
|
PublishBranch: core.getInput('publish_branch'),
|
||||||
PublishDir: core.getInput('publish_dir'),
|
PublishDir: core.getInput('publish_dir'),
|
||||||
|
DestinationDir: core.getInput('destination_dir'),
|
||||||
ExternalRepository: core.getInput('external_repository'),
|
ExternalRepository: core.getInput('external_repository'),
|
||||||
AllowEmptyCommit: (core.getInput('allow_empty_commit') || 'false').toUpperCase() === 'TRUE',
|
AllowEmptyCommit: (core.getInput('allow_empty_commit') || 'false').toUpperCase() === 'TRUE',
|
||||||
KeepFiles: (core.getInput('keep_files') || 'false').toUpperCase() === 'TRUE',
|
KeepFiles: (core.getInput('keep_files') || 'false').toUpperCase() === 'TRUE',
|
||||||
@@ -63,7 +66,8 @@ export function getInputs(): Inputs {
|
|||||||
TagName: core.getInput('tag_name'),
|
TagName: core.getInput('tag_name'),
|
||||||
TagMessage: core.getInput('tag_message'),
|
TagMessage: core.getInput('tag_message'),
|
||||||
DisableNoJekyll: useBuiltinJekyll,
|
DisableNoJekyll: useBuiltinJekyll,
|
||||||
CNAME: core.getInput('cname')
|
CNAME: core.getInput('cname'),
|
||||||
|
ExcludeAssets: core.getInput('exclude_assets')
|
||||||
};
|
};
|
||||||
|
|
||||||
return inps;
|
return inps;
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as exec from '@actions/exec';
|
import * as exec from '@actions/exec';
|
||||||
import * as io from '@actions/io';
|
import * as io from '@actions/io';
|
||||||
|
import * as glob from '@actions/glob';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import {Inputs, CmdResult} from './interfaces';
|
import {Inputs, CmdResult} from './interfaces';
|
||||||
import {createWorkDir} from './utils';
|
import {createDir} from './utils';
|
||||||
|
import {cp} from 'shelljs';
|
||||||
|
|
||||||
export async function createBranchForce(branch: string): Promise<void> {
|
export async function createBranchForce(branch: string): Promise<void> {
|
||||||
await exec.exec('git', ['init']);
|
await exec.exec('git', ['init']);
|
||||||
@@ -12,31 +14,73 @@ export async function createBranchForce(branch: string): Promise<void> {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function copyAssets(publishDir: string, workDir: string): Promise<void> {
|
export async function deleteExcludedAssets(destDir: string, excludeAssets: string): Promise<void> {
|
||||||
const copyOpts = {recursive: true, force: true};
|
core.info(`[INFO] delete excluded assets`);
|
||||||
const files = fs.readdirSync(publishDir);
|
const excludedAssetNames: Array<string> = excludeAssets.split(',');
|
||||||
core.debug(`${files}`);
|
const excludedAssetPaths = ((): Array<string> => {
|
||||||
for await (const file of files) {
|
const paths: Array<string> = [];
|
||||||
if (file.endsWith('.git') || file.endsWith('.github')) {
|
for (const pattern of excludedAssetNames) {
|
||||||
continue;
|
paths.push(path.join(destDir, pattern));
|
||||||
}
|
}
|
||||||
const filePath = path.join(publishDir, file);
|
return paths;
|
||||||
await io.cp(filePath, `${workDir}/`, copyOpts);
|
})();
|
||||||
core.info(`[INFO] copy ${file}`);
|
const globber = await glob.create(excludedAssetPaths.join('\n'));
|
||||||
|
for await (const asset of globber.globGenerator()) {
|
||||||
|
core.info(`[INFO] delete ${asset}`);
|
||||||
|
io.rmRF(asset);
|
||||||
}
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function copyAssets(
|
||||||
|
publishDir: string,
|
||||||
|
destDir: string,
|
||||||
|
excludeAssets: string
|
||||||
|
): Promise<void> {
|
||||||
|
core.info(`[INFO] prepare publishing assets`);
|
||||||
|
|
||||||
|
if (fs.existsSync(destDir) === false) {
|
||||||
|
core.info(`[INFO] create ${destDir}`);
|
||||||
|
await createDir(destDir);
|
||||||
|
}
|
||||||
|
|
||||||
|
const dotGitPath = path.join(publishDir, '.git');
|
||||||
|
if (fs.existsSync(dotGitPath)) {
|
||||||
|
core.info(`[INFO] delete .git`);
|
||||||
|
io.rmRF(dotGitPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
core.info(`[INFO] copy ${publishDir} to ${destDir}`);
|
||||||
|
cp('-RfL', [`${publishDir}/*`, `${publishDir}/.*`], destDir);
|
||||||
|
|
||||||
|
await deleteExcludedAssets(destDir, excludeAssets);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function setRepo(inps: Inputs, remoteURL: string, workDir: string): Promise<void> {
|
export async function setRepo(inps: Inputs, remoteURL: string, workDir: string): Promise<void> {
|
||||||
const publishDir = path.join(`${process.env.GITHUB_WORKSPACE}`, inps.PublishDir);
|
const publishDir = path.isAbsolute(inps.PublishDir)
|
||||||
|
? inps.PublishDir
|
||||||
|
: path.join(`${process.env.GITHUB_WORKSPACE}`, inps.PublishDir);
|
||||||
|
|
||||||
|
if (path.isAbsolute(inps.DestinationDir)) {
|
||||||
|
throw new Error('destination_dir should be a relative path');
|
||||||
|
}
|
||||||
|
const destDir = ((): string => {
|
||||||
|
if (inps.DestinationDir === '') {
|
||||||
|
return workDir;
|
||||||
|
} else {
|
||||||
|
return path.join(workDir, inps.DestinationDir);
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
|
||||||
core.info(`[INFO] ForceOrphan: ${inps.ForceOrphan}`);
|
core.info(`[INFO] ForceOrphan: ${inps.ForceOrphan}`);
|
||||||
if (inps.ForceOrphan) {
|
if (inps.ForceOrphan) {
|
||||||
await createWorkDir(workDir);
|
await createDir(destDir);
|
||||||
|
core.info(`[INFO] chdir ${workDir}`);
|
||||||
process.chdir(workDir);
|
process.chdir(workDir);
|
||||||
await createBranchForce(inps.PublishBranch);
|
await createBranchForce(inps.PublishBranch);
|
||||||
await copyAssets(publishDir, workDir);
|
await copyAssets(publishDir, destDir, inps.ExcludeAssets);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -59,25 +103,32 @@ export async function setRepo(inps: Inputs, remoteURL: string, workDir: string):
|
|||||||
options
|
options
|
||||||
);
|
);
|
||||||
if (result.exitcode === 0) {
|
if (result.exitcode === 0) {
|
||||||
process.chdir(workDir);
|
await createDir(destDir);
|
||||||
|
|
||||||
if (inps.KeepFiles) {
|
if (inps.KeepFiles) {
|
||||||
core.info('[INFO] Keep existing files');
|
core.info('[INFO] Keep existing files');
|
||||||
} else {
|
} else {
|
||||||
|
core.info(`[INFO] clean up ${destDir}`);
|
||||||
|
core.info(`[INFO] chdir ${destDir}`);
|
||||||
|
process.chdir(destDir);
|
||||||
await exec.exec('git', ['rm', '-r', '--ignore-unmatch', '*']);
|
await exec.exec('git', ['rm', '-r', '--ignore-unmatch', '*']);
|
||||||
}
|
}
|
||||||
|
|
||||||
await copyAssets(publishDir, workDir);
|
core.info(`[INFO] chdir ${workDir}`);
|
||||||
|
process.chdir(workDir);
|
||||||
|
await copyAssets(publishDir, destDir, inps.ExcludeAssets);
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
throw new Error(`Failed to clone remote branch ${inps.PublishBranch}`);
|
throw new Error(`Failed to clone remote branch ${inps.PublishBranch}`);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
core.info(`[INFO] first deployment, create new branch ${inps.PublishBranch}`);
|
core.info(`[INFO] first deployment, create new branch ${inps.PublishBranch}`);
|
||||||
core.info(e.message);
|
core.info(`[INFO] ${e.message}`);
|
||||||
await createWorkDir(workDir);
|
await createDir(destDir);
|
||||||
|
core.info(`[INFO] chdir ${workDir}`);
|
||||||
process.chdir(workDir);
|
process.chdir(workDir);
|
||||||
await createBranchForce(inps.PublishBranch);
|
await createBranchForce(inps.PublishBranch);
|
||||||
await copyAssets(publishDir, workDir);
|
await copyAssets(publishDir, destDir, inps.ExcludeAssets);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ export interface Inputs {
|
|||||||
readonly PersonalToken: string;
|
readonly PersonalToken: string;
|
||||||
readonly PublishBranch: string;
|
readonly PublishBranch: string;
|
||||||
readonly PublishDir: string;
|
readonly PublishDir: string;
|
||||||
|
readonly DestinationDir: string;
|
||||||
readonly ExternalRepository: string;
|
readonly ExternalRepository: string;
|
||||||
readonly AllowEmptyCommit: boolean;
|
readonly AllowEmptyCommit: boolean;
|
||||||
readonly KeepFiles: boolean;
|
readonly KeepFiles: boolean;
|
||||||
@@ -16,6 +17,7 @@ export interface Inputs {
|
|||||||
readonly TagMessage: string;
|
readonly TagMessage: string;
|
||||||
readonly DisableNoJekyll: boolean;
|
readonly DisableNoJekyll: boolean;
|
||||||
readonly CNAME: string;
|
readonly CNAME: string;
|
||||||
|
readonly ExcludeAssets: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CmdResult {
|
export interface CmdResult {
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ import {getWorkDirName, addNoJekyll, addCNAME, skipOnFork} from './utils';
|
|||||||
|
|
||||||
export async function run(): Promise<void> {
|
export async function run(): Promise<void> {
|
||||||
try {
|
try {
|
||||||
|
core.info('[INFO] Usage https://github.com/peaceiris/actions-gh-pages#readme');
|
||||||
|
|
||||||
const inps: Inputs = getInputs();
|
const inps: Inputs = getInputs();
|
||||||
core.startGroup('Dump inputs');
|
core.startGroup('Dump inputs');
|
||||||
showInputs(inps);
|
showInputs(inps);
|
||||||
@@ -48,7 +50,7 @@ export async function run(): Promise<void> {
|
|||||||
const unixTime = date.getTime();
|
const unixTime = date.getTime();
|
||||||
const workDir = await getWorkDirName(`${unixTime}`);
|
const workDir = await getWorkDirName(`${unixTime}`);
|
||||||
await setRepo(inps, remoteURL, workDir);
|
await setRepo(inps, remoteURL, workDir);
|
||||||
await addNoJekyll(workDir, inps.DisableNoJekyll, inps.PublishBranch);
|
await addNoJekyll(workDir, inps.DisableNoJekyll);
|
||||||
await addCNAME(workDir, inps.CNAME);
|
await addCNAME(workDir, inps.CNAME);
|
||||||
core.endGroup();
|
core.endGroup();
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,9 @@ import * as github from '@actions/github';
|
|||||||
import * as io from '@actions/io';
|
import * as io from '@actions/io';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||||
const cpSpawnSync = require('child_process').spawnSync;
|
const cpSpawnSync = require('child_process').spawnSync;
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||||
const cpexec = require('child_process').execFileSync;
|
const cpexec = require('child_process').execFileSync;
|
||||||
import {Inputs} from './interfaces';
|
import {Inputs} from './interfaces';
|
||||||
import {getHomeDir} from './utils';
|
import {getHomeDir} from './utils';
|
||||||
@@ -83,9 +85,12 @@ Use deploy_key or personal_token.
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (eventName === 'push') {
|
if (eventName === 'push') {
|
||||||
isProhibitedBranch = ref.includes(`refs/heads/${publishBranch}`);
|
isProhibitedBranch = ref.match(new RegExp(`^refs/heads/${publishBranch}$`)) !== null;
|
||||||
if (isProhibitedBranch) {
|
if (isProhibitedBranch) {
|
||||||
throw new Error(`You deploy from ${publishBranch} to ${publishBranch}`);
|
throw new Error(`\
|
||||||
|
You deploy from ${publishBranch} to ${publishBranch}
|
||||||
|
This operation is prohibited to protect your contents
|
||||||
|
`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
26
src/utils.ts
26
src/utils.ts
@@ -23,28 +23,22 @@ export async function getWorkDirName(unixTime: string): Promise<string> {
|
|||||||
return workDirName;
|
return workDirName;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function createWorkDir(workDirName: string): Promise<void> {
|
export async function createDir(dirPath: string): Promise<void> {
|
||||||
await io.mkdirP(workDirName);
|
await io.mkdirP(dirPath);
|
||||||
core.debug(`Created: ${workDirName}`);
|
core.debug(`Created directory ${dirPath}`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function addNoJekyll(
|
export async function addNoJekyll(workDir: string, DisableNoJekyll: boolean): Promise<void> {
|
||||||
workDir: string,
|
|
||||||
DisableNoJekyll: boolean,
|
|
||||||
PublishBranch: string
|
|
||||||
): Promise<void> {
|
|
||||||
if (DisableNoJekyll) {
|
if (DisableNoJekyll) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (PublishBranch === 'master' || PublishBranch === 'gh-pages') {
|
const filepath = path.join(workDir, '.nojekyll');
|
||||||
const filepath = path.join(workDir, '.nojekyll');
|
if (fs.existsSync(filepath)) {
|
||||||
if (fs.existsSync(filepath)) {
|
return;
|
||||||
return;
|
|
||||||
}
|
|
||||||
fs.closeSync(fs.openSync(filepath, 'w'));
|
|
||||||
core.info(`[INFO] Created ${filepath}`);
|
|
||||||
}
|
}
|
||||||
|
fs.closeSync(fs.openSync(filepath, 'w'));
|
||||||
|
core.info(`[INFO] Created ${filepath}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function addCNAME(workDir: string, content: string): Promise<void> {
|
export async function addCNAME(workDir: string, content: string): Promise<void> {
|
||||||
@@ -53,7 +47,7 @@ export async function addCNAME(workDir: string, content: string): Promise<void>
|
|||||||
}
|
}
|
||||||
const filepath = path.join(workDir, 'CNAME');
|
const filepath = path.join(workDir, 'CNAME');
|
||||||
if (fs.existsSync(filepath)) {
|
if (fs.existsSync(filepath)) {
|
||||||
core.warning(`CNAME already exists, skip adding CNAME`);
|
core.info(`CNAME already exists, skip adding CNAME`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
fs.writeFileSync(filepath, content + '\n');
|
fs.writeFileSync(filepath, content + '\n');
|
||||||
|
|||||||
Reference in New Issue
Block a user