Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
247 changes: 247 additions & 0 deletions bamboo-specs/bamboo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,247 @@
---
version: 2
plan:
project-key: REP
key: REP
name: Reporting Module
description: More details of the release in https://wiki.openmrs.org/x/i4DTAw
stages:
- Build and Test:
manual: false
final: false
jobs:
- Build and Test JDK 8
- Build and Test JDK 17
- Build and Test JDK 11
- Build and Test JDK 24
- Build and Test JDK 21
- Deploy:
manual: false
final: false
jobs:
- Deploy to Maven
- Release:
manual: true
final: false
jobs:
- Release to Maven
Build and Test JDK 8:
key: BTJ8
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" maven:3.9.9-amazoncorretto-8 bash -c 'mvn clean package && chmod -R 777 .'
description: Build and test
artifact-subscriptions: []
Build and Test JDK 17:
key: BTJ17
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" maven:3.9.9-amazoncorretto-17 bash -c 'mvn clean package && chmod -R 777 .'
description: Build and test
artifact-subscriptions: []
Build and Test JDK 11:
key: BTJ11
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" maven:3.9.9-amazoncorretto-11 bash -c 'mvn clean package && chmod -R 777 .'
description: Build and test
artifact-subscriptions: []
Build and Test JDK 24:
key: BTJ24
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" maven:3.9.9-amazoncorretto-24 bash -c 'mvn clean package && chmod -R 777 .'
description: Build and test
artifact-subscriptions: []
Build and Test JDK 21:
key: BTJ21
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker run -v m2-repo:/root/.m2/repository -v ${PWD}:/module --rm -w="/module" maven:3.9.9-amazoncorretto-21 bash -c 'mvn clean package && chmod -R 777 .'
description: Build and test
artifact-subscriptions: []
Deploy to Maven:
key: DTM
tasks:
- checkout:
force-clean-build: 'false'
description: Checkout default repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker pull ${bamboo.build.docker.image.id}

docker run -v m2-repo:/root/.m2/repository -v ~/.m2/settings.xml:/.m2/settings.xml:ro -v ${PWD}:/module --rm -w="/module" ${bamboo.build.docker.image.id} bash -c 'mvn deploy -DskipTests --settings /.m2/settings.xml'
description: Deploy
artifact-subscriptions: []
Release to Maven:
key: RTMVN
tasks:
- checkout:
repository: Git
path: release-scripts
force-clean-build: 'false'
description: Checkout Default Repository
- script:
interpreter: SHELL
scripts:
- |-
#!/bin/bash -eu

set -x

docker pull ${bamboo.build.docker.image.id}

docker run \
-v m2-repo:/root/.m2/repository \
-v ~/.m2/settings.xml:/root/.m2/settings.xml:ro \
-v ${PWD}:/module \
-v ~/.ssh/github:/root/.ssh:ro \
-e GIT_USER_NAME=$GIT_USER_NAME \
-e GIT_USER_EMAIL=$GIT_USER_EMAIL \
-e GIT_SSH_COMMAND='ssh -i /root/.ssh/id_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' \
--rm \
-w='/module' \
${bamboo.build.docker.image.id} \
bash -c '
yum -y install git &&
yum clean all &&
git config --global user.email "$GIT_USER_EMAIL" &&
git config --global user.name "$GIT_USER_NAME" &&
git config --global --add safe.directory /module &&
./release-scripts/release-prepare-perform.sh \
-r ${bamboo.maven.release.version} \
-d ${bamboo.maven.development.version} \
-e ${bamboo.planRepository.repositoryUrl}
'
environment: GIT_USER_NAME=${bamboo.git.user.name} GIT_USER_EMAIL=${bamboo.git.user.email}
description: Release prepare perform
- any-task:
plugin-key: com.atlassian.bamboo.plugins.variable.updater.variable-updater-generic:variable-extractor
configuration:
variable: maven.release.version
removeSnapshot: 'true'
variableScope: PLAN
description: Save next release version
- any-task:
plugin-key: com.atlassian.bamboo.plugins.variable.updater.variable-updater-generic:variable-extractor
configuration:
variable: maven.development.version
variableScope: JOB
description: Retrieve next snaphot version
artifact-subscriptions: []
variables:
build.docker.image.id: maven:3.9.9-amazoncorretto-21
maven.development.version: ''
maven.release.version: 1.29.0
refapp.distro.property: reportingVersion
repositories:
- Git:
type: git
description: A Git Repository
url: https://github.com/openmrs/openmrs-module-reporting.git
branch: master
command-timeout-minutes: '180'
lfs: 'false'
verbose-logs: 'false'
use-shallow-clones: 'true'
cache-on-agents: 'false'
submodules: 'false'
ssh-key-applies-to-submodules: 'false'
fetch-all: 'false'
- Release scripts:
scope: global
triggers:
- polling:
period: '180'
repositories:
- Git
branches:
create: manually
delete: never
link-to-jira: true
notifications:
- events:
- job-failed
recipients:
- committers
- emails:
- [email protected]
labels:
- refapp
dependencies:
require-all-stages-passing: false
enabled-for-branches: true
block-strategy: block_if_parent_has_changes
plans:
- REFAPP-OMODDISTRO
- EMRAPI-EMRAPI
- REPREST-REPREST
- REPUI-REPUI
other:
concurrent-build-plugin: system-default
---
version: 2
plan:
key: REP-REP
plan-permissions:
- roles:
- anonymous
permissions:
- view
...