default: image: nixpkgs/nix-flakes before_script: - . <(nix print-dev-env .#ci) - export GOPATH=~/go check: script: - nix flake check . --print-build-logs build: needs: - check variables: CI_REGISTRY_IMAGE: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG FLY_REGISTRY_IMAGE: registry.fly.io/alanpearce-eu script: - IMAGE_TAG="$(date --utc +%Y%m%d%H%M%S)-${CI_COMMIT_SHA}" - nix build --max-jobs auto .\#server - mkdir -p "/etc/containers/" - echo '{"default":[{"type":"insecureAcceptAnything"}]}' > /etc/containers/policy.json - image-fly # - skopeo login --username "$CI_REGISTRY_USER" --password "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - skopeo --tmpdir=$TMPDIR inspect docker-archive://$(readlink -f result) # - skopeo --tmpdir=$TMPDIR copy --dest-precompute-digests docker-archive://$(readlink -f result) docker://$CI_REGISTRY_IMAGE:${IMAGE_TAG} - fly auth docker - skopeo --tmpdir=$TMPDIR copy --dest-precompute-digests docker-archive://$(readlink -f result) docker://${FLY_REGISTRY_IMAGE}:${IMAGE_TAG} - echo "FLY_REGISTRY_IMAGE_TAG=${FLY_REGISTRY_IMAGE}:${IMAGE_TAG}" >> build.env artifacts: reports: dotenv: build.env deploy: needs: - build script: - fly deploy --image $FLY_REGISTRY_IMAGE_TAG rules: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH