PSBoardDataBase/.gitlab-ci.yml

82 lines
1.9 KiB
YAML

variables:
CI_JULIA_CACHE_DIR: ${CI_PROJECT_DIR}/julia_pkg
JULIA_DEPOT_PATH: ${CI_JULIA_CACHE_DIR}
cache:
key:
files:
- Project.toml
- docs/Project.toml
prefix: ${CI_JOB_NAME}
paths:
- ${CI_JULIA_CACHE_DIR}
.script:
script:
- |
julia --project=@. -e '
using Pkg
Pkg.build()
Pkg.test(coverage=true)'
.coverage:
coverage: /Test coverage (\d+\.\d+%)/
after_script:
- |
julia -e '
using Pkg
Pkg.add("Coverage")
using Coverage
c, t = get_summary(process_folder())
using Printf
@printf "Test coverage %.2f%%\n" 100c / t'
# Julia 1.10:
# image: julia:1.10
# extends:
# - .script
# - .coverage
Julia 1.11:
image: julia:1.11
extends:
- .script
- .coverage
pages:
image: julia:1.11
stage: deploy
script:
- |
julia --project=docs -e '
using Pkg
@info "Pkg status before dev" Pkg.status() pwd()
Pkg.develop(PackageSpec(path=pwd()))
Pkg.instantiate()
@info "Pkg status after dev" Pkg.status()
include("docs/make.jl")'
- mkdir -p public
- mv docs/build public/dev
- ls docs/src -R
artifacts:
paths:
- public
only:
- main
CompatHelper:
image: julia:1.11 # Set to the Julia version you want to use
stage: test # You can place this in any stage that makes sense for your setup
only:
- schedules
before_script:
- apt-get update -qq && apt-get install -y git
- |
julia --color=yes -e "
import Pkg;
name = \"CompatHelper\";
uuid = \"aa819f21-2bde-4658-8897-bab36330d9b7\";
version = \"3\";
Pkg.add(; name, uuid, version)"
script:
- |
julia --color=yes -e '
import CompatHelper;
config = CompatHelper.GitLabCI(;
api_hostname="https://gitlab.cern.ch/api/v4",
clone_hostname="gitlab.cern.ch",
)
CompatHelper.main(ENV, config)'