---
kind: pipeline
name: deploy
steps:
  - name: kustomize build dashboard (prod + staging)
    image: git.ar21.de/aaron/kustomize-ci
    commands:
      - cd /deployment-repo
      - git clone https://git.ar21.de/yolokube/core-deployments.git .
      - cd /deployment-repo/dashboard/overlays/prod
      - kustomize build -o /deployment-repo/dashboard/prod/dashboard.yaml
      - cd /deployment-repo/dashboard/overlays/staging
      - kustomize build -o /deployment-repo/dashboard/staging/dashboard.yaml
    volumes:
      - name: deployment-repo
        path: /deployment-repo
    when:
      branch:
        - main
      event:
        - push
  - name: kustomize build dashboard (staging)
    image: git.ar21.de/aaron/kustomize-ci
    commands:
      - cd /deployment-repo
      - git clone https://git.ar21.de/yolokube/core-deployments.git .
      - cd /staging-repo
      - git clone -b $DRONE_BRANCH https://git.ar21.de/yolokube/core-deployments.git .
      - cd /staging-repo/dashboard/overlays/staging
      - kustomize build -o /deployment-repo/dashboard/staging/dashboard.yaml
    volumes:
      - name: deployment-repo
        path: /deployment-repo
      - name: staging-repo
        path: /staging-repo
    when:
      branch:
        exclude:
          - main
      event:
        - push
  - name: kustomize push dashboard changes (prod + staging)
    image: appleboy/drone-git-push
    settings:
      branch: main
      remote: ssh://git@git.ar21.de:2222/yolokube/core-deployments.git
      path: /deployment-repo
      force: false
      commit: true
      commit_message: "KUSTOMIZE BUILD: rebuild dashboard deployment with kustomize ${DRONE_BUILD_NUMBER} (done automagically via Drone pipeline) [CI SKIP]"
      ssh_key:
        from_secret: GITEA_SSH_KEY
    volumes:
      - name: deployment-repo
        path: /deployment-repo
    when:
      branch:
        - main
      event:
        - push
  - name: kustomize push dashboard changes (staging)
    image: appleboy/drone-git-push
    settings:
      branch: main
      remote: ssh://git@git.ar21.de:2222/yolokube/core-deployments.git
      path: /deployment-repo
      force: false
      commit: true
      commit_message: "KUSTOMIZE BUILD STAGING: rebuild dashboard deployment with kustomize ${DRONE_BUILD_NUMBER} [CI SKIP]"
      ssh_key:
        from_secret: GITEA_SSH_KEY
    volumes:
      - name: deployment-repo
        path: /deployment-repo
    when:
      branch:
        exclude:
          - main
      event:
        - push
volumes:
  - name: deployment-repo
    temp: {}
  - name: staging-repo
    temp: {}
when:
  event:
    exclude:
      - pull_request