# 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"
  tags:
    - cacher

.deploy:
  stage: deploy
  tags:
    - deployer

marukuru:
  extends: .deploy
  #resource_group: marukuru
  script: './hack/deploy.sh "marukuru" "-p 20022"'

clouvider-fra01:
  extends: .deploy
  #resource_group: clouvider-fra01
  script: './hack/deploy.sh "clouvider-fra01" ""'

kusakabe:
  extends: .deploy
  #resource_group: kusakabe
  script: './hack/deploy.sh "kusakabe" ""'

clouvider-lon01:
  extends: .deploy
  script: './hack/deploy.sh "clouvider-lon01" ""'

totoro:
  extends: .deploy
  script: './hack/deploy.sh "totoro" ""'

swann:
  extends: .deploy
  script: './hack/deploy.sh "swann" ""'

etheroute-lon01:
  extends: .deploy
  script: './hack/deploy.sh "etheroute-lon01" ""'

blade-janeway:
  extends: .deploy
  script: './hack/deploy.sh "blade-janeway" ""'

# chakotay and kim are not autodeployed because they're usually off.
#blade-chakotay:
#  extends: .deploy
#  script: './hack/deploy.sh "blade-chakotay" ""'
#
#blade-kim:
#  extends: .deploy
#  script: './hack/deploy.sh "blade-kim" ""'

# paris and tuvok are not autodeployed because they are the routers, and I don't trust myself
#blade-paris:
#  extends: .deploy
#  script: './hack/deploy.sh "blade-paris" ""'
#
#blade-tuvok:
#  extends: .deploy
#  script: './hack/deploy.sh "blade-tuvok" ""'

blade-torres:
  extends: .deploy
  script: './hack/deploy.sh "blade-torres" ""'

docker-push:
  stage: deploy
  tags:
    - deployer
  script: './hack/dockerpush.sh'