labels: backend: local matrix: include: - TYPE: dev MAKE_TARGET: build-dev SSH_TARGET: ssh_target_dev - TYPE: prod MAKE_TARGET: build-prod SSH_TARGET: ssh_target # Run the correct matrix build on the correct branch when: evaluate: | ((CI_COMMIT_BRANCH == CI_REPO_DEFAULT_BRANCH) == ("${TYPE}" == "prod")) steps: - name: check image: bash commands: - nix flake check - name: build (${TYPE}) image: bash commands: # If dev, include drafts and future articles, change base URL - nix develop -c make ${MAKE_TARGET} - name: deploy (${TYPE}) image: bash environment: # Trailing slash to synchronize the folder's *content* to the target SYNC_SOURCE: public/ SYNC_KEY: from_secret: ssh_key SYNC_PORT: from_secret: ssh_port SYNC_TARGET: from_secret: ${SSH_TARGET} SYNC_USERNAME: from_secret: ssh_user SYNC_HOST: from_secret: ssh_host commands: - "nix run github:ambroisie/nix-config#drone-rsync" - name: notify image: bash environment: ADDRESS: from_secret: matrix_homeserver ROOM: from_secret: matrix_roomid USER: from_secret: matrix_username PASS: from_secret: matrix_password commands: - nix run github:ambroisie/matrix-notifier when: status: - failure - success