-
Notifications
You must be signed in to change notification settings - Fork 0
/
buildspec-slack.yml
33 lines (32 loc) · 1.21 KB
/
buildspec-slack.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#snyk to html
version: 0.2
env:
parameter-store:
# Requires that you have a secure string in the paramter store in AWS Systems Manager
SNYK_TOKEN: "SNYK_TOKEN"
SLACK_TOKEN: "SLACK_API_TOKEN"
variables:
SLACK_POST_SCRIPT: |
import os
import requests
url = 'https://slack.com/api/files.upload'
my_file = {'file' : ('results.pdf', open('results.pdf', 'rb'), 'pdf')}
payload = {'filename':'results.pdf', 'token': os.getenv('SLACK_TOKEN'), 'channels': ['#notification-aws-codebuild']}
response = requests.post(url, params=payload, files=my_file)
print(response.text)
phases:
install:
commands:
- npm install -g snyk
- npm install -g snyk-to-html
- apt-get update && apt-get install -y wget xfonts-75dpi
- cd /tmp && wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
- dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb || true
- apt-get -f install -y && cd -
build:
commands:
- npm install
- npm test # Run your unit tests, etc
- snyk test --json | snyk-to-html -o results.html
- wkhtmltopdf results.html results.pdf
- python -c "${SLACK_POST_SCRIPT}"