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: registry.cern.ch/docker.io/library/julia:1.11 extends: - .script - .coverage pages: image: registry.cern.ch/docker.io/library/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)'