Skip to content

Commit 99b5e63

Browse files
authored
PIVOT-10924 Move backward compatibility tests to Java (#125)
* Move compatibility check to Java * Remove compatibility-check leftovers in CI * Use JDK21 on CI and update to 6.1.3 * Update fmt-maven-plugin to the version used in activepivot (which supports Java 21)
1 parent 17e03b1 commit 99b5e63

File tree

62 files changed

+446
-637
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+446
-637
lines changed

.circleci/config.yml

Lines changed: 2 additions & 112 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,10 @@ parameters:
77
base_ref:
88
type: string
99
default: NONE
10-
run_compatibility:
11-
type: boolean
12-
default: false
1310
executors:
1411
jdk11-docker:
1512
docker:
16-
- image: cimg/openjdk:17.0.13
13+
- image: cimg/openjdk:21.0.5
1714
environment:
1815
LANG: C.UTF-8
1916
LC_ALL: C.UTF-8
@@ -46,122 +43,15 @@ jobs:
4643
-v "$HOME/.m2/repository:/tmp/repository" \
4744
-v "$PWD:/home/circleci/mac" \
4845
-w /home/circleci/mac -u root \
49-
cimg/openjdk:17.0.13 \
46+
cimg/openjdk:21.0.5 \
5047
mvn package --settings .circleci/circleci-settings.xml -Dmaven.repo.local=/tmp/repository
5148
- save_cache:
5249
paths: [ ~/.m2/repository ]
5350
key: mac-java-{{ .Branch }}-{{ checksum "pom.xml" }}
5451

55-
launch_compatibility_checks:
56-
executor: vm
57-
resource_class: medium
58-
steps:
59-
- unless:
60-
condition: <<pipeline.parameters.run_compatibility>>
61-
steps:
62-
- run:
63-
name: Fail if no compatibility enabled
64-
command: exit 1
65-
- when:
66-
condition: <<pipeline.parameters.run_compatibility>>
67-
steps:
68-
- checkout
69-
# Somehow fails on ubuntu 20.04 (https://askubuntu.com/questions/1240056/unable-to-install-libxml2-utils-on-ubuntu-20-04-wsl)
70-
# - run:
71-
# name: Try downloading xmllint
72-
# command: sudo apt-get install libxml2-utils
73-
- run:
74-
name: Compatibility enabled, fetch matching releases using artifacts.activeviam.com
75-
command: bash ./scripts/get_compatible_ap_releases.sh
76-
compatibility_check:
77-
executor: vm
78-
resource_class: large
79-
working_directory: ~/mac
80-
parameters:
81-
ap-version:
82-
type: string
83-
steps:
84-
- checkout
85-
- restore_cache:
86-
keys:
87-
- mac-java-{{ .Branch }}-{{ checksum "pom.xml" }}
88-
- mac-java-{{ .Branch }}-
89-
- mac-java-
90-
- mac-export-<< parameters.ap-version >>-{{ checksum "pom.xml" }}
91-
- run:
92-
name: "Run sandbox memory export"
93-
command: |
94-
sudo sysctl -w vm.overcommit_memory=1 && \
95-
# using cached exports if available
96-
if [[ ! -d ${PWD}/target/exported_statistics || -z $(ls -A ${PWD}/target/exported_statistics) ]]; then
97-
echo "No available export cache : Run sandbox export script."
98-
bash ./scripts/sandbox_export_generator.sh << parameters.ap-version >> "${ARTIFACTS_READER}:${ARTIFACTS_PWD}"
99-
else
100-
echo "Use available export cache."
101-
fi
102-
- run:
103-
name: "Run checks on export"
104-
command: bash ./scripts/mac_export_load.sh $(cat ./logs/jmxterm.log | tail -1) << parameters.ap-version >>
105-
- store_artifacts:
106-
path: ./logs
107-
- save_cache:
108-
paths: [ target/exported_statistics ]
109-
key: mac-export-<< parameters.ap-version >>-{{ checksum "pom.xml" }}
11052
workflows:
11153
version: 2
11254
check:
11355
jobs:
11456
- build_and_test:
11557
context: rnd-server
116-
- launch_compatibility_checks:
117-
context: rnd-server
118-
requires:
119-
- build_and_test
120-
- compatibility_check:
121-
matrix:
122-
parameters:
123-
ap-version: [
124-
"5.9.0",
125-
"5.9.1",
126-
"5.9.2",
127-
# The following two versions have their export broken (NPE on export)
128-
# "5.9.3",
129-
# "5.9.4",
130-
"5.9.5",
131-
"5.9.6",
132-
"5.9.7",
133-
"5.9.8",
134-
"5.9.9",
135-
"5.9.10",
136-
"5.9.11",
137-
"5.9.12",
138-
"5.9.13",
139-
# Early releases of the 5.10 sandbox have a dependency on a now removed Atoti UI snapshot : activeui:jar:5.0.0-beta-20210224125715-19abcee
140-
# "5.10.0",
141-
# "5.10.1",
142-
# "5.10.2",
143-
"5.10.3",
144-
"5.10.4",
145-
"5.10.5",
146-
"5.10.6",
147-
"5.10.7",
148-
"5.10.8",
149-
"5.10.9",
150-
"5.10.10",
151-
"5.10.11",
152-
"5.10.12",
153-
"5.10.13",
154-
# Early releases of the 5.11 sandbox have a dependency on a now removed Atoti UI snapshot : activeui:jar:5.0.4-20211117104705-da07c29
155-
# "5.11.0",
156-
"5.11.1",
157-
"5.11.2",
158-
"5.11.3",
159-
"5.11.4",
160-
"5.11.5",
161-
"6.0.0",
162-
"6.0.1",
163-
"6.0.2"
164-
]
165-
context: rnd-server
166-
requires:
167-
- launch_compatibility_checks

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.github/actions/circle-ci/action.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ runs:
99
steps:
1010
- run : |
1111
echo "PARAMETER_DATA=\"parameters\":{\
12-
\"run_compatibility\":${{ env.compatibility-check }},\
1312
\"head_ref\":\"${{ github.head_ref }}\",\
1413
\"base_ref\":\"${{ github.base_ref }}\"\
1514
}" >> $GITHUB_ENV

.github/actions/parser.bash

Lines changed: 0 additions & 9 deletions
This file was deleted.

.github/workflows/pr-steps-checker.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,6 @@ jobs:
7979
- name: Checkout Repository to run local actions
8080
uses: actions/checkout@v3.3.0 # Necessary to access local actions & files
8181

82-
- name: parse the PR description for the Test execution
83-
run: . ./.github/actions/parser.bash && parsePR compatibility-check
84-
8582
# LAUNCH CIRCLECI MAIN WORKFLOW
8683
# Reuse the existing "check" workflow of CircleCI but add the parameters to the payload
8784
- name: start Checks CI Pipeline
@@ -92,8 +89,7 @@ jobs:
9289
# RUN BLOCKER STEP
9390
- name: Parse the PR description for all mandatory steps
9491
run: echo "Run blocker parser"
95-
- if: ${{ contains(fromJson('["main"]'), github.event.pull_request.base.ref)
96-
&& !( env.compatibility-check == 'true' ) }}
92+
- if: ${{ contains(fromJson('["main"]'), github.event.pull_request.base.ref) }}
9793
# Failing step
9894
name: Block merge due to missing mandatory steps
9995
run: exit 1

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<properties>
2626
<jdk.version>21</jdk.version>
2727

28-
<atoti-server.version>6.1.4-1736843675-42834d84</atoti-server.version>
28+
<atoti-server.version>6.1.3</atoti-server.version>
2929

3030
<tomcat.version>10.1.30</tomcat.version>
3131

@@ -249,9 +249,9 @@
249249
</plugin>
250250

251251
<plugin>
252-
<groupId>com.coveo</groupId>
252+
<groupId>com.spotify.fmt</groupId>
253253
<artifactId>fmt-maven-plugin</artifactId>
254-
<version>2.9</version>
254+
<version>2.24</version>
255255
<executions>
256256
<execution>
257257
<phase>none</phase>

scripts/get_compatible_ap_releases.sh

Lines changed: 0 additions & 14 deletions
This file was deleted.

0 commit comments

Comments
 (0)