Compare commits

...

5 Commits

Author SHA1 Message Date
Shohei Ueda
853885077b
Merge 28797ce1ee into 966dfad385 2024-02-07 00:17:46 +09:00
peaceiris
966dfad385
chore: npm audit fix 2024-02-06 23:49:51 +09:00
Rui Chen
c57490a8b0
feat: bump to use node20 runtime (#641) 2024-02-06 23:47:20 +09:00
Shohei Ueda
28797ce1ee
test: fix 2020-07-17 15:56:07 +09:00
Shohei Ueda
cef7a7b43d
feat: throw error for invalid extended input 2020-07-17 15:49:02 +09:00
9 changed files with 903 additions and 1163 deletions

View File

@ -11,7 +11,6 @@ jobs:
strategy: strategy:
matrix: matrix:
os: os:
- 'ubuntu-22.04'
- 'ubuntu-20.04' - 'ubuntu-20.04'
- 'ubuntu-latest' - 'ubuntu-latest'
- 'macos-latest' - 'macos-latest'

View File

@ -14,6 +14,7 @@ jobs:
test: test:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
strategy: strategy:
fail-fast: false
matrix: matrix:
os: os:
- 'ubuntu-22.04' - 'ubuntu-22.04'
@ -24,14 +25,10 @@ jobs:
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Read .nvmrc - uses: actions/setup-node@v4
run: echo "::set-output name=NVMRC::$(cat .nvmrc)"
id: nvm
- name: Setup Node
uses: actions/setup-node@v3.6.0
with: with:
node-version: '${{ steps.nvm.outputs.NVMRC }}' node-version-file: '.nvmrc'
cache: 'npm'
- run: npm ci - run: npm ci

2
.nvmrc
View File

@ -1 +1 @@
12.22.4 20.10.0

View File

@ -261,10 +261,9 @@ jobs:
hugo-version: '0.119.0' hugo-version: '0.119.0'
extended: true extended: true
- name: Setup Node - uses: actions/setup-node@v4
uses: actions/setup-node@v3
with: with:
node-version: '18' node-version: '20'
cache: 'npm' cache: 'npm'
# The action defaults to search for the dependency file (package-lock.json, # The action defaults to search for the dependency file (package-lock.json,
# npm-shrinkwrap.json or yarn.lock) in the repository root, and uses its # npm-shrinkwrap.json or yarn.lock) in the repository root, and uses its

View File

@ -25,6 +25,7 @@ describe('Integration testing run()', () => {
test('succeed in installing a custom version', async () => { test('succeed in installing a custom version', async () => {
const testVersion = Tool.TestVersionSpec; const testVersion = Tool.TestVersionSpec;
process.env['INPUT_HUGO-VERSION'] = testVersion; process.env['INPUT_HUGO-VERSION'] = testVersion;
process.env['INPUT_EXTENDED'] = 'false';
const result: main.ActionResult = await main.run(); const result: main.ActionResult = await main.run();
expect(result.exitcode).toBe(0); expect(result.exitcode).toBe(0);
expect(result.output).toMatch(`hugo v${testVersion}`); expect(result.output).toMatch(`hugo v${testVersion}`);
@ -43,6 +44,7 @@ describe('Integration testing run()', () => {
test('succeed in installing the latest version', async () => { test('succeed in installing the latest version', async () => {
const testVersion = 'latest'; const testVersion = 'latest';
process.env['INPUT_HUGO-VERSION'] = testVersion; process.env['INPUT_HUGO-VERSION'] = testVersion;
process.env['INPUT_EXTENDED'] = 'false';
nock('https://formulae.brew.sh').get(`/api/formula/${Tool.Repo}.json`).reply(200, jsonTestBrew); nock('https://formulae.brew.sh').get(`/api/formula/${Tool.Repo}.json`).reply(200, jsonTestBrew);
const result: main.ActionResult = await main.run(); const result: main.ActionResult = await main.run();
expect(result.exitcode).toBe(0); expect(result.exitcode).toBe(0);
@ -62,8 +64,8 @@ describe('Integration testing run()', () => {
test('fail to install the latest version due to 404 of brew', async () => { test('fail to install the latest version due to 404 of brew', async () => {
process.env['INPUT_HUGO-VERSION'] = 'latest'; process.env['INPUT_HUGO-VERSION'] = 'latest';
process.env['INPUT_EXTENDED'] = 'false';
nock('https://formulae.brew.sh').get(`/api/formula/${Tool.Repo}.json`).reply(404); nock('https://formulae.brew.sh').get(`/api/formula/${Tool.Repo}.json`).reply(404);
await expect(main.run()).rejects.toThrowError(FetchError); await expect(main.run()).rejects.toThrowError(FetchError);
}); });
}); });

View File

@ -11,7 +11,7 @@ inputs:
required: false required: false
default: 'false' default: 'false'
runs: runs:
using: 'node16' using: 'node20'
main: 'lib/index.js' main: 'lib/index.js'
branding: branding:
icon: 'package' icon: 'package'

2025
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,11 @@
{ {
"name": "actions-hugo", "name": "actions-hugo",
"version": "2.6.0", "version": "3.0.0",
"description": "GitHub Actions for Hugo", "description": "GitHub Actions for Hugo",
"main": "lib/index.js", "main": "lib/index.js",
"engines": { "engines": {
"node": ">=16.18.0", "node": ">=20.10.0",
"npm": ">=8.19.0" "npm": ">=10.2.3"
}, },
"scripts": { "scripts": {
"all": "npm run format:check && npm run lint && npm test", "all": "npm run format:check && npm run lint && npm test",
@ -55,11 +55,11 @@
}, },
"devDependencies": { "devDependencies": {
"@types/jest": "^26.0.20", "@types/jest": "^26.0.20",
"@types/node": "~12", "@types/node": "~20",
"@types/node-fetch": "^2.5.8", "@types/node-fetch": "^2.5.8",
"@typescript-eslint/eslint-plugin": "^4.16.1", "@typescript-eslint/eslint-plugin": "^4.16.1",
"@typescript-eslint/parser": "^4.16.1", "@typescript-eslint/parser": "^4.16.1",
"@vercel/ncc": "^0.27.0", "@vercel/ncc": "^0.38.1",
"eslint": "^7.21.0", "eslint": "^7.21.0",
"eslint-plugin-jest": "^24.1.5", "eslint-plugin-jest": "^24.1.5",
"husky": "^5.1.3", "husky": "^5.1.3",

View File

@ -7,10 +7,10 @@ export default function getURL(
const extendedStr = (extended: string): string => { const extendedStr = (extended: string): string => {
if (extended === 'true') { if (extended === 'true') {
return 'extended_'; return 'extended_';
} else { } else if (extended === 'false') {
return ''; return '';
// } else { } else {
// throw new Error(`Invalid input (extended): ${extended}`); throw new Error(`Invalid input (extended): ${extended}`);
} }
}; };