73 lines
1.8 KiB
YAML
73 lines
1.8 KiB
YAML
stages:
|
|
- pre-check
|
|
- build
|
|
- test
|
|
- deploy
|
|
|
|
|
|
include:
|
|
- component: "gitlab.com/sequoia-pgp/common-ci/sequoia-pipeline@main"
|
|
|
|
variables:
|
|
SEQUOIA_CRYPTO_POLICY: ""
|
|
|
|
|
|
docker-build-push:
|
|
# Official docker image.
|
|
image: docker:stable
|
|
stage: build
|
|
services:
|
|
- docker:dind
|
|
tags:
|
|
- docker
|
|
- self-hosted
|
|
before_script:
|
|
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
|
|
script:
|
|
- >
|
|
docker build
|
|
--no-cache
|
|
--target sq
|
|
--tag "$IMAGE":latest
|
|
.
|
|
# smoke test
|
|
- docker run "$IMAGE":latest --help
|
|
- docker push "$IMAGE":latest
|
|
after_script: []
|
|
only:
|
|
refs:
|
|
- /docker/i # refs containing 'docker' keyword
|
|
- tags
|
|
- web
|
|
- schedules
|
|
variables:
|
|
CI_REGISTRY: "registry.gitlab.com"
|
|
IMAGE: "$CI_REGISTRY/sequoia-pgp/sequoia-sq"
|
|
DOCKER_HOST: tcp://docker:2376
|
|
|
|
pages:
|
|
stage: deploy
|
|
image: jampot.sequoia-pgp.org/sequoia-pgp/build-docker-image/trixie-pandoc:latest
|
|
script:
|
|
- ASSET_OUT_DIR=/tmp/assets cargo doc --no-deps -p sequoia-sq
|
|
- mkdir public
|
|
- mv -v target/doc public/impl
|
|
|
|
- for M in /tmp/assets/man-pages/*; do pandoc -s $M -L src/man-pandoc.lua -H src/man-pandoc.inc.html -o $M.html ; done
|
|
- mkdir public/man
|
|
- mv -v /tmp/assets/man-pages/*.html public/man
|
|
|
|
- mkdir public/subplot
|
|
- pandoc -s -o public/subplot/sq-subplot.html sq-subplot.md
|
|
- pandoc -s -o public/subplot/sq-subplot.pdf sq-subplot.md
|
|
|
|
- echo "/sequoia-sq/ /sequoia-sq/man/sq.1.html 302" > public/_redirects
|
|
- echo "/sequoia-sq/impl /sequoia-sq/impl/sq/index.html 302" >> public/_redirects
|
|
- echo "/sequoia-sq/man /sequoia-sq/man/sq.1.html 302" >> public/_redirects
|
|
- echo "/sequoia-sq/subplot /sequoia-sq/subplot/sq-subplot.html 302" >> public/_redirects
|
|
artifacts:
|
|
paths:
|
|
- public
|
|
only:
|
|
- main
|