Compare commits

..

No commits in common. "main" and "v3.8.0" have entirely different histories.
main ... v3.8.0

43 changed files with 10183 additions and 5182 deletions

View File

@ -0,0 +1,36 @@
---
name: User Support
about: Questions for this Action
title: 'sample_title'
labels: support
assignees: peaceiris
---
<!-- Note that an issue which does not follow the template will be closed silently. -->
### Check list before opening this issue
- [ ] I read the latest README
- I checked [Available Options](https://github.com/peaceiris/actions-gh-pages#options)
- I followed [Tips and FAQ](https://github.com/peaceiris/actions-gh-pages#tips-and-faq)
- I tried [Workflow Examples](https://github.com/peaceiris/actions-gh-pages#examples)
- I read the latest GitHub Actions official documentation and learned the basic spec and concepts
### Describe your question
<!-- A clear and concise description of what the question is. -->
### Link to your contents
<!--
- Link to your public repository here
- Link to your workflow here
-->
### Screenshots
<!-- If applicable, add screenshots to help explain your question. -->
### Additional context
<!-- Add any other context about the problem here. -->

View File

@ -1,52 +0,0 @@
name: User Support
description: Questions for this action
title: "support: "
labels: support
assignees: peaceiris
body:
- type: markdown
attributes:
value:
Please note we will close your issue without comment if you do not fill out the issue checklist below and provide ALL the requested information.
- type: checkboxes
attributes:
label: Checklist
description: Checklist before creating an issue.
options:
- label: "I am using the latest version of this action."
required: true
- label: "I have read the latest README and followed the instructions."
required: true
- label: "I have read the latest GitHub Actions official documentation and learned the basic spec and concepts."
required: true
- type: textarea
attributes:
label: Describe your question
description: A clear and concise description of what the question is.
validations:
required: true
- type: textarea
attributes:
label: Relevant links
description:
Links to your public repository, YAML config file, and YAML workflow file.
Please use [a permanent link](https://docs.github.com/en/github/managing-files-in-a-repository/managing-files-on-github/getting-permanent-links-to-files), not a default branch.
render: markdown
value: |
Public repository:
YAML config:
YAML workflow:
validations:
required: true
- type: textarea
attributes:
label: Relevant log output
description: Copy and paste any relevant log output here.
validations:
required: false
- type: textarea
attributes:
label: Additional context.
description: Write any other context about the question here.
validations:
required: false

44
.github/ISSUE_TEMPLATE/2_bug_report.md vendored Normal file
View File

@ -0,0 +1,44 @@
---
name: Bug Report
about: First, use the User Support Issue Template
title: 'sample_title'
labels: bug
assignees: peaceiris
---
<!-- Note that an issue which does not follow the template will be closed silently. -->
### Describe the bug
<!-- A clear and concise description of what the bug is. -->
### To Reproduce
<!--
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
-->
### Expected behavior
<!-- A clear and concise description of what you expected to happen. -->
### Screenshots
<!-- If applicable, add screenshots to help explain your problem. -->
### Your YAML file
<!--
- A link to your repository
- A link to your YAML file
-->
### Additional context
<!-- Add any other context about the problem here. -->

View File

@ -1,52 +0,0 @@
name: Bug Report
description: Try the User Support Issue Template first.
title: 'bug: '
labels: bug
assignees: peaceiris
body:
- type: markdown
attributes:
value:
Please note we will close your issue without comment if you do not fill out the issue checklist below and provide ALL the requested information.
- type: checkboxes
attributes:
label: Checklist
description: Checklist before creating an issue.
options:
- label: "I am using the latest version of this action."
required: true
- label: "I have read the latest README and followed the instructions."
required: true
- label: "I have read the latest GitHub Actions official documentation and learned the basic spec and concepts."
required: true
- type: textarea
attributes:
label: "Describe the bug"
description: "A clear and concise description of what the bug is."
validations:
required: true
- type: textarea
attributes:
label: Relevant links
description:
Links to your public repository, YAML config file, and YAML workflow file.
Please use [a permanent link](https://docs.github.com/en/github/managing-files-in-a-repository/managing-files-on-github/getting-permanent-links-to-files), not a default branch.
render: markdown
value: |
Public repository:
YAML config:
YAML workflow:
validations:
required: true
- type: textarea
attributes:
label: Relevant log output
description: Copy and paste any relevant log output here.
validations:
required: false
- type: textarea
attributes:
label: Additional context.
description: Write any other context about the question here.
validations:
required: false

26
.github/ISSUE_TEMPLATE/3_proposal.md vendored Normal file
View File

@ -0,0 +1,26 @@
---
name: Proposal
about: Suggest an idea for this project
title: 'sample_title'
labels: proposal
assignees: peaceiris
---
<!-- Note that an issue which does not follow the template will be closed silently. -->
### Is your feature request related to a problem? Please describe
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
### Describe the solution you'd like
<!-- A clear and concise description of what you want to happen. -->
### Describe alternatives you've considered
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
### Additional context
<!-- Add any other context or screenshots about the feature request here. -->

View File

@ -1,45 +0,0 @@
name: Proposal
description: Suggest an idea for this project
title: 'proposal: '
labels: proposal
assignees: peaceiris
body:
- type: markdown
attributes:
value:
Please note we will close your issue without comment if you do not fill out the issue checklist below and provide ALL the requested information.
- type: checkboxes
attributes:
label: Checklist
description: Checklist before creating an issue.
options:
- label: "I am using the latest version of this action."
required: true
- label: "I have read the latest README and followed the instructions."
required: true
- label: "I have read the latest GitHub Actions official documentation and learned the basic spec and concepts."
required: true
- type: textarea
attributes:
label: "Describe your proposal"
description: "A clear and concise description of what the proposal is."
validations:
required: true
- type: textarea
attributes:
label: "Describe the solution you'd like"
description: "A clear and concise description of what you want to happen."
validations:
required: true
- type: textarea
attributes:
label: "Describe alternatives you've considered"
description: "A clear and concise description of any alternative solutions or features you've considered."
validations:
required: false
- type: textarea
attributes:
label: "Additional context"
description: "Add any other context or screenshots about the feature request here."
validations:
required: false

View File

@ -1,14 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: Discussions
url: https://github.com/peaceiris/actions-gh-pages/discussions
about: Ask casual questions or share your story about the GitHub Pages Action.
- name: GitHub Actions - GitHub Support Community Forum
url: https://github.community/c/code-to-cloud/github-actions/41
about: Please ask questions about GitHub Actions here.
- name: GitHub Pages Documentation
url: https://docs.github.com/en/pages
about: GitHub Pages official documentation here.
url: https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages
about: GitHub Pages official documentaion here.
- name: GitHub Actions Documentation
url: https://docs.github.com/en/actions
url: https://docs.github.com/en/free-pro-team@latest/actions
about: GitHub Actions official documentation here.

23
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,23 @@
version: 2
updates:
- package-ecosystem: npm
directory: "/"
schedule:
interval: daily
time: '11:00'
timezone: Japan
labels:
- dependencies
allow:
- dependency-type: "production"
commit-message:
prefix: deps
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
labels:
- "CI/CD"
commit-message:
prefix: ci

View File

@ -1,36 +0,0 @@
labels:
- name: resolved
labeled:
issue:
body: |
This issue has been **LOCKED** because of it being resolved!
The issue has been fixed and is therefore considered resolved.
If you still encounter this or it has changed, open a new issue instead of responding to solved ones.
action: close
locking: lock
lock_reason: resolved
- name: inactive
labeled:
issue:
body: |
This issue has been marked as inactive.
If you still encounter this or it has changed, add a comment to provide further information.
- name: stale
labeled:
issue:
body: |
This issue has been **LOCKED** because of it being old.
If you still encounter this or it has changed, open a new issue.
action: close
locking: lock
lock_reason: resolved
- name: duplicate
labeled:
issue:
body: |
This issue has been closed because of duplication.
action: close
locking: lock
lock_reason: resolved

2
.github/labeler.yml vendored
View File

@ -1,4 +1,4 @@
cicd:
CI/CD:
- .github/workflows/*
dependencies:

View File

@ -8,17 +8,17 @@ on:
jobs:
CodeQL-Build:
runs-on: ubuntu-22.04
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
uses: github/codeql-action/init@v1
with:
languages: javascript
- name: Autobuild
uses: github/codeql-action/autobuild@v3
uses: github/codeql-action/autobuild@v1
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
uses: github/codeql-action/analyze@v1

View File

@ -1,16 +0,0 @@
# Source repository: https://github.com/actions/dependency-review-action
# Public documentation: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement
name: 'Dependency Review'
on:
pull_request:
permissions:
contents: read
jobs:
dependency-review:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/dependency-review-action@v4

38
.github/workflows/dev-image.yml vendored Normal file
View File

@ -0,0 +1,38 @@
name: 'Dev Image CI'
on:
workflow_dispatch:
schedule:
- cron: '11 11 * * *'
push:
branches:
- main
paths:
- '.github/workflows/dev-image.yml'
- '.dockerignore'
- '.nvmrc'
- 'Dockerfile'
- 'Makefile'
- 'docker-compose.yml'
pull_request:
paths:
- '.github/workflows/dev-image.yml'
- '.dockerignore'
- '.nvmrc'
- 'Dockerfile'
- 'Makefile'
- 'docker-compose.yml'
jobs:
dev-image-test:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Login to Packages
run: echo '${{ secrets.GITHUB_TOKEN }}' | docker login 'docker.pkg.github.com' -u 'peaceiris' --password-stdin
- run: docker-compose pull --quiet
if: github.event_name == 'pull_request'
- run: make build
- run: docker images
- run: docker-compose push
if: github.ref == 'refs/heads/main' && github.event.repository.fork == false

View File

@ -1,27 +0,0 @@
name: Label Commenter
on:
issues:
types:
- labeled
- unlabeled
pull_request_target:
types:
- labeled
- unlabeled
permissions:
contents: read
issues: write
pull-requests: write
jobs:
comment:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Label Commenter
uses: peaceiris/actions-label-commenter@v1
env:
RUNNER_DEBUG: 1

View File

@ -1,22 +1,13 @@
name: "Pull Request Labeler"
# https://github.com/actions/labeler
on:
pull_request_target:
- pull_request_target
jobs:
triage:
runs-on: ubuntu-22.04
timeout-minutes: 1
permissions: {}
runs-on: ubuntu-18.04
steps:
# https://github.com/peaceiris/actions-github-app-token
- uses: peaceiris/actions-github-app-token@v1.1.6
id: app
- uses: actions/labeler@v3
with:
app_id: ${{ secrets.GH_APP_ID }}
private_key: ${{ secrets.GH_APP_PRIVATE_KEY }}
# https://github.com/actions/labeler
- uses: actions/labeler@v4
with:
repo-token: "${{ steps.app.outputs.token }}"
repo-token: "${{ secrets.GH_PAT }}"

View File

@ -4,7 +4,7 @@ on: page_build
jobs:
pages-status-check:
runs-on: ubuntu-22.04
runs-on: ubuntu-18.04
steps:
- name: check status
run: |

View File

@ -7,7 +7,7 @@ on:
jobs:
purge:
runs-on: ubuntu-22.04
runs-on: ubuntu-18.04
steps:
- run: >

View File

@ -7,10 +7,10 @@ on:
jobs:
release:
runs-on: ubuntu-22.04
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
# https://github.com/peaceiris/workflows/blob/main/create-release-npm/action.yml
- uses: peaceiris/workflows/create-release-npm@v0.20.1
- uses: peaceiris/workflows/create-release-npm@v0.8.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -10,28 +10,35 @@ on:
paths-ignore:
- '*.md'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- 'ubuntu-22.04'
- 'ubuntu-20.04'
- 'ubuntu-latest'
- 'ubuntu-18.04'
- 'ubuntu-16.04'
- 'macos-latest'
- 'windows-latest'
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- uses: peaceiris/workflows/setup-node@v0.20.1
- name: Dump GitHub context
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "${GITHUB_CONTEXT}"
- name: Read .nvmrc
run: echo "::set-output name=NVMRC::$(cat .nvmrc)"
id: nvm
- name: Setup Node
uses: actions/setup-node@v2.1.5
with:
node-version-file: ".nvmrc"
node-version: '${{ steps.nvm.outputs.NVMRC }}'
- run: npm i -g npm
- name: Dump version
run: |
@ -42,7 +49,7 @@ jobs:
- run: npm ci --ignore-scripts
- name: npm audit
if: startsWith(matrix.os, 'ubuntu-22.04')
if: startsWith(matrix.os, 'ubuntu-18.04')
run: |
npm audit > ./audit.log || true
if ! [ "$(cat ./audit.log | wc -l)" = 1 ]; then
@ -51,46 +58,46 @@ jobs:
rm ./audit.log
- name: Run prettier
if: startsWith(matrix.os, 'ubuntu-22.04')
if: startsWith(matrix.os, 'ubuntu-18.04')
run: npm run format:check
- name: Run eslint
if: startsWith(matrix.os, 'ubuntu-22.04')
if: startsWith(matrix.os, 'ubuntu-18.04')
run: npm run lint
- run: npm test
- name: Upload test coverage as artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v2
with:
name: coverage-${{ matrix.os }}
path: coverage
- uses: codecov/codecov-action@v4
- uses: codecov/codecov-action@v1.3.1
- name: Run ncc
run: npm run build
- name: Remove lint-staged husky
if: ${{ github.ref == 'refs/heads/main' }}
if: github.ref == 'refs/heads/main'
run: |
npm uninstall lint-staged husky
git checkout package-lock.json package.json
- name: Setup mdBook
if: ${{ github.ref == 'refs/heads/main' }}
uses: peaceiris/actions-mdbook@v1.2.0
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-mdbook@v1.1.14
with:
mdbook-version: '0.4.5'
- name: Build site
if: ${{ github.ref == 'refs/heads/main' }}
if: github.ref == 'refs/heads/main'
working-directory: ./test_projects/mdbook
run: mdbook build
- name: Deploy
if: |
startsWith(matrix.os, 'ubuntu-latest') &&
startsWith(matrix.os, 'ubuntu-18.04') &&
github.ref == 'refs/heads/main' && github.event.repository.fork == false
uses: ./
with:
@ -107,6 +114,24 @@ jobs:
# commit_message: ${{ github.event.head_commit.message }}
cname: 'actions-gh-pages.peaceiris.com'
- name: Deploy
if: |
startsWith(matrix.os, 'ubuntu-16.04') &&
github.ref == 'refs/heads/main' && github.event.repository.fork == false
uses: ./
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
# github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages-ubuntu-16.04
publish_dir: ./test_projects/mdbook/book
# external_repository: ''
allow_empty_commit: true
keep_files: true
force_orphan: true
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
full_commit_message: ${{ github.event.head_commit.message }}
- name: Deploy
if: |
startsWith(matrix.os, 'macos') &&
@ -162,21 +187,3 @@ jobs:
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
# commit_message: ${{ github.event.head_commit.message }}
- name: Deploy
if: |
startsWith(matrix.os, 'ubuntu-22.04') &&
github.ref == 'refs/heads/main' && github.event.repository.fork == false
uses: ./
with:
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages-ubuntu-22.04
publish_dir: ./test_projects/mdbook/book
# external_repository: ''
allow_empty_commit: true
# keep_files: true
# force_orphan: true
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
# commit_message: ${{ github.event.head_commit.message }}

View File

@ -2,16 +2,17 @@ name: Update major tag
on:
release:
types: [released]
types: [published]
jobs:
update:
runs-on: ubuntu-22.04
timeout-minutes: 1
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Update major tag
if: github.event.release.prerelease == false
run: |
git config user.name "${GITHUB_ACTOR}"
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"

View File

@ -1,2 +1,2 @@
npm install
npm ci
git remote prune origin

2
.nvmrc
View File

@ -1 +1 @@
20.11.1
12.21.0

1
.vscode/.gitignore vendored
View File

@ -1 +0,0 @@
*.log

View File

@ -2,218 +2,6 @@
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.
# [4.0.0](https://github.com/peaceiris/actions-gh-pages/compare/v3.9.3...v4.0.0) (2024-04-08)
### build
* node 20.11.1 ([5049354](https://github.com/peaceiris/actions-gh-pages/commit/5049354438ced05ab8a5da89ef20fd8efff107c7))
### chore
* bump node16 to node20 (#1067) ([4eb285e](https://github.com/peaceiris/actions-gh-pages/commit/4eb285e828117bca26638192c3ed309c622e7bad)), closes [#1067](https://github.com/peaceiris/actions-gh-pages/issues/1067)
* downgrade engines.npm to 8.0.0 ([87231bc](https://github.com/peaceiris/actions-gh-pages/commit/87231bc03a428df52f90a00b3b9e6bef82f7daf9))
### ci
* pin node-version to 18 (#981) ([65ebf11](https://github.com/peaceiris/actions-gh-pages/commit/65ebf11929c082120c54719c87069f0827d2084c)), closes [#981](https://github.com/peaceiris/actions-gh-pages/issues/981)
### docs
* add Release Strategy ([67f80d9](https://github.com/peaceiris/actions-gh-pages/commit/67f80d94a1668353e4733223685dcb84340c44b5))
* fix link to Nuxt github-pages (#980) ([88b4d2a](https://github.com/peaceiris/actions-gh-pages/commit/88b4d2aa927893f8976712406df9928468be3c88)), closes [#980](https://github.com/peaceiris/actions-gh-pages/issues/980)
* remove braces in if conditions (#920) ([0fbd122](https://github.com/peaceiris/actions-gh-pages/commit/0fbd12244217a1fa04396b8a52d911a436893771)), closes [#920](https://github.com/peaceiris/actions-gh-pages/issues/920)
## [3.9.3](https://github.com/peaceiris/actions-gh-pages/compare/v3.9.2...v3.9.3) (2023-03-30)
### docs
* fix typo, bump hugo version (#851) ([884a022](https://github.com/peaceiris/actions-gh-pages/commit/884a0224fd48faeb3bde89519e9d612d0585a679)), closes [#851](https://github.com/peaceiris/actions-gh-pages/issues/851)
### fix
* fix error handling (#841) ([32e33dc](https://github.com/peaceiris/actions-gh-pages/commit/32e33dcd3ae1d0cf56ac5a88267de6cbf0359353)), closes [#841](https://github.com/peaceiris/actions-gh-pages/issues/841)
* update known_hosts (#871) ([31c15f0](https://github.com/peaceiris/actions-gh-pages/commit/31c15f03292ac100ae41a50fd3055e00d1b11a32)), closes [#871](https://github.com/peaceiris/actions-gh-pages/issues/871)
## [3.9.2](https://github.com/peaceiris/actions-gh-pages/compare/v3.9.1...v3.9.2) (2023-01-17)
### chore
* rename cicd ([32c9288](https://github.com/peaceiris/actions-gh-pages/commit/32c9288f553bbcbf66869cf553c82754431faf03))
* replace npm ci with install ([9839780](https://github.com/peaceiris/actions-gh-pages/commit/983978086a87d25a1ff678aa1ef4c2acc413784a))
### ci
* add github-actions npm ([5e5dc6d](https://github.com/peaceiris/actions-gh-pages/commit/5e5dc6d02eeb18001e0a7af6d6fcbabd4fd9e2b7))
* enable automerge ([dd7d778](https://github.com/peaceiris/actions-gh-pages/commit/dd7d77895818fd15ebecf20b6bf76028d377e1b6))
* remove dependabot ([7af79a8](https://github.com/peaceiris/actions-gh-pages/commit/7af79a873e9c2b6c37690db94012342fdb90914a))
* remove enabledManagers ([cba22ba](https://github.com/peaceiris/actions-gh-pages/commit/cba22ba760f1c7e62c9ae43167ea68ca9de56506))
* use peaceiris/workflows/setup-node 0.19.1 (#818) ([416f539](https://github.com/peaceiris/actions-gh-pages/commit/416f539fb4263ec46f9bbee251e87cfeae9f85ff)), closes [#818](https://github.com/peaceiris/actions-gh-pages/issues/818)
### deps
* apply npm audit fix (#809) ([e3aa46d](https://github.com/peaceiris/actions-gh-pages/commit/e3aa46d23bbf7f669a6d92c15dda089b2edf4959)), closes [#809](https://github.com/peaceiris/actions-gh-pages/issues/809)
## [3.9.1](https://github.com/peaceiris/actions-gh-pages/compare/v3.9.0...v3.9.1) (2023-01-05)
### chore
* change cicd label name ([1808965](https://github.com/peaceiris/actions-gh-pages/commit/180896524151a5634ff5815a72c59467fc27c874))
### ci
* add Renovate config (#802) ([072d16c](https://github.com/peaceiris/actions-gh-pages/commit/072d16c439270cd3a36c3e0977ccbe10f2b2bc55)), closes [#802](https://github.com/peaceiris/actions-gh-pages/issues/802)
* bump actions/dependency-review-action from 2 to 3 (#799) ([e3b45f2](https://github.com/peaceiris/actions-gh-pages/commit/e3b45f27007dc55bcdd52f01e38af6f61576ec7f)), closes [#799](https://github.com/peaceiris/actions-gh-pages/issues/799)
* bump peaceiris/actions-github-app-token from 1.1.4 to 1.1.5 (#798) ([a5f971f](https://github.com/peaceiris/actions-gh-pages/commit/a5f971f112fd50b6dd28469f23be2618b1ea87e7)), closes [#798](https://github.com/peaceiris/actions-gh-pages/issues/798)
* bump peaceiris/actions-mdbook from 1.1.14 to 1.2.0 (#793) ([9af6a68](https://github.com/peaceiris/actions-gh-pages/commit/9af6a68dde7720af8fd55364c2c637ca5922a879)), closes [#793](https://github.com/peaceiris/actions-gh-pages/issues/793)
* bump peaceiris/workflows from 0.17.1 to 0.17.2 (#794) ([087a759](https://github.com/peaceiris/actions-gh-pages/commit/087a759f907a127fdee23c8994321ff96f7d9430)), closes [#794](https://github.com/peaceiris/actions-gh-pages/issues/794)
* bump peaceiris/workflows from 0.17.2 to 0.18.1 (#806) ([f94667a](https://github.com/peaceiris/actions-gh-pages/commit/f94667a25cd2716a8a046111457e4b17c8c28407)), closes [#806](https://github.com/peaceiris/actions-gh-pages/issues/806)
### deps
* bump @actions/github from 5.0.1 to 5.1.1 (#785) ([679dbf0](https://github.com/peaceiris/actions-gh-pages/commit/679dbf02f69022f8c402975fdefe41ddb31516cd)), closes [#785](https://github.com/peaceiris/actions-gh-pages/issues/785)
* bump @actions/glob from 0.2.1 to 0.3.0 (#735) ([25b12e2](https://github.com/peaceiris/actions-gh-pages/commit/25b12e2a24490dbc96aa0d5201e94b1b4cca7fb0)), closes [#735](https://github.com/peaceiris/actions-gh-pages/issues/735)
* bump minimatch from 3.0.4 to 3.1.2 (#807) ([2f463a5](https://github.com/peaceiris/actions-gh-pages/commit/2f463a5ad59a66a5a83e0f072f6d556898e6cc9e)), closes [#807](https://github.com/peaceiris/actions-gh-pages/issues/807)
### docs
* replace deprecated set-output (#800) ([7166f2c](https://github.com/peaceiris/actions-gh-pages/commit/7166f2caa423717780ff24040f0163cbe511c18c)), closes [#800](https://github.com/peaceiris/actions-gh-pages/issues/800)
# [3.9.0](https://github.com/peaceiris/actions-gh-pages/compare/v3.8.0...v3.9.0) (2022-10-23)
### chore
* add duplicate ([402af2b](https://github.com/peaceiris/actions-gh-pages/commit/402af2bd613bf17a0f737722b22787423732ebb8))
* Convert templates to YAML issue forms ([ecd92e3](https://github.com/peaceiris/actions-gh-pages/commit/ecd92e3bae20b0f2c3ea11ce7b30b25840eabd4e))
* Disable Bug Report ([55635e9](https://github.com/peaceiris/actions-gh-pages/commit/55635e91933d51b0d6c3a575897a7b5a3704f386))
* Fix prettier (#633) ([fde6b18](https://github.com/peaceiris/actions-gh-pages/commit/fde6b1864d7ae561229e5dc3e55ef29322b35c48)), closes [#633](https://github.com/peaceiris/actions-gh-pages/issues/633)
* fix title ([b5022f9](https://github.com/peaceiris/actions-gh-pages/commit/b5022f987516e69c177b0b457fb5514ea10d2a67))
* Fix workflow name ([e91a189](https://github.com/peaceiris/actions-gh-pages/commit/e91a189d4cb8222e581d2871ef437880f2333b9b))
* fix year ([f2ac8b6](https://github.com/peaceiris/actions-gh-pages/commit/f2ac8b62c4b599b6654590f0b7a1161703fc91b4))
* improve Check list ([6a30129](https://github.com/peaceiris/actions-gh-pages/commit/6a30129b5b88d0a390c34ed3629d6cf573bbbb1f))
* Improve checklist ([69f1241](https://github.com/peaceiris/actions-gh-pages/commit/69f124149567d87a17c55cae5abe231ce44ce07e))
* Set required to false ([d7ab6de](https://github.com/peaceiris/actions-gh-pages/commit/d7ab6dea490c8d393a652c34d5f44e2d0708914d))
* Set required to false ([e8cba38](https://github.com/peaceiris/actions-gh-pages/commit/e8cba386c2fbcf55a8eeca1302315b6b41bb7fe9))
* update year from 2020 to 2022 ([f1f4f15](https://github.com/peaceiris/actions-gh-pages/commit/f1f4f153975a491040d838fda56646f9edafc879))
### ci
* add actions/dependency-review-action ([3cc0a55](https://github.com/peaceiris/actions-gh-pages/commit/3cc0a55ff58aefa21874876c91f4f2ffb6103453))
* Add concurrency ([edb4f3e](https://github.com/peaceiris/actions-gh-pages/commit/edb4f3effe03cbd1386d11970f751c732c9a26c3))
* bump actions/checkout from 2 to 2.3.4 (#610) ([3102151](https://github.com/peaceiris/actions-gh-pages/commit/3102151215f6d7a76df4018f0af0a9699ed3f336)), closes [#610](https://github.com/peaceiris/actions-gh-pages/issues/610)
* bump actions/checkout from 2.3.4 to 2.3.5 (#664) ([b19f8b8](https://github.com/peaceiris/actions-gh-pages/commit/b19f8b8110dcb0217ae6e766038e0866e939324a)), closes [#664](https://github.com/peaceiris/actions-gh-pages/issues/664)
* bump actions/checkout from 2.3.5 to 2.4.0 (#668) ([d3d121d](https://github.com/peaceiris/actions-gh-pages/commit/d3d121d59436b77f95d88db13058d9752f43bc92)), closes [#668](https://github.com/peaceiris/actions-gh-pages/issues/668)
* bump actions/checkout from 2.4.0 to 3 (#715) ([c921422](https://github.com/peaceiris/actions-gh-pages/commit/c921422e3791023a8dd39566a129863ff42e8c39)), closes [#715](https://github.com/peaceiris/actions-gh-pages/issues/715)
* bump actions/dependency-review-action from 1 to 2 (#762) ([1304921](https://github.com/peaceiris/actions-gh-pages/commit/1304921c60d95a91f76f5fea0ce500280f4a6702)), closes [#762](https://github.com/peaceiris/actions-gh-pages/issues/762)
* bump actions/labeler from 3 to 4 (#716) ([7954f3d](https://github.com/peaceiris/actions-gh-pages/commit/7954f3d89e7814f3c77e0a9707d8de64fa600d5a)), closes [#716](https://github.com/peaceiris/actions-gh-pages/issues/716)
* bump actions/setup-node from 2.1.5 to 2.2.0 (#626) ([3edcc53](https://github.com/peaceiris/actions-gh-pages/commit/3edcc53d62040dee889598eda219c09c8062ef79)), closes [#626](https://github.com/peaceiris/actions-gh-pages/issues/626)
* bump actions/setup-node from 2.2.0 to 2.3.0 (#632) ([69191bf](https://github.com/peaceiris/actions-gh-pages/commit/69191bfb1c07687489d4ff7f67a14fb86f84fd2f)), closes [#632](https://github.com/peaceiris/actions-gh-pages/issues/632)
* bump actions/setup-node from 2.3.0 to 2.3.1 (#636) ([d5e7428](https://github.com/peaceiris/actions-gh-pages/commit/d5e742835946ed1f76c9c8b90c85cac1b034aca0)), closes [#636](https://github.com/peaceiris/actions-gh-pages/issues/636)
* bump actions/setup-node from 2.3.1 to 2.3.2 (#637) ([4a55c45](https://github.com/peaceiris/actions-gh-pages/commit/4a55c4533bc63bcf8bc0388e5b77b55dace1c4df)), closes [#637](https://github.com/peaceiris/actions-gh-pages/issues/637)
* bump actions/setup-node from 2.3.2 to 2.4.0 (#639) ([288fd14](https://github.com/peaceiris/actions-gh-pages/commit/288fd146896a5e9bca7819627bfca4858c4f61e7)), closes [#639](https://github.com/peaceiris/actions-gh-pages/issues/639)
* bump actions/setup-node from 2.4.0 to 2.4.1 (#656) ([52f1a50](https://github.com/peaceiris/actions-gh-pages/commit/52f1a5023a0458aead16313edf670ba9bbf9a543)), closes [#656](https://github.com/peaceiris/actions-gh-pages/issues/656)
* bump actions/setup-node from 2.4.1 to 2.5.0 (#673) ([88eb3e4](https://github.com/peaceiris/actions-gh-pages/commit/88eb3e4384e4b20352f7a2e9261af42478cbc4f1)), closes [#673](https://github.com/peaceiris/actions-gh-pages/issues/673)
* bump actions/setup-node from 2.5.0 to 2.5.1 (#689) ([127e2d7](https://github.com/peaceiris/actions-gh-pages/commit/127e2d7a36a613d271c3724758462936d9ed28f1)), closes [#689](https://github.com/peaceiris/actions-gh-pages/issues/689)
* bump actions/setup-node from 2.5.1 to 3 (#713) ([c188bee](https://github.com/peaceiris/actions-gh-pages/commit/c188bee6f9a10aa5cdd8f736310d7184685b7294)), closes [#713](https://github.com/peaceiris/actions-gh-pages/issues/713)
* bump actions/upload-artifact from 2 to 3 (#732) ([fb2c292](https://github.com/peaceiris/actions-gh-pages/commit/fb2c292cba55a2fbfcf55daec80ead70af7a5cab)), closes [#732](https://github.com/peaceiris/actions-gh-pages/issues/732)
* bump codecov/codecov-action from 1.5.0 to 1.5.2 (#622) ([3087a34](https://github.com/peaceiris/actions-gh-pages/commit/3087a3437ec05a3aa32755d702e39988df5f050c)), closes [#622](https://github.com/peaceiris/actions-gh-pages/issues/622)
* bump codecov/codecov-action from 1.5.2 to 2.0.1 (#631) ([90e01d5](https://github.com/peaceiris/actions-gh-pages/commit/90e01d5ddd49e6acc3c5dbbc8fc5ca44d5e94c18)), closes [#631](https://github.com/peaceiris/actions-gh-pages/issues/631)
* bump codecov/codecov-action from 2.0.1 to 2.0.2 (#634) ([d4b79ae](https://github.com/peaceiris/actions-gh-pages/commit/d4b79aef1f0c91d1f3ff0d56f9381f0a641250bd)), closes [#634](https://github.com/peaceiris/actions-gh-pages/issues/634)
* bump codecov/codecov-action from 2.0.2 to 2.0.3 (#646) ([e363e57](https://github.com/peaceiris/actions-gh-pages/commit/e363e5795952b51cd27dbe2d68db69292fd55fc6)), closes [#646](https://github.com/peaceiris/actions-gh-pages/issues/646)
* bump codecov/codecov-action from 2.0.3 to 2.1.0 (#655) ([40515c6](https://github.com/peaceiris/actions-gh-pages/commit/40515c605bdba1b1c5abd35066424bb2b4cfd846)), closes [#655](https://github.com/peaceiris/actions-gh-pages/issues/655)
* bump codecov/codecov-action from 2.1.0 to 3 (#729) ([1226087](https://github.com/peaceiris/actions-gh-pages/commit/12260875478175738e8a4e11917dcb2849b3ff23)), closes [#729](https://github.com/peaceiris/actions-gh-pages/issues/729)
* bump codecov/codecov-action from v1.3.1 to v1.3.2 (#594) ([1d0fa1a](https://github.com/peaceiris/actions-gh-pages/commit/1d0fa1a6443b47197e1446b8282191253a196530)), closes [#594](https://github.com/peaceiris/actions-gh-pages/issues/594)
* bump codecov/codecov-action from v1.3.2 to v1.4.0 (#602) ([b4ccfe8](https://github.com/peaceiris/actions-gh-pages/commit/b4ccfe80a698a88dbbef5d3d8a6dcc4adc422f18)), closes [#602](https://github.com/peaceiris/actions-gh-pages/issues/602)
* bump codecov/codecov-action from v1.4.0 to v1.4.1 (#604) ([e2a2646](https://github.com/peaceiris/actions-gh-pages/commit/e2a264646bcff750b77fc6689694f32cae152aa2)), closes [#604](https://github.com/peaceiris/actions-gh-pages/issues/604)
* bump codecov/codecov-action from v1.4.1 to v1.5.0 (#607) ([a22219e](https://github.com/peaceiris/actions-gh-pages/commit/a22219e8e4d436ca0c8fc5a596ef4fdb7f97558a)), closes [#607](https://github.com/peaceiris/actions-gh-pages/issues/607)
* bump github/codeql-action from 1 to 2 (#739) ([cf3948a](https://github.com/peaceiris/actions-gh-pages/commit/cf3948a236ac5ad9e3f5df020549e65351a99405)), closes [#739](https://github.com/peaceiris/actions-gh-pages/issues/739)
* bump peaceiris/workflows from 0.10.0 to 0.11.0 (#659) ([40737e1](https://github.com/peaceiris/actions-gh-pages/commit/40737e192d8ba20d11cb5e49ef4927a6bc67afd7)), closes [#659](https://github.com/peaceiris/actions-gh-pages/issues/659)
* bump peaceiris/workflows from 0.11.0 to 0.12.0 (#733) ([8a7e1fb](https://github.com/peaceiris/actions-gh-pages/commit/8a7e1fb6f4e3a35650f6e4d1d6b6e4229c790c4e)), closes [#733](https://github.com/peaceiris/actions-gh-pages/issues/733)
* bump peaceiris/workflows from 0.12.0 to 0.13.0 (#734) ([d4f052f](https://github.com/peaceiris/actions-gh-pages/commit/d4f052f1e85947a8cd4ac8833732054ff679e836)), closes [#734](https://github.com/peaceiris/actions-gh-pages/issues/734)
* bump peaceiris/workflows from 0.13.0 to 0.14.1 (#737) ([a762c3e](https://github.com/peaceiris/actions-gh-pages/commit/a762c3ec5466ae6e139e8043c62e09821ae2a3b6)), closes [#737](https://github.com/peaceiris/actions-gh-pages/issues/737)
* bump peaceiris/workflows from 0.14.1 to 0.15.0 (#751) ([da39891](https://github.com/peaceiris/actions-gh-pages/commit/da398914f7ffa06319c73b35e7d0e60283e1786f)), closes [#751](https://github.com/peaceiris/actions-gh-pages/issues/751)
* bump peaceiris/workflows from 0.15.0 to 0.16.0 (#766) ([05d272d](https://github.com/peaceiris/actions-gh-pages/commit/05d272de6c06158771c3e91ba690aaaabc0c416f)), closes [#766](https://github.com/peaceiris/actions-gh-pages/issues/766)
* bump peaceiris/workflows from 0.16.0 to 0.17.1 (#789) ([2c04d6b](https://github.com/peaceiris/actions-gh-pages/commit/2c04d6b59558dd2c0d7336b3a26ab87eb56cad7b)), closes [#789](https://github.com/peaceiris/actions-gh-pages/issues/789)
* bump peaceiris/workflows from 0.8.1 to 0.10.0 (#648) ([d936c20](https://github.com/peaceiris/actions-gh-pages/commit/d936c202377d434c7b787da447a5a043b6da5735)), closes [#648](https://github.com/peaceiris/actions-gh-pages/issues/648)
* Change trigger from published to released ([8f8bc46](https://github.com/peaceiris/actions-gh-pages/commit/8f8bc4611ef68a977630fc082434ff8f70fdb0b8))
* Drop ubuntu-16.04 (#606) ([b8eb1ae](https://github.com/peaceiris/actions-gh-pages/commit/b8eb1aeda400e0971c07694c7b453878ceb0ade9)), closes [#606](https://github.com/peaceiris/actions-gh-pages/issues/606)
* drop ubuntu-18.04, add 22.04, latest (#776) ([2eea5d7](https://github.com/peaceiris/actions-gh-pages/commit/2eea5d7a12ebcecf9d96a638de7649164fafddeb)), closes [#776](https://github.com/peaceiris/actions-gh-pages/issues/776)
* Improve step filters (#629) ([063f7de](https://github.com/peaceiris/actions-gh-pages/commit/063f7de6c4a7b149041a1d6a125a4827088fec76)), closes [#629](https://github.com/peaceiris/actions-gh-pages/issues/629)
* Install actions-label-commenter" ([c618621](https://github.com/peaceiris/actions-gh-pages/commit/c618621f202f2c120cbe3c57dd88742d723d317a))
* update contact_links ([183add1](https://github.com/peaceiris/actions-gh-pages/commit/183add1cc50764f1b3e36a73b14aa5b872fb55c4))
* use actions-github-app-token ([2bef62f](https://github.com/peaceiris/actions-gh-pages/commit/2bef62f8180c000cd3b5bf97e30f4cdde119adfb))
### deps
* bump @actions/core from 1.2.6 to 1.2.7 (#600) ([2d4d4fc](https://github.com/peaceiris/actions-gh-pages/commit/2d4d4fccc0e5d896442917c9849e18d9f20fa281)), closes [#600](https://github.com/peaceiris/actions-gh-pages/issues/600)
* bump @actions/core from 1.2.7 to 1.5.0 (#645) ([eb802f3](https://github.com/peaceiris/actions-gh-pages/commit/eb802f35cef88815ea66bf8a1d814c17b76a4f9b)), closes [#645](https://github.com/peaceiris/actions-gh-pages/issues/645)
* bump @actions/core from 1.5.0 to 1.6.0 (#657) ([150e20f](https://github.com/peaceiris/actions-gh-pages/commit/150e20f82d11c22282e9f1e2a5cc359d2f82dbf8)), closes [#657](https://github.com/peaceiris/actions-gh-pages/issues/657)
* bump @actions/exec from 1.0.4 to 1.1.0 (#618) ([4af0044](https://github.com/peaceiris/actions-gh-pages/commit/4af0044e5e4653b89affac033e933686da069ba4)), closes [#618](https://github.com/peaceiris/actions-gh-pages/issues/618)
* bump @actions/exec from 1.1.0 to 1.1.1 (#720) ([2fa2322](https://github.com/peaceiris/actions-gh-pages/commit/2fa23228a53288d3f0ca14e75fc96b8a57c69cd7)), closes [#720](https://github.com/peaceiris/actions-gh-pages/issues/720)
* bump @actions/github from 4.0.0 to 5.0.0 (#612) ([f29aeb9](https://github.com/peaceiris/actions-gh-pages/commit/f29aeb91b3a56926b6d8446b979dd7efd18469e3)), closes [#612](https://github.com/peaceiris/actions-gh-pages/issues/612)
* bump @actions/github from 5.0.0 to 5.0.1 (#728) ([46202b8](https://github.com/peaceiris/actions-gh-pages/commit/46202b81182827d66f204f83b88dbcca631ee7a7)), closes [#728](https://github.com/peaceiris/actions-gh-pages/issues/728)
* bump @actions/glob from 0.1.1 to 0.2.0 (#620) ([f34f14a](https://github.com/peaceiris/actions-gh-pages/commit/f34f14adb0e1a50b3983571105e6ac38f0d30e88)), closes [#620](https://github.com/peaceiris/actions-gh-pages/issues/620)
* bump @actions/glob from 0.2.0 to 0.2.1 (#721) ([c006717](https://github.com/peaceiris/actions-gh-pages/commit/c006717cf0bd938969390db21de9e6e3bcb288c0)), closes [#721](https://github.com/peaceiris/actions-gh-pages/issues/721)
* bump @actions/io from 1.0.2 to 1.1.0 (#593) ([95ad034](https://github.com/peaceiris/actions-gh-pages/commit/95ad0343aae5b0a6a544c821536c60debaede606)), closes [#593](https://github.com/peaceiris/actions-gh-pages/issues/593)
* bump @actions/io from 1.1.0 to 1.1.1 (#619) ([2c9f853](https://github.com/peaceiris/actions-gh-pages/commit/2c9f8534d24589a01ba8864bf6f00650b9bf6367)), closes [#619](https://github.com/peaceiris/actions-gh-pages/issues/619)
* bump @actions/io from 1.1.1 to 1.1.2 (#722) ([2b83a4b](https://github.com/peaceiris/actions-gh-pages/commit/2b83a4b24b0a7aee7d10ff3c5c86e441a0cd1909)), closes [#722](https://github.com/peaceiris/actions-gh-pages/issues/722)
* bump @types/shelljs from 0.8.8 to 0.8.9 (#654) ([7ea9100](https://github.com/peaceiris/actions-gh-pages/commit/7ea91005e5963e68314f681d72b17fde3e8a131a)), closes [#654](https://github.com/peaceiris/actions-gh-pages/issues/654)
* bump @types/shelljs from 0.8.9 to 0.8.11 (#693) ([2e09f80](https://github.com/peaceiris/actions-gh-pages/commit/2e09f809f83350b8a3d4f26dbb0e2e0721199225)), closes [#693](https://github.com/peaceiris/actions-gh-pages/issues/693)
* bump minimist from 1.2.5 to 1.2.6 (#726) ([4403b8b](https://github.com/peaceiris/actions-gh-pages/commit/4403b8b8f3d8f441c442ae9b93fe5fba9f5c1968)), closes [#726](https://github.com/peaceiris/actions-gh-pages/issues/726)
* Bump node from 12.21.0 to 12.22.0 (#592) ([2decf4e](https://github.com/peaceiris/actions-gh-pages/commit/2decf4e752abab9095efc5ace22a0e92ae2e6fec)), closes [#592](https://github.com/peaceiris/actions-gh-pages/issues/592)
* Bump node from 12.22.0 to 12.22.1 (#601) ([193a76d](https://github.com/peaceiris/actions-gh-pages/commit/193a76dc629a50d7a2f52eb4ae85500a8a1d641a)), closes [#601](https://github.com/peaceiris/actions-gh-pages/issues/601)
* bump node from 12.22.1 to 12.22.2 (#628) ([f321f46](https://github.com/peaceiris/actions-gh-pages/commit/f321f46f65cf03a32305f8edab39c422a083f089)), closes [#628](https://github.com/peaceiris/actions-gh-pages/issues/628)
* Bump node from 12.22.4 to 12.22.6 (#652) ([be584e1](https://github.com/peaceiris/actions-gh-pages/commit/be584e1ad2567ce506171434857bedb2a6c1183a)), closes [#652](https://github.com/peaceiris/actions-gh-pages/issues/652)
* bump shelljs from 0.8.4 to 0.8.5 (#692) ([892ca34](https://github.com/peaceiris/actions-gh-pages/commit/892ca34305f901f196fde386b4177b54c249bfd9)), closes [#692](https://github.com/peaceiris/actions-gh-pages/issues/692)
* node 12.22.4 ([9181540](https://github.com/peaceiris/actions-gh-pages/commit/918154021f5dbde7bba6c5accf8cea1a1ce5ece2))
### docs
* Add CNAME details for newbies ([3d71e70](https://github.com/peaceiris/actions-gh-pages/commit/3d71e70db9f003fea342bde483a7c4a1978804ac))
* Add concurrency ([7e7d7df](https://github.com/peaceiris/actions-gh-pages/commit/7e7d7dff413c6f698439a11a1e581badf4507604))
* add Custom GitHub Actions Workflows beta ([b4af807](https://github.com/peaceiris/actions-gh-pages/commit/b4af807921596bdad79592b406d0d743aae9e30e))
* Add GitHub documentation references to permissions (#754) ([ac45008](https://github.com/peaceiris/actions-gh-pages/commit/ac45008338dab8bf0c3efa91605acffc8565729c)), closes [#754](https://github.com/peaceiris/actions-gh-pages/issues/754)
* add note GitHub official Action ([765cf11](https://github.com/peaceiris/actions-gh-pages/commit/765cf1194eb2c30092c7ba39dec8ee0dba3565b9))
* add permissions contents write (#753) ([414c92c](https://github.com/peaceiris/actions-gh-pages/commit/414c92c5ff594b380dd8df46dffbb34e3dd2343f)), closes [#753](https://github.com/peaceiris/actions-gh-pages/issues/753)
* Add pull_request event ([b1a4f27](https://github.com/peaceiris/actions-gh-pages/commit/b1a4f2701cec741ce67e3f9fdaf22eeaa58725f0))
* add rustdoc hint (#764) ([97637bf](https://github.com/peaceiris/actions-gh-pages/commit/97637bffb09a6ef46a66b47207df5a18e3e7afc0)), closes [#764](https://github.com/peaceiris/actions-gh-pages/issues/764)
* bump hugo-version to 0.101.0 (#779) ([e1448a7](https://github.com/peaceiris/actions-gh-pages/commit/e1448a73ca97cd0b1a6f894340080366c5e8509a)), closes [#779](https://github.com/peaceiris/actions-gh-pages/issues/779)
* Bump node from 12 to 14 ([e831faa](https://github.com/peaceiris/actions-gh-pages/commit/e831faae0e7153297107fb95e60d98b2a819eb63))
* Enable GitHub native ToC ([35c9643](https://github.com/peaceiris/actions-gh-pages/commit/35c9643c9552c1974ba5c86b5e4591eb60c044e4))
* fix level of title heading ([0e59680](https://github.com/peaceiris/actions-gh-pages/commit/0e596805b1ea4181aa361304efd73a2ebe8ec0ac))
* Fix redirected links ([9856f8c](https://github.com/peaceiris/actions-gh-pages/commit/9856f8c8f8c271cb4e132cc172ec3870c6278733))
* Improve custom branch clarity (#761) ([da72d05](https://github.com/peaceiris/actions-gh-pages/commit/da72d057b991a0e351714b28bcd2608fbbd5c09e)), closes [#761](https://github.com/peaceiris/actions-gh-pages/issues/761)
* Improve title ([cdd482a](https://github.com/peaceiris/actions-gh-pages/commit/cdd482ae85fc1e250ec3d13bab58f92f3491e316))
* Improve usage of concurrency ([913377f](https://github.com/peaceiris/actions-gh-pages/commit/913377f0522aec60032df5ba927834804c2cdddf))
* Remove github/personal-website (#653) ([57d746c](https://github.com/peaceiris/actions-gh-pages/commit/57d746cd244c5fb4124fd2d456f3c3450b4240e1)), closes [#653](https://github.com/peaceiris/actions-gh-pages/issues/653)
* Uncomment GHES section ([9641296](https://github.com/peaceiris/actions-gh-pages/commit/9641296c3dbe7196c23d64a90cd7e6fba18247d1))
* update description of disable_nojekyll ([a43024e](https://github.com/peaceiris/actions-gh-pages/commit/a43024e6c04d9bd62101961dbf0b8f986512eb3b))
* Update enable_jekyll description (#661) ([834306b](https://github.com/peaceiris/actions-gh-pages/commit/834306ba279944a8bd2c22a6c19cb6a5efdf474c)), closes [#661](https://github.com/peaceiris/actions-gh-pages/issues/661) [#660](https://github.com/peaceiris/actions-gh-pages/issues/660)
* Update redirected links ([84ef946](https://github.com/peaceiris/actions-gh-pages/commit/84ef94646075cd5dcd26237cf4df2b7087195eaf))
* Use ubuntu-20.04 ([a99b730](https://github.com/peaceiris/actions-gh-pages/commit/a99b730d288bec72710ba0c4f16630083be912a7))
### feat
* bump node12 to node16 (#791) ([44a2b44](https://github.com/peaceiris/actions-gh-pages/commit/44a2b4403c2488c309307085bcdaab19fb8c7ea6)), closes [#791](https://github.com/peaceiris/actions-gh-pages/issues/791)
### fix
* Improve if syntax ([f7a748b](https://github.com/peaceiris/actions-gh-pages/commit/f7a748bfc91daeaf53c8be14d1a8a4fb9c67c417))
# [3.8.0](https://github.com/peaceiris/actions-gh-pages/compare/v3.7.3...v3.8.0) (2021-03-25)

56
Dockerfile Normal file
View File

@ -0,0 +1,56 @@
FROM ubuntu:18.04
SHELL ["/bin/bash", "-l", "-c"]
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 \
git \
curl \
wget \
ssh \
vim && \
apt-get autoclean && \
apt-get clean && \
apt-get autoremove -y && \
rm -rf /var/lib/apt/lists/*
RUN git --version && \
git config --global init.defaultBranch main && \
git config --global init.defaultBranch
WORKDIR /node
ARG NODE_VERSION
RUN curl -o nodejs.deb "https://deb.nodesource.com/node_${NODE_VERSION%%.*}.x/pool/main/n/nodejs/nodejs_${NODE_VERSION}-1nodesource1_amd64.deb" && \
apt-get update && \
apt-get install -y --no-install-recommends ./nodejs.deb && \
npm config set user 0 && \
npm config set unsafe-perm true && \
npm i -g npm && \
curl -sL https://deb.nodesource.com/test | bash - && \
npm cache clean --force && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /node
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"
CMD [ "bash" ]

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2019 Shohei Ueda (peaceiris)
Copyright (c) 2020 Shohei Ueda (peaceiris)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

10
Makefile Normal file
View File

@ -0,0 +1,10 @@
IMAGE_NAME := docker.pkg.github.com/peaceiris/actions-gh-pages/dev:latest
NODE_VERSION := $(shell cat ./.nvmrc)
.PHONY: build
build:
docker-compose build --build-arg NODE_VERSION=$(NODE_VERSION)
.PHONY: run
run:
docker-compose run --rm dev bash

444
README.md
View File

@ -1,8 +1,5 @@
<h2 align="center">
GitHub Pages Action
</h2>
## GitHub Actions for GitHub Pages
<div align="center">
<img width="400" alt="GitHub Actions for deploying to GitHub Pages with Static Site Generators" src="./images/ogp.svg">
[![license](https://img.shields.io/github/license/peaceiris/actions-gh-pages.svg)](https://github.com/peaceiris/actions-gh-pages/blob/main/LICENSE)
@ -12,25 +9,16 @@ GitHub Pages Action
![Code Scanning](https://github.com/peaceiris/actions-gh-pages/workflows/Code%20Scanning/badge.svg?event=push)
[![CodeFactor](https://www.codefactor.io/repository/github/peaceiris/actions-gh-pages/badge)](https://www.codefactor.io/repository/github/peaceiris/actions-gh-pages)
</div>
> [!NOTE]
>
> See also the GitHub official GitHub Pages Action first.
>
> - [GitHub Pages now uses Actions by default | The GitHub Blog](https://github.blog/2022-08-10-github-pages-now-uses-actions-by-default/)
> - [GitHub Pages: Custom GitHub Actions Workflows (beta) | GitHub Changelog](https://github.blog/changelog/2022-07-27-github-pages-custom-github-actions-workflows-beta/)
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.)
[Static Site Generators]: https://jamstack.org/generators/
[Static Site Generators]: https://www.staticgen.com/
The next example step will deploy `./public` directory to the remote `gh-pages` branch.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -41,9 +29,7 @@ Note that the `GITHUB_TOKEN` is **NOT** a personal access token.
A GitHub Actions runner automatically creates a `GITHUB_TOKEN` secret to authenticate in your workflow.
So, you can start to deploy immediately without any configuration.
## Supported Tokens
### Supported Tokens
Three tokens are supported.
@ -57,31 +43,25 @@ Notes: Actually, the `GITHUB_TOKEN` works for deploying to GitHub Pages but it h
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
All Actions runners: Linux (Ubuntu), macOS, and Windows are supported.
| runs-on | `github_token` | `deploy_key` | `personal_token` |
|---|:---:|:---:|:---:|
| ubuntu-22.04 | ✅️ | ✅️ | ✅️ |
| ubuntu-20.04 | ✅️ | ✅️ | ✅️ |
| ubuntu-latest | ✅️ | ✅️ | ✅️ |
| ubuntu-18.04 | ✅️ | ✅️ | ✅️ |
| ubuntu-16.04 | ✅️ | ✅️ | ✅️ |
| macos-latest | ✅️ | ✅️ | ✅️ |
| windows-latest | ✅️ | (2) | ✅️ |
2. WIP, See [Issue #87](https://github.com/peaceiris/actions-gh-pages/issues/87)
## GitHub Enterprise Server Support
<!-- ### GitHub Enterprise Server Support
✅️ GitHub Enterprise Server is supported above `2.22.6`.
Note that the `GITHUB_TOKEN` that is created by the runner might not inherently have push/publish privileges on GHES. You might need to create/request a technical user with write permissions to your target repository.
Note that the `GITHUB_TOKEN` that is created by the runner might not inherently have push/publish privileges on GHES. You might need to create/request a technical user with write permissions to your target repository. -->
## Table of Contents
@ -111,7 +91,6 @@ Note that the `GITHUB_TOKEN` that is created by the runner might not inherently
- [⭐️ 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)
- [⭐️ Schedule and Manual Deployment](#%EF%B8%8F-schedule-and-manual-deployment)
- [⭐️ Release Strategy](#%EF%B8%8F-release-strategy)
- [Examples](#examples)
- [⭐️ Static Site Generators with Node.js](#%EF%B8%8F-static-site-generators-with-nodejs)
- [⭐️ Gatsby](#%EF%B8%8F-gatsby)
@ -122,6 +101,7 @@ Note that the `GITHUB_TOKEN` that is created by the runner might not inherently
- [⭐️ mdBook (Rust)](#%EF%B8%8F-mdbook-rust)
- [⭐️ Flutter Web](#%EF%B8%8F-flutter-web)
- [⭐️ Elm](#%EF%B8%8F-elm)
- [⭐️ github/personal-website](#%EF%B8%8F-githubpersonal-website)
- [⭐️ Swift Publish](#%EF%B8%8F-swift-publish)
- [License](#license)
- [Maintainer](#maintainer)
@ -141,23 +121,18 @@ Here is an example workflow for Hugo.
[![peaceiris/actions-hugo - GitHub](https://gh-card.dev/repos/peaceiris/actions-hugo.svg?fullname)](https://github.com/peaceiris/actions-hugo)
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main # Set a branch name to trigger deployment
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
@ -165,17 +140,13 @@ jobs:
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.110.0'
hugo-version: '0.79.1'
- name: Build
run: hugo --minify
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
# If you're changing the branch from main,
# also change the `main` in `refs/heads/main`
# below accordingly.
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -201,13 +172,13 @@ A GitHub Actions runner automatically creates a `GITHUB_TOKEN` secret to use in
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
```
For more details about `GITHUB_TOKEN`: [Automatic token authentication - GitHub Docs](https://docs.github.com/en/actions/security-guides/automatic-token-authentication)
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)
### ⭐️ Set SSH Private Key `deploy_key`
@ -215,7 +186,7 @@ Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
publish_dir: ./public
@ -227,7 +198,7 @@ Read [Create SSH Deploy Key](#%EF%B8%8F-create-ssh-deploy-key), create your SSH
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
personal_token: ${{ secrets.PERSONAL_TOKEN }}
publish_dir: ./public
@ -240,7 +211,7 @@ The default is `gh-pages`.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: your-branch # default: gh-pages
@ -249,11 +220,10 @@ The default is `gh-pages`.
### ⭐️ Source Directory `publish_dir`
A source directory to deploy to GitHub Pages. The default is `public`.
Only the contents of this dir are pushed to GitHub Pages branch, `gh-pages` by default.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./out # default: public
@ -268,7 +238,7 @@ A destination subdirectory on a publishing branch. The default is empty.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
destination_dir: subdir
@ -285,7 +255,7 @@ Values should be split with a comma.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
exclude_assets: '.github,exclude-file1,exclude-file2'
@ -295,7 +265,7 @@ Set `exclude_assets` to empty for including the `.github` directory to deploymen
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} # Recommended for this usage
# personal_token: ${{ secrets.PERSONAL_TOKEN }} # An alternative
@ -307,7 +277,7 @@ The `exclude_assets` option supports glob patterns.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
exclude_assets: '.github,exclude-file.txt,exclude-dir/**.txt'
@ -315,14 +285,13 @@ The `exclude_assets` option supports glob patterns.
### ⭐️ Add CNAME file `cname`
To add the `CNAME` file, we can set the `cname` option.
Alternatively, put your `CNAME` file into your `publish_dir`. (e.g. `public/CNAME`)
To add `CNAME` file, we can set the `cname` option.
For more details about the `CNAME` file, read the official documentation: [Managing a custom domain for your GitHub Pages site - GitHub Docs](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site)
For more details about `CNAME`, read the official documentation: [Managing a custom domain for your GitHub Pages site - GitHub Help](https://help.github.com/en/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site)
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -333,14 +302,16 @@ For more details about the `CNAME` file, read the official documentation: [Manag
If you want GitHub Pages to process your site with the static site generator Jekyll, set `enable_jekyll` to true.
By default, this action signals to GitHub Pages that the site shall not be processed with Jekyll. This is done by adding an empty `.nojekyll` file on your publishing branch. When that file already exists, this action does nothing.
[github/personal-website](https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-githubpersonal-website) is one of the examples using GitHub Pages built-in Jekyll.
By default, this action signals to GitHub Pages that the site shall not be processed with Jekyll. This is done by adding an empty `.nojekyll` file when publishing to the master or gh-pages branch. When a `.nojekyll` file already exists, this action does nothing.
Bypassing Jekyll makes the deployment faster and is necessary if you are deploying files or directories that start with underscores, since Jekyll considers these to be special resources and does not copy them to the final site. You only need to set `enable_jekyll` to true when you want to deploy a Jekyll-powered website and let GitHub Pages do the Jekyll processing.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -357,7 +328,7 @@ For example:
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -371,13 +342,13 @@ By default, existing files in the publish branch (or only in `destination_dir` i
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/how-to/images-and-media/static-folder/)
- [Using the Static Folder | Gatsby](https://www.gatsbyjs.com/docs/static-folder/)
For example:
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -396,7 +367,7 @@ For example:
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
external_repository: username/external-repository
@ -423,7 +394,7 @@ This allows you to make your publish branch with only the latest commit.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -437,7 +408,7 @@ A commit is always created with the same user.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -454,7 +425,7 @@ When we create a commit with a message `docs: Update some post`, a deployment co
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -468,7 +439,7 @@ use the `full_commit_message` option instead of the `commit_message` option.
```yaml
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -480,7 +451,7 @@ use the `full_commit_message` option instead of the `commit_message` option.
Here is an example workflow.
```yaml
name: GitHub Pages
name: github pages
on:
push:
@ -491,13 +462,9 @@ on:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Some build
@ -505,15 +472,17 @@ jobs:
id: prepare_tag
if: startsWith(github.ref, 'refs/tags/')
run: |
echo "DEPLOY_TAG_NAME=deploy-${TAG_NAME}" >> "${GITHUB_OUTPUT}"
TAG_NAME="${GITHUB_REF##refs/tags/}"
echo "::set-output name=tag_name::${TAG_NAME}"
echo "::set-output name=deploy_tag_name::deploy-${TAG_NAME}"
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
tag_name: ${{ steps.prepare_tag.outputs.DEPLOY_TAG_NAME }}
tag_message: 'Deployment ${{ github.ref_name }}'
tag_name: ${{ steps.prepare_tag.outputs.deploy_tag_name }}
tag_message: 'Deployment ${{ steps.prepare_tag.outputs.tag_name }}'
```
Commands on a local machine.
@ -544,13 +513,11 @@ Generate your deploy key with the following command.
```sh
ssh-keygen -t rsa -b 4096 -C "$(git config user.email)" -f gh-pages -N ""
# You will get 2 files:
# gh-pages.pub (public key)
# gh-pages (private key)
```
You will get 2 files:
- `gh-pages.pub` is a public key
- `gh-pages` is a private key
Next, Go to **Repository Settings**
- Go to **Deploy Keys** and add your public key with the **Allow write access**
@ -576,25 +543,6 @@ The `GITHUB_TOKEN` has limitations for the first deployment so we have to select
|---|---|
| ![](./images/settings_select.jpg) | ![](./images/log_success.jpg) |
If the action fails to push the commit or tag with the following error:
```txt
/usr/bin/git push origin gh-pages
remote: Write access to repository not granted.
fatal: unable to access 'https://github.com/username/repository.git/': The requested URL returned error: 403
Error: Action failed with "The process '/usr/bin/git' failed with exit code 128"
```
Please add the write permission to the [`permissions.contents` in a workflow/job](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions).
```yaml
permissions:
contents: write
```
Alternatively, you can [configure the default `GITHUB_TOKEN` permissions](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-default-github_token-permissions) by selecting read and write permissions.
### ⭐️ Use the latest and specific release
We recommend you to use the latest and specific release of this action for stable CI/CD.
@ -618,18 +566,18 @@ updates:
prefix: ci
```
See the official documentation for more details about the Dependabot: [Keeping your dependencies updated automatically - GitHub Docs](https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically)
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/learn-github-actions/events-that-trigger-workflows#scheduled-events)
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/learn-github-actions/events-that-trigger-workflows#manual-events)
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
name: github pages
on:
push:
@ -641,58 +589,11 @@ on:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
...
```
### ⭐️ Release Strategy
cf. [support: execution from hashref disabled/broken vs GitHub Actions Security Best Practice? · Issue #712 · peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages/issues/712)
Our project builds and provides build assets only when creating a release. This is to prevent the user from executing this action with a specific branch (like main). For example, if we maintain build assets in the main branch and users use this action as follows, a major release including breaking changes will break the CI workflow of the users silently.
```yaml
- uses: peaceiris/actions-gh-pages@main # Bad example!
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
```
In this project, a major tag (e.g. v3) is guaranteed to contain no breaking changes. But, we recommend using a tag or a commit hash for the stability of your workflows.
```yaml
- uses: peaceiris/actions-gh-pages@v4.0.0 # tag: Better
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
```
```yaml
- uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # commit hash of v3.9.3: Best!
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
```
For verifying the release asset, we can use the following commands.
```sh
git clone https://github.com/peaceiris/actions-gh-pages.git
cd ./actions-gh-pages
git checkout v3.9.3
nvm install
nvm use
npm i -g npm
npm ci
npm run build
git diff ./lib/index.js # We will get zero exit code
```
<div align="right">
<a href="#table-of-contents">Back to TOC ☝️</a>
</div>
@ -716,31 +617,26 @@ e.g. `create-react-app` requires `publish_dir` to be set to `./build`
Premise: Dependencies are managed by `package.json` and `package-lock.json`
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
@ -751,8 +647,7 @@ jobs:
- run: npm run build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -766,31 +661,26 @@ An example for [Gatsby] (Gatsby.js) project with [gatsby-starter-blog]
[gatsby-starter-blog]: https://github.com/gatsbyjs/gatsby-starter-blog
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
@ -803,8 +693,7 @@ jobs:
- run: npm run build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
@ -814,41 +703,38 @@ jobs:
An example for [Next.js] (React.js) project with [create-next-app]
[Next.js]: https://github.com/vercel/next.js
- cf. [Deploying a Next.js app into GitHub Pages · zeit/next.js Wiki](https://github.com/zeit/next.js/wiki/Deploying-a-Next.js-app-into-GitHub-Pages)
[Next.js]: https://github.com/zeit/next.js
[create-next-app]: https://nextjs.org/docs
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Get yarn cache
id: yarn-cache
run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> "${GITHUB_OUTPUT}"
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ${{ steps.yarn-cache.outputs.YARN_CACHE_DIR }}
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
@ -858,8 +744,7 @@ jobs:
- run: yarn export
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./out
@ -869,37 +754,32 @@ jobs:
An example for [Nuxt.js] (Vue.js) project with [create-nuxt-app]
- cf. [Nuxt - GitHub Pages](https://nuxtjs.org/deployments/github-pages)
- cf. [GitHub Pages Deployment - Nuxt.js](https://nuxtjs.org/faq/github-pages)
[Nuxt.js]: https://github.com/nuxt/nuxt.js
[create-nuxt-app]: https://github.com/nuxt/create-nuxt-app
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
@ -911,8 +791,7 @@ jobs:
- run: npm run generate
- name: deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist
@ -927,7 +806,7 @@ An example workflow for [Docusaurus](https://docusaurus.io/).
```yaml
# .github/workflows/deploy.yml
name: GitHub Pages
name: github pages
on:
push:
@ -936,34 +815,29 @@ on:
paths:
- '.github/workflows/deploy.yml'
- 'website/**'
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
defaults:
run:
working-directory: website
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Get yarn cache
id: yarn-cache
run: echo "YARN_CACHE_DIR=$(yarn cache dir)" >> "${GITHUB_OUTPUT}"
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ${{ steps.yarn-cache.outputs.YARN_CACHE_DIR }}
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-website-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-website-
@ -972,8 +846,7 @@ jobs:
- run: yarn build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./website/build
@ -990,28 +863,23 @@ jobs:
Premise: Dependencies are managed by `requirements.txt`
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Python
uses: actions/setup-python@v5
uses: actions/setup-python@v2
with:
python-version: '3.13'
python-version: '3.8'
- name: Upgrade pip
run: |
@ -1020,10 +888,10 @@ jobs:
- name: Get pip cache dir
id: pip-cache
run: echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
run: echo "::set-output name=dir::$(pip cache dir)"
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v2
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
@ -1036,8 +904,7 @@ jobs:
- run: mkdocs build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./site
@ -1052,68 +919,53 @@ An example GitHub Actions workflow to deploy [rust-lang/mdBook] site to GitHub P
- [peaceiris/actions-mdbook: GitHub Actions for mdBook (rust-lang/mdBook)](https://github.com/peaceiris/actions-mdbook)
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup mdBook
uses: peaceiris/actions-mdbook@v1
with:
mdbook-version: '0.4.8'
mdbook-version: '0.4.5'
# mdbook-version: 'latest'
- run: mdbook build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./book
```
Hint: you may want to publish your rustdocs. And use relative links to it from the md docs, and have them checked by `mdbook`.
Then, according to the [doc](https://rust-lang.github.io/mdBook/guide/creating.html#source-files), you may put `./target/doc/`
to your `./book/src` dir before you `mdbook build` and then it will end up in `./book/html/` and in your Github Pages.
### ⭐️ Flutter Web
An example workflow for [Flutter web project].
An exapmle workflow for [Flutter web project].
[Flutter web project]: https://flutter.dev/docs/get-started/web
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Flutter
run: |
@ -1129,8 +981,7 @@ jobs:
run: flutter build web
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build/web
@ -1143,28 +994,23 @@ An example workflow for [Elm].
[Elm]: https://elm-lang.org
```yaml
name: GitHub Pages
name: github pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@v2.1.2
with:
node-version: '24'
node-version: '12.x'
- name: Setup Elm
run: npm install elm --global
@ -1180,13 +1026,43 @@ jobs:
# provide --output=<output-file> option for `elm make` and remove this step
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
```
### ⭐️ github/personal-website
- [github/personal-website](https://github.com/github/personal-website) - Code that'll help you kickstart a personal website that showcases your work as a software developer.
```yaml
# .github/workflows/github-pages.yml
name: GitHub Pages
on:
push:
branches:
- master
schedule:
- cron: '24 */24 * * *' # Once a day
jobs:
deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./
allow_empty_commit: true
enable_jekyll: true
cname: github.peaceiris.com
```
### ⭐️ Swift Publish
An example workflow for [JohnSundell/Publish].
@ -1200,17 +1076,14 @@ on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: macos-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v2
- uses: actions/cache@v4
- uses: actions/cache@v2
with:
path: |
~/Publish_build
@ -1233,8 +1106,7 @@ jobs:
- run: publish-cli generate
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./Output

View File

@ -184,6 +184,6 @@ describe('getInputs()', () => {
expect(() => {
getInputs();
}).toThrow('Use either of enable_jekyll or disable_nojekyll');
}).toThrowError('Use either of enable_jekyll or disable_nojekyll');
});
});

View File

@ -148,7 +148,7 @@ describe('setRepo()', () => {
const date = new Date();
const unixTime = date.getTime();
const workDir = await getWorkDirName(`${unixTime}`);
await expect(setRepo(inps, remoteURL, workDir)).rejects.toThrow(
await expect(setRepo(inps, remoteURL, workDir)).rejects.toThrowError(
'destination_dir should be a relative path'
);
});
@ -241,13 +241,17 @@ describe('setCommitAuthor()', () => {
test('throw error user_email is undefined', async () => {
const userName = 'custom-octocat';
const userEmail = '';
await expect(setCommitAuthor(userName, userEmail)).rejects.toThrow('user_email is undefined');
await expect(setCommitAuthor(userName, userEmail)).rejects.toThrowError(
'user_email is undefined'
);
});
test('throw error user_name is undefined', async () => {
const userName = '';
const userEmail = 'custom-octocat@github.com';
await expect(setCommitAuthor(userName, userEmail)).rejects.toThrow('user_name is undefined');
await expect(setCommitAuthor(userName, userEmail)).rejects.toThrowError(
'user_name is undefined'
);
});
});

View File

@ -70,13 +70,13 @@ describe('setGithubToken()', () => {
'refs/heads/gh-pages-base',
'push'
);
}).toThrow('You deploy from gh-pages-base to gh-pages-base');
}).toThrowError('You deploy from gh-pages-base to gh-pages-base');
});
test('throw error master to master', () => {
expect(() => {
setGithubToken('GITHUB_TOKEN', 'owner/repo', 'master', '', 'refs/heads/master', 'push');
}).toThrow('You deploy from master to master');
}).toThrowError('You deploy from master to master');
});
test('throw error external repository with GITHUB_TOKEN', () => {
@ -89,7 +89,7 @@ describe('setGithubToken()', () => {
'refs/heads/master',
'push'
);
}).toThrow(`\
}).toThrowError(`\
The generated GITHUB_TOKEN (github_token) does not support to push to an external repository.
Use deploy_key or personal_token.
`);

View File

@ -2,7 +2,7 @@ name: 'GitHub Pages action'
description: 'GitHub Actions for GitHub Pages 🚀 Deploy static files and publish your site easily. Static-Site-Generators-friendly.'
author: 'peaceiris'
runs:
using: 'node20'
using: 'node12'
main: 'lib/index.js'
branding:
icon: 'upload-cloud'
@ -67,7 +67,7 @@ inputs:
required: false
default: 'false'
disable_nojekyll:
description: 'An alias for enable_jekyll to disable adding .nojekyll file to a publishing branch'
description: 'An alias for enable_jekyll to disable adding .nojekyll file to master or gh-pages branches'
required: false
default: 'false'
cname:

16
docker-compose.yml Normal file
View 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

1
lib/index.js Normal file

File diff suppressed because one or more lines are too long

13921
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,11 @@
{
"name": "actions-github-pages",
"version": "4.0.0",
"version": "3.8.0",
"description": "GitHub Actions for GitHub Pages",
"main": "lib/index.js",
"engines": {
"node": ">=v20.11.0",
"npm": ">=10.2.4"
"node": ">=12.20.1",
"npm": ">=7.5.2"
},
"scripts": {
"postinstall": "npx husky install",
@ -15,8 +15,8 @@
"test": "jest --coverage --verbose --detectOpenHandles",
"build": "ncc build ./src/index.ts -o lib --minify",
"tsc": "tsc",
"format": "prettier --write '**/*.ts'",
"format:check": "prettier --check '**/*.ts'",
"format": "prettier --write **/*.ts",
"format:check": "prettier --check **/*.ts",
"release": "standard-version"
},
"lint-staged": {
@ -25,7 +25,7 @@
"eslint"
],
"README.md": [
"npx doctoc@2.1.0 --github"
"npx doctoc@2.0.0 --github"
]
},
"repository": {
@ -47,33 +47,33 @@
},
"homepage": "https://github.com/peaceiris/actions-gh-pages#readme",
"dependencies": {
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.1",
"@actions/github": "^5.1.1",
"@actions/glob": "^0.5.0",
"@actions/io": "^1.1.2",
"@types/shelljs": "^0.8.11",
"shelljs": "^0.8.5"
"@actions/core": "^1.2.6",
"@actions/exec": "^1.0.4",
"@actions/github": "^4.0.0",
"@actions/glob": "^0.1.1",
"@actions/io": "^1.0.2",
"@types/shelljs": "^0.8.8",
"shelljs": "^0.8.4"
},
"devDependencies": {
"@types/jest": "^29.2.6",
"@types/js-yaml": "^4.0.5",
"@types/node": "~16",
"@typescript-eslint/eslint-plugin": "^5.48.2",
"@typescript-eslint/parser": "^5.48.2",
"@vercel/ncc": "^0.38.0",
"eslint": "^8.32.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-jest": "^27.2.1",
"eslint-plugin-prettier": "^4.2.1",
"husky": "^8.0.3",
"jest": "^29.3.1",
"jest-circus": "^29.3.1",
"js-yaml": "^4.1.0",
"lint-staged": "^13.1.0",
"prettier": "2.8.8",
"@types/jest": "^26.0.20",
"@types/js-yaml": "^4.0.0",
"@types/node": "~12",
"@typescript-eslint/eslint-plugin": "^4.16.1",
"@typescript-eslint/parser": "^4.16.1",
"@vercel/ncc": "^0.27.0",
"eslint": "^7.21.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-jest": "^24.1.5",
"eslint-plugin-prettier": "^3.3.1",
"husky": "^5.1.3",
"jest": "^26.6.3",
"jest-circus": "^26.6.3",
"js-yaml": "^4.0.0",
"lint-staged": "^10.5.4",
"prettier": "2.2.1",
"standard-version": "^9.1.1",
"ts-jest": "^29.0.5",
"typescript": "^4.9.4"
"ts-jest": "^26.5.3",
"typescript": "^4.2.3"
}
}

View File

@ -47,7 +47,7 @@ else
git pull origin --tags
fi
npm install
npm ci
mkdir ./lib
npm run build

View File

@ -1,13 +0,0 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"local>peaceiris/renovate-config"
],
"packageRules": [
{
"automerge": false,
"matchUpdateTypes": ["minor", "patch"],
"automergeStrategy": "squash"
}
]
}

View File

@ -35,10 +35,10 @@ export function showInputs(inps: Inputs): void {
export function getInputs(): Inputs {
let useBuiltinJekyll = false;
const isBoolean = (param: string): boolean => (param || 'false').toUpperCase() === 'TRUE';
const enableJekyll: boolean = isBoolean(core.getInput('enable_jekyll'));
const disableNoJekyll: boolean = isBoolean(core.getInput('disable_nojekyll'));
const enableJekyll: boolean =
(core.getInput('enable_jekyll') || 'false').toUpperCase() === 'TRUE';
const disableNoJekyll: boolean =
(core.getInput('disable_nojekyll') || 'false').toUpperCase() === 'TRUE';
if (enableJekyll && disableNoJekyll) {
throw new Error(`Use either of enable_jekyll or disable_nojekyll`);
@ -56,9 +56,9 @@ export function getInputs(): Inputs {
PublishDir: core.getInput('publish_dir'),
DestinationDir: core.getInput('destination_dir'),
ExternalRepository: core.getInput('external_repository'),
AllowEmptyCommit: isBoolean(core.getInput('allow_empty_commit')),
KeepFiles: isBoolean(core.getInput('keep_files')),
ForceOrphan: isBoolean(core.getInput('force_orphan')),
AllowEmptyCommit: (core.getInput('allow_empty_commit') || 'false').toUpperCase() === 'TRUE',
KeepFiles: (core.getInput('keep_files') || 'false').toUpperCase() === 'TRUE',
ForceOrphan: (core.getInput('force_orphan') || 'false').toUpperCase() === 'TRUE',
UserName: core.getInput('user_name'),
UserEmail: core.getInput('user_email'),
CommitMessage: core.getInput('commit_message'),

View File

@ -127,19 +127,15 @@ export async function setRepo(inps: Inputs, remoteURL: string, workDir: string):
} else {
throw new Error(`Failed to clone remote branch ${inps.PublishBranch}`);
}
} catch (error) {
if (error instanceof Error) {
} catch (e) {
core.info(`[INFO] first deployment, create new branch ${inps.PublishBranch}`);
core.info(`[INFO] ${error.message}`);
core.info(`[INFO] ${e.message}`);
await createDir(destDir);
core.info(`[INFO] chdir ${workDir}`);
process.chdir(workDir);
await createBranchForce(inps.PublishBranch);
await copyAssets(publishDir, destDir, inps.ExcludeAssets);
return;
} else {
throw new Error('unexpected error');
}
}
}
@ -205,13 +201,9 @@ export async function commit(allowEmptyCommit: boolean, msg: string): Promise<vo
} else {
await exec.exec('git', ['commit', '-m', `${msg}`]);
}
} catch (error) {
if (error instanceof Error) {
} catch (e) {
core.info('[INFO] skip commit');
core.debug(`[INFO] skip commit ${error.message}`);
} else {
throw new Error('unexpected error');
}
core.debug(`[INFO] skip commit ${e.message}`);
}
}

View File

@ -4,11 +4,7 @@ import * as main from './main';
(async (): Promise<void> => {
try {
await main.run();
} catch (error) {
if (error instanceof Error) {
core.setFailed(`Action failed with "${error.message}"`);
} else {
core.setFailed('unexpected error');
}
} catch (e) {
core.setFailed(`Action failed with "${e.message}"`);
}
})();

View File

@ -57,12 +57,8 @@ export async function run(): Promise<void> {
core.startGroup('Setup Git config');
try {
await exec.exec('git', ['remote', 'rm', 'origin']);
} catch (error) {
if (error instanceof Error) {
core.info(`[INFO] ${error.message}`);
} else {
throw new Error('unexpected error');
}
} catch (e) {
core.info(`[INFO] ${e.message}`);
}
await exec.exec('git', ['remote', 'add', 'origin', remoteURL]);
await exec.exec('git', ['add', '--all']);
@ -90,11 +86,7 @@ export async function run(): Promise<void> {
core.info('[INFO] Action successfully completed');
return;
} catch (error) {
if (error instanceof Error) {
throw new Error(error.message);
} else {
throw new Error('unexpected error');
}
} catch (e) {
throw new Error(e.message);
}
}

View File

@ -26,7 +26,7 @@ export async function setSSHKey(inps: Inputs, publishRepo: string): Promise<stri
# ${getServerUrl().host}.com:22 SSH-2.0-babeld-1f0633a6
${
getServerUrl().host
} ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=
} ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
`;
fs.writeFileSync(knownHosts, cmdSSHkeyscanOutput + '\n');
core.info(`[INFO] wrote ${knownHosts}`);
@ -138,11 +138,7 @@ export async function setTokens(inps: Inputs): Promise<string> {
} else {
throw new Error('not found deploy key or tokens');
}
} catch (error) {
if (error instanceof Error) {
throw new Error(error.message);
} else {
throw new Error('unexpected error');
}
} catch (e) {
throw new Error(e.message);
}
}