forked from jenkins-x/jx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
jenkins-x-bdd.yml
executable file
·126 lines (116 loc) · 5.52 KB
/
jenkins-x-bdd.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
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
buildPack: none
pipelineConfig:
pipelines:
pullRequest:
pipeline:
agent:
image: gcr.io/kaniko-project/executor:9912ccbf8d22bbafbf971124600fbb0b13b9cbd6
options:
containerOptions:
resources:
limits:
cpu: 4
memory: 6144Mi
requests:
cpu: 1
memory: 2048Mi
env:
- name: CODECOV_TOKEN
valueFrom:
secretKeyRef:
key: token
name: codecov-token
stages:
- name: build
environment:
- name: GIT_COMMITTER_EMAIL
value: jenkins-x@googlegroups.com
- name: GIT_AUTHOR_EMAIL
value: jenkins-x@googlegroups.com
- name: GIT_AUTHOR_NAME
value: jenkins-x-bot
- name: GIT_COMMITTER_NAME
value: jenkins-x-bot
- name: BASE_WORKSPACE
value: /workspace/source
- name: GOPROXY
value: http://jenkins-x-athens-proxy:80
- name: PARALLEL_BUILDS
value: "2"
# Build a binary that can emit coverage
- name: COVERED_BINARY
value: "true"
- name: CODECOV_NAME
value: e2e
- name: VERSION_PREFIX
value: covered-
- name: GOOGLE_APPLICATION_CREDENTIALS
value: /builder/home/kaniko-secret.json
steps:
- image: jenkinsxio/jx:1.3.963
command: jx
args:
- step
- credential
- -s
- kaniko-secret
- -k
- kaniko-secret
- -f
- /builder/home/kaniko-secret.json
- name: build-binary
image: docker.io/golang:1.11.5
command: make
args: ['linux']
- name: validate-binary
image: docker.io/golang:1.11.5
command: "./build/linux/jx"
args: ['help']
# Supported when we upgrade
#env:
#- name: COVER_JX_BINARY
# value: false
- name: build-and-push-image
command: /kaniko/executor
args: ['--dockerfile=/workspace/source/Dockerfile','--destination=gcr.io/jenkinsxio/jx:covered-${inputs.params.version}','--context=/workspace/source','--cache-repo=jenkins-x-docker-registry.jx.svc.cluster.local:5000/','--cache=true','--cache-dir=/workspace','--skip-tls-verify-registry=jenkins-x-docker-registry.jx.svc.cluster.local:5000']
- name: build-and-push-nodejs
command: /kaniko/executor
args: ['--dockerfile=/workspace/source/Dockerfile.builder-nodejs','--destination=gcr.io/jenkinsxio/builder-nodejs:covered-${inputs.params.version}','--context=/workspace/source','--cache-repo=jenkins-x-docker-registry.jx.svc.cluster.local:5000/','--cache=true','--cache-dir=/workspace','--skip-tls-verify-registry=jenkins-x-docker-registry.jx.svc.cluster.local:5000']
- name: build-and-push-maven
command: /kaniko/executor
args: ['--dockerfile=/workspace/source/Dockerfile.builder-maven','--destination=gcr.io/jenkinsxio/builder-maven:covered-${inputs.params.version}','--context=/workspace/source','--cache-repo=jenkins-x-docker-registry.jx.svc.cluster.local:5000/','--cache=true','--cache-dir=/workspace','--skip-tls-verify-registry=jenkins-x-docker-registry.jx.svc.cluster.local:5000']
- name: build-and-push-go
command: /kaniko/executor
args: ['--dockerfile=/workspace/source/Dockerfile.builder-go','--destination=gcr.io/jenkinsxio/builder-go:covered-${inputs.params.version}','--context=/workspace/source','--cache-repo=jenkins-x-docker-registry.jx.svc.cluster.local:5000/','--cache=true','--cache-dir=/workspace','--skip-tls-verify-registry=jenkins-x-docker-registry.jx.svc.cluster.local:5000']
- name: e2e-tests
environment:
- name: GIT_COMMITTER_EMAIL
value: jenkins-x@googlegroups.com
- name: GIT_AUTHOR_EMAIL
value: jenkins-x@googlegroups.com
- name: GIT_AUTHOR_NAME
value: jenkins-x-bot
- name: GIT_COMMITTER_NAME
value: jenkins-x-bot
- name: BASE_WORKSPACE
value: /workspace/source
- name: GOPROXY
value: http://jenkins-x-athens-proxy:80
- name: PARALLEL_BUILDS
value: "2"
# Build a binary that can emit coverage
- name: COVERED_BINARY
value: "true"
- name: CODECOV_NAME
value: e2e
- name: VERSION_PREFIX
value: covered-
steps:
- name: e2e-tests
image: gcr.io/jenkinsxio/builder-go:covered-${inputs.params.version}
command: ./jx/scripts/ci.sh
- name: stash-test-results
image: gcr.io/jenkinsxio/jx:covered-${inputs.params.version}
command: jx
# TODO force it to use the gs bucket until we sort out why the team setting gets wiped
args: ['step', 'stash', '-c', 'e2e-tests', '-p', 'build/reports/junit.xml', '--bucket-url', 'gs://jx-prod-logs']