rough add withdeploy

This commit is contained in:
Arnaud Levy 2024-11-05 08:15:12 +01:00
parent 3b443076f0
commit 153e0fe512
6 changed files with 40 additions and 5 deletions

View File

@ -21,6 +21,9 @@ jobs:
extended:
- true
- false
withdeploy:
- true
- false
steps:
- uses: actions/checkout@v4
@ -29,6 +32,7 @@ jobs:
with:
hugo-version: ${{ matrix.hugo-version }}
extended: ${{ matrix.extended }}
withdeploy: ${{ matrix.withdeploy }}
- name: Run hugo version
run: echo "::set-output name=hugo_version::$(hugo version)"

View File

@ -123,10 +123,23 @@ Set `extended: true` to use a Hugo extended version.
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: '0.119.0'
hugo-version: '0.137.0'
extended: true
```
### ⭐️ Use Hugo withdeploy
Set `withdeploy: true` to use a Hugo with deploy feature.
Since [v0.137.0](https://github.com/gohugoio/hugo/releases/tag/v0.137.0), the deploy feature is not in the default archive anymore.
```yaml
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: '0.137.0'
withdeploy: true
```
### ⭐️ Use the latest version of Hugo
Set `hugo-version: 'latest'` to use the latest version of Hugo.

View File

@ -1,5 +1,5 @@
name: 'Hugo setup'
description: 'GitHub Actions for Hugo ⚡️ Setup Hugo quickly and build your site fast. Hugo extended and Hugo Modules are supported.'
description: 'GitHub Actions for Hugo ⚡️ Setup Hugo quickly and build your site fast. Hugo extended, Hugo deploy and Hugo Modules are supported.'
author: 'peaceiris'
inputs:
hugo-version:
@ -10,6 +10,10 @@ inputs:
description: 'Download (if necessary) and use Hugo extended version. Example: true'
required: false
default: 'false'
withdeploy:
description: 'Download (if necessary) and use Hugo deploy feature. Example: true'
required: false
default: 'false'
runs:
using: 'node20'
main: 'lib/index.js'

View File

@ -1,6 +1,6 @@
{
"name": "actions-hugo",
"version": "3.0.0",
"version": "3.0.1",
"description": "GitHub Actions for Hugo",
"main": "lib/index.js",
"engines": {

View File

@ -2,6 +2,7 @@ export default function getURL(
os: string,
arch: string,
extended: string,
withdeploy: string,
version: string
): string {
const extendedStr = (extended: string): string => {
@ -14,6 +15,16 @@ export default function getURL(
}
};
const withdeployStr = (withdeploy: string): string => {
if (withdeploy === 'true') {
return 'withdeploy_';
} else {
return '';
// } else {
// throw new Error(`Invalid input (withdeploy): ${withdeploy}`);
}
};
const ext = (os: string): string => {
if (os === 'Windows') {
return 'zip';
@ -22,7 +33,7 @@ export default function getURL(
}
};
const hugoName = `hugo_${extendedStr(extended)}${version}_${os}-${arch}`;
const hugoName = `hugo_${extendedStr(extended)}${withdeployStr(withdeploy)}${version}_${os}-${arch}`;
const baseURL = 'https://github.com/gohugoio/hugo/releases/download';
const url = `${baseURL}/v${version}/${hugoName}.${ext(os)}`;

View File

@ -47,13 +47,16 @@ export async function installer(version: string): Promise<void> {
const extended: string = core.getInput('extended');
core.debug(`Hugo extended: ${extended}`);
const withdeploy: string = core.getInput('withdeploy');
core.debug(`Hugo withdeploy: ${withdeploy}`);
const osName: string = getOS(process.platform);
core.debug(`Operating System: ${osName}`);
const archName: string = getArch(process.arch);
core.debug(`Processor Architecture: ${archName}`);
const toolURL: string = getURL(osName, archName, extended, version);
const toolURL: string = getURL(osName, archName, extended, withdeploy, version);
core.debug(`toolURL: ${toolURL}`);
const workDir = await createWorkDir();