1variables:2 CARGO_HOME: $CI_PROJECT_DIR/cache34stages:5 - prepare6 - build78build-container:9 image: docker:19.03.1110 stage: prepare11 services:12 - docker:19.03.11-dind13 before_script:14 - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY15 script:16 - docker pull $CI_REGISTRY_IMAGE:build || true17 - docker build -t $CI_REGISTRY_IMAGE:build -f build/Dockerfile .18 - docker push $CI_REGISTRY_IMAGE:build1920test-library:21 image: $CI_REGISTRY_IMAGE:build22 stage: build23 script:24 - cargo clippy25 cache:26 key: test27 paths:28 - ./cache2930build-linux:31 image: $CI_REGISTRY_IMAGE:build32 stage: build33 script:34 - cargo build --release35 cache:36 key: linux37 paths:38 - ./cache39 - ./target40 artifacts:41 paths:42 - ./target/release/jrsonnet43 expire_in: 30 days4445build-wasm:46 image: $CI_REGISTRY_IMAGE:build47 stage: build48 script:49 - cargo build --target=wasm32-wasi --release50 cache:51 key: wasm52 paths:53 - ./cache54 - ./target55 artifacts:56 paths:57 - ./target/wasm32-wasi/release/jsonnet.wasm58 expire_in: 30 days