kind: pipeline name: build type: docker platform: os: linux arch: amd64 steps: # - name: build # image: plugins/docker # when: # branch: # - develop # settings: # dockerfile: docker/Dockerfile # 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 settings: user: from_secret: rsync_user key: from_secret: rsync_key port: from_secret: rsync_port secrets: - source: rsync_host target: plugin_hosts source: ./ target: ${BUILD_PATH}/${DRONE_BRANCH} include: - "docker/docker-compose.yml" prescript: - echo ${RSYNC_HOST} - rm -rf $${BUILD_PATH}/${DRONE_BRANCH} - mkdir -p $${BUILD_PATH}/${DRONE_BRANCH} exclude: - "*" - name: deploy image: appleboy/drone-ssh when: branch: - develop environment: BUILD_PATH: from_secret: build_path ENV_PATH: from_secret: env_path 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] script_stop: true script: - DRONE_BRANCH=${DRONE_BRANCH} CONFIG_PATH=${ENV_PATH}/${DRONE_BRANCH}/config.yml docker-compose -f ./docker/docker-compose.yml --env-file ${ENV_PATH}/${DRONE_BRANCH}/.env build - DRONE_BRANCH=${DRONE_BRANCH} CONFIG_PATH=${ENV_PATH}/${DRONE_BRANCH}/config.yml docker-compose -f ./docker/docker-compose.yml --env-file ${ENV_PATH}/${DRONE_BRANCH}/.env up -d