kind: pipeline
name: build
type: docker

platform:
  os: linux
  arch: amd64

steps:
  - name: build
    image: plugins/docker
    when:
      branch:
        - develop
    settings:
      dockerfile: docker/Dockerfile
      tag:
        - ${DRONE_BRANCH}
      username:
        from_secret: docker_login
      password:
        from_secret: docker_password
      repo:
        from_secret: docker_repo
      registry:
        from_secret: docker_registry
  - name: upload
    image: drillster/drone-rsync
    when:
      branch:
        - develop
    environment:
      BUILD_PATH:
        from_secret: build_path
      PLUGIN_ARGS: -zz -O --no-perms
      PLUGIN_HOSTS:
        from_secret: rsync_host
    settings:
      user:
        from_secret: rsync_user
      key:
        from_secret: rsync_key
      port:
        from_secret: rsync_port
      source: ./docker/
      target: $${BUILD_PATH}/${DRONE_BRANCH}
      include:
        - "docker-compose.yml"
#      exclude:
#        - "*"
  - name: deploy
    image: appleboy/drone-ssh
    when:
      branch:
        - develop
    environment:
      BUILD_PATH:
        from_secret: build_path
      ENV_PATH:
        from_secret: env_path
      DOCKER_REGISTRY:
        from_secret: docker_registry
      DOCKER_REPO:
        from_secret: docker_repo
    settings:
      port:
        from_secret: rsync_port
      host:
        from_secret: rsync_host
      username:
        from_secret: rsync_user
      key:
        from_secret: rsync_key
      envs: [build_path, env_path, docker_registry, docker_repo]
      script_stop: true
      script:
        - DRONE_BRANCH=${DRONE_BRANCH} CONFIG_PATH=$${ENV_PATH}/${DRONE_BRANCH}/config.yml DOCKER_REPO=$${DOCKER_REPO} docker-compose -f $${BUILD_PATH}/${DRONE_BRANCH}/docker-compose.yml --env-file $${ENV_PATH}/${DRONE_BRANCH}/.env build
        - DRONE_BRANCH=${DRONE_BRANCH} CONFIG_PATH=$${ENV_PATH}/${DRONE_BRANCH}/config.yml DOCKER_REPO=$${DOCKER_REPO} docker-compose -f $${BUILD_PATH}/${DRONE_BRANCH}/docker-compose.yml --env-file $${ENV_PATH}/${DRONE_BRANCH}/.env up -d