diff options
author | Mikey Lombardi (He/Him) <michael.t.lombardi@gmail.com> | 2022-11-15 19:19:33 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-15 19:19:33 +0300 |
commit | 474444fa9f0decb2d7734828c7f9d629535dcb94 (patch) | |
tree | df57de5bff88e9c06e7914b94311ec2f6f0180c5 | |
parent | ada30c21f5148715719bf6d6b94f3e5dce50b19d (diff) |
(GH-198) Add `extended` option to hugo feature (#240)
Prior to this change, the hugo feature only supported specifying the
version of Hugo to install. Hugo is available in two builds: standard,
which the feature already installs, and extended, which includes
functionality for post-processing CSS/SCSS/SASS and JavaScript.
This change adds a new `extended` option to the hugo feature, allowing
users to specify that they require the extended build of Hugo. It
defaults to `false` and installs the standard build of Hugo.
- Resolves #198
-rw-r--r-- | src/hugo/devcontainer-feature.json | 7 | ||||
-rwxr-xr-x | src/hugo/install.sh | 9 | ||||
-rw-r--r-- | test/hugo/install_hugo_extended.sh | 12 | ||||
-rw-r--r-- | test/hugo/scenarios.json | 11 |
4 files changed, 37 insertions, 2 deletions
diff --git a/src/hugo/devcontainer-feature.json b/src/hugo/devcontainer-feature.json index 7a96d85..37a805d 100644 --- a/src/hugo/devcontainer-feature.json +++ b/src/hugo/devcontainer-feature.json @@ -1,6 +1,6 @@ { "id": "hugo", - "version": "1.0.6", + "version": "1.1.0", "name": "Hugo", "documentationURL": "https://github.com/devcontainers/features/tree/main/src/hugo", "options": { @@ -11,6 +11,11 @@ ], "default": "latest", "description": "Select or enter a version." + }, + "extended": { + "type": "boolean", + "default": false, + "description": "Install Hugo extended for SASS/SCSS changes" } }, "containerEnv": { diff --git a/src/hugo/install.sh b/src/hugo/install.sh index 778b552..c5cb628 100755 --- a/src/hugo/install.sh +++ b/src/hugo/install.sh @@ -106,7 +106,14 @@ if ! hugo version &> /dev/null ; then arch="64bit" fi - hugo_filename="hugo_${VERSION}_Linux-${arch}.tar.gz" + # Install extended version of hugo if desired + if [ "${EXTENDED}" = "true" ]; then + extended="extended_" + else + extended="" + fi + + hugo_filename="hugo_${extended}${VERSION}_Linux-${arch}.tar.gz" curl -fsSLO --compressed "https://github.com/gohugoio/hugo/releases/download/v${VERSION}/${hugo_filename}" tar -xzf "$hugo_filename" -C "$installation_dir" diff --git a/test/hugo/install_hugo_extended.sh b/test/hugo/install_hugo_extended.sh new file mode 100644 index 0000000..4771d84 --- /dev/null +++ b/test/hugo/install_hugo_extended.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -e + +# Optional: Import test library +source dev-container-features-test-lib + +# Ensure extended version is installed +check "extended_installed" bash -c "hugo version | grep extended" + +# Report result +reportResults diff --git a/test/hugo/scenarios.json b/test/hugo/scenarios.json new file mode 100644 index 0000000..4c093df --- /dev/null +++ b/test/hugo/scenarios.json @@ -0,0 +1,11 @@ +{ + "install_hugo_extended": { + "image": "mcr.microsoft.com/devcontainers/base", + "features": { + "hugo": { + "version": "latest", + "extended": true + } + } + } +}
\ No newline at end of file |