Skip to content

Commit 7ef68de

Browse files
committed
MLE-23398 Trying to fix Jenkins
Need to use the latest 12 image so that the vector tests pass.
1 parent da25679 commit 7ef68de

File tree

3 files changed

+55
-25
lines changed

3 files changed

+55
-25
lines changed

Jenkinsfile

Lines changed: 47 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,63 @@
11
@Library('shared-libraries') _
2+
23
pipeline{
4+
35
agent none;
6+
47
environment{
5-
JAVA_HOME_DIR="/home/builder/java/jdk-11.0.2"
8+
JAVA_HOME_DIR="/home/builder/java/jdk-17.0.2"
69
GRADLE_DIR =".gradle"
710
}
11+
812
options {
913
checkoutToSubdirectory 'marklogic-python-client'
10-
buildDiscarder logRotator(artifactDaysToKeepStr: '7', artifactNumToKeepStr: '', daysToKeepStr: '30', numToKeepStr: '')
14+
buildDiscarder logRotator(artifactDaysToKeepStr: '7', artifactNumToKeepStr: '', daysToKeepStr: '30', numToKeepStr: '5')
1115
}
16+
1217
stages{
1318
stage('tests'){
1419
agent {label 'devExpLinuxPool'}
1520
steps{
16-
script{
17-
copyRPM 'Latest','11'
18-
setUpML '$WORKSPACE/xdmp/src/Mark*.rpm'
19-
sh label:'deploy project', script: '''#!/bin/bash
20-
export JAVA_HOME=$JAVA_HOME_DIR
21-
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
22-
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
23-
cd marklogic-python-client/test-app
24-
./gradlew -i mlDeploy -PmlPassword=admin
25-
'''
26-
sh label:'Run tests', script: '''#!/bin/bash
27-
cd marklogic-python-client
28-
python -m venv .venv;
29-
source .venv/bin/activate;
30-
pip install poetry;
31-
poetry install;
32-
pytest --junitxml=TestReport.xml || true
33-
'''
34-
junit 'marklogic-python-client/TestReport.xml'
35-
}
21+
cleanupDocker()
22+
sh label:'mlsetup', script: '''#!/bin/bash
23+
echo "Removing any running MarkLogic server and clean up MarkLogic data directory"
24+
sudo /usr/local/sbin/mladmin remove
25+
docker-compose down -v || true
26+
sudo /usr/local/sbin/mladmin cleandata
27+
cd marklogic-python-client/test-app
28+
MARKLOGIC_LOGS_VOLUME=/tmp docker-compose up -d --build
29+
'''
30+
sh label:'deploy project', script: '''#!/bin/bash
31+
export JAVA_HOME=$JAVA_HOME_DIR
32+
export GRADLE_USER_HOME=$WORKSPACE/$GRADLE_DIR
33+
export PATH=$GRADLE_USER_HOME:$JAVA_HOME/bin:$PATH
34+
cd marklogic-python-client/test-app
35+
echo "Waiting for MarkLogic server to initialize."
36+
sleep 60s
37+
./gradlew -i mlDeploy -PmlPassword=admin
38+
'''
39+
// 'set -e' causes the script to fail if any command fails.
40+
sh label:'Run tests', script: '''#!/bin/bash
41+
set -e
42+
cd marklogic-python-client
43+
python -m venv .venv;
44+
source .venv/bin/activate;
45+
pip install poetry;
46+
poetry install;
47+
pytest --junitxml=TestReport.xml || true
48+
'''
49+
junit 'marklogic-python-client/TestReport.xml'
50+
}
51+
post{
52+
always{
53+
updateWorkspacePermissions()
54+
sh label:'mlcleanup', script: '''#!/bin/bash
55+
cd marklogic-python-client/test-app
56+
docker-compose down -v || true
57+
'''
58+
cleanupDocker()
59+
}
3660
}
3761
}
3862
}
39-
}
63+
}

test-app/.env

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Defines environment variables for docker-compose.
2+
# Can be overridden via e.g. `MARKLOGIC_IMAGE=latest-10.0 docker-compose up -d --build`.
3+
MARKLOGIC_IMAGE=ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi:latest-12
4+
5+
# Defaults to a useful value for local development.
6+
MARKLOGIC_LOGS_VOLUME=./docker/marklogic/logs

test-app/docker-compose.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ name: docker-tests-marklogic_python
33
services:
44

55
marklogic:
6-
image: "ml-docker-db-dev-tierpoint.bed-artifactory.bedford.progress.com/marklogic/marklogic-server-ubi-rootless:latest-12"
6+
image: "${MARKLOGIC_IMAGE}"
77
platform: linux/amd64
88
environment:
99
- INSTALL_CONVERTERS=true
1010
- MARKLOGIC_INIT=true
1111
- MARKLOGIC_ADMIN_USERNAME=admin
1212
- MARKLOGIC_ADMIN_PASSWORD=admin
1313
volumes:
14-
- ./docker/marklogic/logs:/var/opt/MarkLogic/Logs
14+
- ${MARKLOGIC_LOGS_VOLUME}:/var/opt/MarkLogic/Logs
1515
ports:
1616
- "8000-8002:8000-8002"
1717
- "8030-8031:8030-8031"

0 commit comments

Comments
 (0)