kind: pipeline
type: docker
name: deploy

clone:
  disable: true

steps:
- name: notif build start
  image: appleboy/drone-discord
  settings:
    webhook_id:
      from_secret: discord_webhook_id
    webhook_token:
      from_secret: discord_webhook_token
    username: "Drone Princelle (ERP: back)"
    avatar_url: https://s3.princelle.org/share/drone-ci.png
    message: >
      🚀 Starting deployment of **{{ repo.name }}** repo (*ERP*)...

      
      **Commit from {{commit.author}} on {{commit.branch}}:** 
      
      {{commit.message}}

      {{ build.link }}


- name: pull
  image: appleboy/drone-ssh
  settings:
    host: flash.princelle.org
    username: mprincelle
    port: 22
    key:
      from_secret: ci_key
    script:
      - cd /app/uni/erp/back
      - git fetch --all
      - git reset --hard origin/master
      - git pull

- name: configure
  image: appleboy/drone-ssh
  settings:
    host: flash.princelle.org
    username: mprincelle
    port: 22
    key:
      from_secret: ci_key
    script:
      - cd /app/uni/erp/back
      - echo -e "\napi.key=theapikey" >> src/main/resources/application.properties
      - echo -e "api.key=theapikey" > src/main/resources/apikey.properties
      - echo -e "APP_PORT=2001" > .env

- name: build
  image: appleboy/drone-ssh
  settings:
    host: flash.princelle.org
    username: mprincelle
    port: 22
    key:
      from_secret: ci_key
    script:
      - cd /app/uni/erp/back
      - docker-compose up -d
      - docker-compose restart app


- name: notif deploy done
  image: appleboy/drone-discord
  settings:
    webhook_id:
      from_secret: discord_webhook_id
    webhook_token:
      from_secret: discord_webhook_token
    username: "Drone Princelle (ERP: back)"
    avatar_url: https://s3.princelle.org/share/drone-ci.png
    message: >
      ✅ Successfully deployed **{{ repo.name }}** repo (*ERP*) on Princelle Cloud!

      
      **Commit from {{commit.author}} on {{commit.branch}}:** 
      
      {{commit.message}}

      **App URL:** https://back.erp.uni.princelle.org/ 

      {{ build.link }}
  when:
    status:
    - success

- name: notif deploy failure
  image: appleboy/drone-discord
  settings:
    webhook_id:
      from_secret: discord_webhook_id
    webhook_token:
      from_secret: discord_webhook_token
    username: "Drone Princelle (ERP: back)"
    avatar_url: https://s3.princelle.org/share/drone-ci.png
    message: >
        ⚠️ Error on deploying **{{ repo.name }}** repo (*ERP*) on Princelle Cloud...

        
        **Commit from {{commit.author}} on {{commit.branch}}:** 
        
        {{commit.message}}

        {{ build.link }}
  when:
    status:
    - failure


trigger:
  branch:
  - master
