Skip to content

Commit c065aa6

Browse files
authored
UIFR-226: Added support for Bamboo Specs. (#88)
* UIFR-226: Added support for Bamboo Specs. * UIFR-226: Disable forced clean builds and remove permissions resolution tasks
1 parent 394413d commit c065aa6

File tree

1 file changed

+267
-0
lines changed

1 file changed

+267
-0
lines changed

bamboo-specs/bamboo.yml

Lines changed: 267 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,267 @@
1+
---
2+
version: 2
3+
plan:
4+
project-key: UIFR
5+
key: UFL
6+
name: UI Framework Latest
7+
stages:
8+
- Default Stage:
9+
manual: false
10+
final: false
11+
jobs:
12+
- Build and Test JDK 17
13+
- Build and Test JDK 24
14+
- Build and Test JDK 21
15+
- Build and Test JDK 8
16+
- Build and Test JDK 11
17+
- Deploy:
18+
manual: false
19+
final: false
20+
jobs:
21+
- Deploy to Maven
22+
- Release:
23+
manual: true
24+
final: false
25+
jobs:
26+
- Release to Maven
27+
Build and Test JDK 17:
28+
key: BTJ17
29+
tasks:
30+
- checkout:
31+
force-clean-build: 'false'
32+
description: Checkout default repository
33+
- script:
34+
interpreter: SHELL
35+
scripts:
36+
- |-
37+
#!/bin/bash -eu
38+
39+
set -x
40+
41+
export IMAGE="maven:3.9.9-amazoncorretto-17"
42+
43+
docker pull ${IMAGE}
44+
45+
docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn clean package && chmod -R 777 .'
46+
description: Build and test
47+
artifact-subscriptions: []
48+
Build and Test JDK 24:
49+
key: BTJ24
50+
tasks:
51+
- checkout:
52+
force-clean-build: 'false'
53+
description: Checkout default repository
54+
- script:
55+
interpreter: SHELL
56+
scripts:
57+
- |-
58+
#!/bin/bash -eu
59+
60+
set -x
61+
62+
export IMAGE="maven:3.9.9-amazoncorretto-24"
63+
64+
docker pull ${IMAGE}
65+
66+
docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn clean package && chmod -R 777 .'
67+
description: Build and test
68+
artifact-subscriptions: []
69+
Build and Test JDK 21:
70+
key: BTJ21
71+
tasks:
72+
- checkout:
73+
force-clean-build: 'false'
74+
description: Checkout default repository
75+
- script:
76+
interpreter: SHELL
77+
scripts:
78+
- |-
79+
#!/bin/bash -eu
80+
81+
set -x
82+
83+
export IMAGE="maven:3.9.9-amazoncorretto-21"
84+
85+
docker pull ${IMAGE}
86+
87+
docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn clean package && chmod -R 777 .'
88+
description: Build and test
89+
artifact-subscriptions: []
90+
Build and Test JDK 8:
91+
key: BTJ8
92+
tasks:
93+
- checkout:
94+
force-clean-build: 'false'
95+
description: Checkout default repository
96+
- script:
97+
interpreter: SHELL
98+
scripts:
99+
- |-
100+
#!/bin/bash -eu
101+
102+
set -x
103+
104+
export IMAGE="maven:3.9.9-amazoncorretto-8"
105+
106+
docker pull ${IMAGE}
107+
108+
docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn clean package && chmod -R 777 .'
109+
description: Build and test
110+
artifact-subscriptions: []
111+
Build and Test JDK 11:
112+
key: BTJ11
113+
tasks:
114+
- checkout:
115+
force-clean-build: 'false'
116+
description: Checkout default repository
117+
- script:
118+
interpreter: SHELL
119+
scripts:
120+
- |-
121+
#!/bin/bash -eu
122+
123+
set -x
124+
125+
export IMAGE="maven:3.9.9-amazoncorretto-11"
126+
127+
docker pull ${IMAGE}
128+
129+
docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn clean package && chmod -R 777 .'
130+
description: Build and test
131+
artifact-subscriptions: []
132+
Deploy to Maven:
133+
key: DTM
134+
tasks:
135+
- checkout:
136+
force-clean-build: 'false'
137+
description: Checkout default repository
138+
- script:
139+
interpreter: SHELL
140+
scripts:
141+
- |-
142+
#!/bin/bash -eu
143+
144+
set -x
145+
146+
export IMAGE=${bamboo.build.docker.image.id}
147+
148+
docker pull ${IMAGE}
149+
150+
docker run -v m2-repo:/root/.m2/repository -v ~/.m2/settings.xml:/.m2/settings.xml:ro -v ${PWD}:/module --rm -w="/module" ${IMAGE} bash -c 'mvn deploy -DskipTests --settings /.m2/settings.xml'
151+
description: Deploy
152+
artifact-subscriptions: []
153+
Release to Maven:
154+
key: RTM
155+
tasks:
156+
- checkout:
157+
force-clean-build: 'false'
158+
description: Checkout Default Repository
159+
- checkout:
160+
repository: Git
161+
path: release-scripts
162+
force-clean-build: 'false'
163+
description: Checkout Default Repository
164+
- script:
165+
interpreter: SHELL
166+
scripts:
167+
- |-
168+
#!/bin/bash -eu
169+
170+
set -x
171+
172+
export IMAGE=${bamboo.build.docker.image.id}
173+
174+
docker pull ${IMAGE}
175+
176+
docker run \
177+
-v m2-repo:/root/.m2/repository \
178+
-v ~/.m2/settings.xml:/root/.m2/settings.xml:ro \
179+
-v ${PWD}:/module \
180+
-v ~/.ssh/github:/root/.ssh:ro \
181+
-e GIT_USER_NAME=$GIT_USER_NAME \
182+
-e GIT_USER_EMAIL=$GIT_USER_EMAIL \
183+
-e GIT_SSH_COMMAND='ssh -i /root/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
184+
--rm \
185+
-w='/module' \
186+
${IMAGE} \
187+
bash -c '
188+
yum -y install git &&
189+
yum clean all &&
190+
git config --global user.email "$GIT_USER_EMAIL" &&
191+
git config --global user.name "$GIT_USER_NAME" &&
192+
git config --global --add safe.directory /module &&
193+
./release-scripts/release-prepare-perform.sh \
194+
-r ${bamboo.maven.release.version} \
195+
-d ${bamboo.maven.development.version} \
196+
-e ${bamboo.planRepository.repositoryUrl}
197+
'
198+
environment: GIT_USER_NAME=${bamboo.git.user.name} GIT_USER_EMAIL=${bamboo.git.user.email}
199+
description: Release prepare perform
200+
- any-task:
201+
plugin-key: com.atlassian.bamboo.plugins.variable.updater.variable-updater-generic:variable-extractor
202+
configuration:
203+
variable: maven.release.version
204+
removeSnapshot: 'true'
205+
variableScope: PLAN
206+
description: Save next release version
207+
- any-task:
208+
plugin-key: com.atlassian.bamboo.plugins.variable.updater.variable-updater-generic:variable-extractor
209+
configuration:
210+
variable: maven.development.version
211+
variableScope: JOB
212+
description: Retrieve next snaphot version
213+
artifact-subscriptions: []
214+
variables:
215+
build.docker.image.id: openmrs/openmrs-core:dev-amazoncorretto-21
216+
maven.development.version: 4.1.0-SNAPSHOT
217+
maven.release.version: 4.0.1
218+
repositories:
219+
- Git:
220+
type: git
221+
url: https://github.com/openmrs/openmrs-module-uiframework.git
222+
branch: master
223+
command-timeout-minutes: '180'
224+
lfs: 'false'
225+
verbose-logs: 'true'
226+
use-shallow-clones: 'false'
227+
cache-on-agents: 'false'
228+
submodules: 'false'
229+
ssh-key-applies-to-submodules: 'false'
230+
fetch-all: 'false'
231+
- Release scripts:
232+
scope: global
233+
triggers:
234+
- polling:
235+
period: '180'
236+
repositories:
237+
- Git
238+
branches:
239+
create: manually
240+
delete: never
241+
link-to-jira: true
242+
notifications:
243+
- events:
244+
- job-failed
245+
recipients:
246+
- committers
247+
- emails:
248+
- dev-refapp@openmrs.org
249+
labels:
250+
- refapp
251+
dependencies:
252+
require-all-stages-passing: false
253+
enabled-for-branches: true
254+
block-strategy: none
255+
plans: []
256+
other:
257+
concurrent-build-plugin: system-default
258+
---
259+
version: 2
260+
plan:
261+
key: UIFR-UFL
262+
plan-permissions:
263+
- roles:
264+
- anonymous
265+
permissions:
266+
- view
267+
...

0 commit comments

Comments
 (0)