--- alerts: &alerts on_failure: put: alert-email params: &email-params subject_text: "${BUILD_PIPELINE_NAME} (${BUILD_JOB_NAME}): build ${BUILD_ID} failed!" body_text: | ${BUILD_NAME} failed! Build ID: ${BUILD_ID} Build Name: ${BUILD_NAME} Build Job Name: ${BUILD_JOB_NAME} Build Pipeline Name: ${BUILD_PIPELINE_NAME} ATC External URL: ${ATC_EXTERNAL_URL} Direct link: ${ATC_EXTERNAL_URL}/${BUILD_PIPELINE_NAME}/jobs/${BUILD_JOB_NAME}/builds/${BUILD_NAME} on_error: put: alert-email params: *email-params resource_types: - name: email type: docker-image source: repository: pcfseceng/email-resource resources: - name: hm-extra type: git icon: git source: uri: https://git.segundo.io/nix/hm-extra branch: master - name: concourse type: git icon: toolbox source: uri: https://git.segundo.io/concourse - name: daily-trigger type: time icon: clock-fast source: interval: 24h - name: alert-email type: email source: smtp: host: ((alerts-stmp-host)) port: "((alerts-stmp-port))" # this must be a string username: ((alerts-stmp-username)) password: ((alerts-stmp-password)) from: ((alerts-from)) to: ["((alerts-to))"] jobs: - name: linters <<: *alerts serial: true plan: - in_parallel: fail_fast: true steps: - get: hm-extra trigger: true - get: concourse trigger: true - get: daily-trigger trigger: true - in_parallel: fail_fast: false steps: - task: deadnix file: concourse/tasks/deadnix/task.yml input_mapping: file-paths: hm-extra - task: statix file: concourse/tasks/statix/task.yml input_mapping: file-path: hm-extra - task: nixpkgs-fmt file: concourse/tasks/nixpkgs-fmt/task.yml input_mapping: file-path: hm-extra