aparoksha.dev/.gitlab-ci.yml
2024-10-04 23:12:16 +02:00

53 lines
1.8 KiB
YAML

stages:
- deploy
default:
image: debian:stable-slim
variables:
# The runner will be able to pull your Zola theme when the strategy is
# set to "recursive".
GIT_SUBMODULE_STRATEGY: "recursive"
# If you don't set a version here, your site will be built with the latest
# version of Zola available in GitHub releases.
# Use the semver (x.y.z) format to specify a version. For example: "0.17.2" or "0.18.0".
ZOLA_VERSION:
description: "The version of Zola used to build the site."
value: ""
pages:
stage: deploy
script:
- |
apt-get update --assume-yes && apt-get install --assume-yes --no-install-recommends wget ca-certificates
if [ $ZOLA_VERSION ]; then
zola_url="https://github.com/getzola/zola/releases/download/v$ZOLA_VERSION/zola-v$ZOLA_VERSION-x86_64-unknown-linux-gnu.tar.gz"
if ! wget --quiet --spider $zola_url; then
echo "A Zola release with the specified version could not be found.";
exit 1;
fi
else
github_api_url="https://api.github.com/repos/getzola/zola/releases/latest"
zola_url=$(
wget --output-document - $github_api_url |
grep "browser_download_url.*linux-gnu.tar.gz" |
cut --delimiter : --fields 2,3 |
tr --delete "\" "
)
fi
wget $zola_url
tar -xzf *.tar.gz
./zola build
artifacts:
paths:
# This is the directory whose contents will be deployed to the GitLab Pages
# server.
# GitLab Pages expects a directory with this name by default.
- public
rules:
# This rule makes it so that your website is published and updated only when
# you push to the default branch of your repository (e.g. "master" or "main").
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH