Luke Granger-Brown
ca02dda602
We now have resource_groups, and environment.name. We don't yet have environment.deployment_tier, though, but that can live in the base template and be enabled once Heptapod is at GitLab 13.10.
160 lines
3.6 KiB
YAML
160 lines
3.6 KiB
YAML
# SPDX-FileCopyrightText: 2020 Luke Granger-Brown <depot@lukegb.com>
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
|
|
nixCache:
|
|
stage: build
|
|
image: "nixos/nix:latest"
|
|
script:
|
|
- "nix run -f ./ third_party.nixpkgs.bash -c ./hack/populate_secrets.sh"
|
|
- "nix build -v -f ./ci-root.nix --substituters \"https://cache.nixos.org/ s3://lukegb-nix-cache?endpoint=storage.googleapis.com&trusted=1\""
|
|
- "nix copy -v --to 's3://lukegb-nix-cache?endpoint=storage.googleapis.com' ./result"
|
|
- "cat ./result/other-systemPathJSON > systems.json"
|
|
artifacts:
|
|
paths:
|
|
- systems.json
|
|
expire_in: '30 days'
|
|
tags:
|
|
- cacher
|
|
|
|
.deploy:
|
|
stage: deploy
|
|
needs:
|
|
- job: nixCache
|
|
artifacts: true
|
|
tags:
|
|
- deployer
|
|
# environment:
|
|
# deployment_tier: production
|
|
|
|
marukuru:
|
|
extends: .deploy
|
|
resource_group: marukuru
|
|
script: './hack/deploy.sh "marukuru" "-p 20022"'
|
|
environment:
|
|
name: marukuru
|
|
|
|
clouvider-fra01:
|
|
extends: .deploy
|
|
resource_group: clouvider-fra01
|
|
script: './hack/deploy.sh "clouvider-fra01" ""'
|
|
environment:
|
|
name: clouvider-fra01
|
|
|
|
kusakabe:
|
|
extends: .deploy
|
|
resource_group: kusakabe
|
|
script: './hack/deploy.sh "kusakabe" ""'
|
|
environment:
|
|
name: kusakabe
|
|
|
|
clouvider-lon01:
|
|
extends: .deploy
|
|
resource_group: clouvider-lon01
|
|
script: './hack/deploy.sh "clouvider-lon01" ""'
|
|
environment:
|
|
name: clouvider-lon01
|
|
|
|
totoro:
|
|
extends: .deploy
|
|
resource_group: totoro
|
|
script: './hack/deploy.sh "totoro" ""'
|
|
environment:
|
|
name: totoro
|
|
|
|
swann:
|
|
extends: .deploy
|
|
resource_group: swann
|
|
script: './hack/deploy.sh "swann" ""'
|
|
environment:
|
|
name: swann
|
|
|
|
etheroute-lon01:
|
|
extends: .deploy
|
|
resource_group: etheroute-lon01
|
|
script: './hack/deploy.sh "etheroute-lon01" ""'
|
|
environment:
|
|
name: etheroute-lon01
|
|
|
|
blade-janeway:
|
|
extends: .deploy
|
|
resource_group: blade-janeway
|
|
script: './hack/deploy.sh "blade-janeway" ""'
|
|
environment:
|
|
name: blade-janeway
|
|
|
|
# chakotay and kim are not autodeployed because they're usually off.
|
|
#blade-chakotay:
|
|
# extends: .deploy
|
|
# resource_group: blade-chakotay
|
|
# script: './hack/deploy.sh "blade-chakotay" ""'
|
|
# environment:
|
|
# name: blade-chakotay
|
|
#
|
|
#blade-kim:
|
|
# extends: .deploy
|
|
# resource_group: blade-kim
|
|
# script: './hack/deploy.sh "blade-kim" ""'
|
|
# environment:
|
|
# name: blade-kim
|
|
|
|
# paris and tuvok are not autodeployed because they are the routers, and I don't trust myself
|
|
#blade-paris:
|
|
# extends: .deploy
|
|
# resource_group: blade-paris
|
|
# script: './hack/deploy.sh "blade-paris" ""'
|
|
# environment:
|
|
# name: blade-paris
|
|
#
|
|
#blade-tuvok:
|
|
# extends: .deploy
|
|
# resource_group: blade-tuvok
|
|
# script: './hack/deploy.sh "blade-tuvok" ""'
|
|
# environment:
|
|
# name: blade-tuvok
|
|
|
|
blade-torres:
|
|
extends: .deploy
|
|
resource_group: blade-torres
|
|
script: './hack/deploy.sh "blade-torres" ""'
|
|
environment:
|
|
name: blade-torres
|
|
|
|
bvm-nixosmgmt:
|
|
extends: .deploy
|
|
resource_group: bvm-nixosmgmt
|
|
script: './hack/deploy.sh "bvm-nixosmgmt" ""'
|
|
environment:
|
|
name: bvm-nixosmgmt
|
|
|
|
frantech-las01:
|
|
extends: .deploy
|
|
resource_group: frantech-las01
|
|
script: './hack/deploy.sh "frantech-las01" ""'
|
|
environment:
|
|
name: frantech-las01
|
|
|
|
frantech-lux01:
|
|
extends: .deploy
|
|
resource_group: frantech-lux01
|
|
script: './hack/deploy.sh "frantech-lux01" ""'
|
|
environment:
|
|
name: frantech-lux01
|
|
|
|
frantech-nyc01:
|
|
extends: .deploy
|
|
resource_group: frantech-nyc01
|
|
script: './hack/deploy.sh "frantech-nyc01" ""'
|
|
environment:
|
|
name: frantech-nyc01
|
|
|
|
docker-push:
|
|
stage: deploy
|
|
tags:
|
|
# We run this on cacher instead, because disk space.
|
|
- cacher
|
|
script: './hack/dockerpush.sh'
|