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: - cat $${ENV_PATH}/${DRONE_BRANCH}/.env > $${BUILD_PATH}/${DRONE_BRANCH}/.env - | echo -en "\nDRONE_BRANCH=${DRONE_BRANCH}\nCONFIG_PATH=$${ENV_PATH}/${DRONE_BRANCH}/config.yml\nDOCKER_REPO=$${DOCKER_REPO}\n"\ >> $${BUILD_PATH}/${DRONE_BRANCH}/.env - | docker-compose \ -f $${BUILD_PATH}/${DRONE_BRANCH}/docker-compose.yml \ --env-file $${BUILD_PATH}/${DRONE_BRANCH}/.env \ up -d --build