kind: pipeline
name: default

steps:
  - name: initial_notification
    image: plugins/slack
    settings:
      webhook:
        from_secret: slack_webhook
      template: >
        Repository: *{{repo.name}}*. Status: *Running*. Author: *{{build.author}}*. Build: *#{{build.number}}*. Branch: *{{build.branch}}*. Event: *{{build.event}}*. Logs: {{build.link}}

  - name: publish
    image: plugins/npm
    settings:
      token:
        from_secret: npm_token

  - name: build_status_notification
    image: plugins/slack
    settings:
      webhook:
        from_secret: slack_webhook
      template: >
        {{#success build.status}}
        Repository: *{{repo.name}}*. Status: *Completed*. Author: *{{build.author}}*. Build: *#{{build.number}}*. Branch: *{{build.branch}}*. Event: *{{build.event}}*. Logs: {{build.link}}
        {{else}}
        Repository: *{{repo.name}}*. Status: *Failed*. Author: *{{build.author}}*. Build: *#{{build.number}}*. Branch: *{{build.branch}}*. Event: *{{build.event}}*. Logs: {{build.link}}
        {{/success}}
    when:
      status: [success, failure]
trigger:
  event:
    - tag
