-
Notifications
You must be signed in to change notification settings - Fork 1
133 lines (128 loc) · 3.96 KB
/
build.yaml
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
name: Build, Test, and Deliver Client
env:
do_sonarscan: ${{ github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository }}
on:
pull_request:
push:
branches:
- main
- release/[0-9]+.[0-9]+.[0-9]+
release:
types: [created]
jobs:
lib:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./lib
timeout-minutes: 5
steps:
- name: Dump job context
env:
JOB_CONTEXT: ${{ toJson(job) }}
run: echo "$JOB_CONTEXT"
- run: tilt ci
# - uses: actions/checkout@v3
# with:
# fetch-depth: ${{ !fromJSON(env.do_sonarscan) && 1 || 0 }}
# - uses: actions/setup-node@v3
# with:
# node-version: '18'
# cache: 'npm'
# cache-dependency-path: './lib/package-lock.json'
# - run: npm ci
# - run: npm test
# - uses: fingerprintjs/action-coverage-report-md@v1
# id: coverage-md
# with:
# srcBasePath: './'
# textReportPath: './lib/coverage/coverage.txt'
# - run: echo "${MARKDOWN_REPORT}" >> $GITHUB_STEP_SUMMARY
# env:
# MARKDOWN_REPORT: "${{ steps.coverage-md.outputs.markdownReport }}"
# - run: npm audit --omit dev && npm audit --audit-level high
# - run: npm run license-check
# - run: npm run lint
# - run: npm pack
# - uses: actions/upload-artifact@v3
# with:
# name: opentdf-client-lib
# path: ./lib/opentdf-client-*.tgz
# - name: SonarCloud Scan
# if: fromJSON(env.do_sonarscan)
# uses: SonarSource/sonarcloud-github-action@master
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# web-app:
# needs:
# - lib
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: ./web-app
# timeout-minutes: 5
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-node@v3
# with:
# node-version: '18'
# cache: 'npm'
# cache-dependency-path: './web-app/package-lock.json'
# - uses: actions/download-artifact@v3
# with:
# name: opentdf-client-lib
# path: lib/
# - run: npm uninstall @opentdf/client && npm ci && npm i ../lib/opentdf-client-*.tgz
# - run: npm install
# - run: npm test
# - run: npm audit --omit dev && npm audit --audit-level high
# - run: npm run license-check
# - run: npm run lint
# - run: npm pack
# backend-roundtrip:
# needs:
# - web-app
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: .github/workflows/roundtrip
# timeout-minutes: 45
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-node@v3
# with:
# node-version: '18'
# cache: 'npm'
# cache-dependency-path: './web-app/package-lock.json'
# - uses: actions/download-artifact@v3
# with:
# name: opentdf-client-lib
# path: lib/
# - uses: yokawasa/[email protected]
# with:
# setup-tools: |
# kubectl
# helm
# tilt
# # This should be in sync with the minikube-deployed kube version below
# kubectl: '1.30.0'
# helm: '3.14.4'
# tilt: '0.33.13'
# - run: |
# kubectl version --client
# kustomize version
# tilt version
# - name: start minikube
# id: minikube
# uses: medyagh/setup-minikube@master
# with:
# minikube-version: 1.33.0
# # This should be in sync with the setup-tools version above
# kubernetes-version: 1.30.0
# - name: Run tilt ci
# env:
# TEST_SCRIPT: ${{ }}/wait-and-test.sh
# OPENTDF_INGRESS_HOST_PORT: "5432"
# PLAYWRIGHT_TESTS_TO_RUN: roundtrip
# run: tilt ci