This is an automated email from the ASF dual-hosted git repository.
GutoVeronezi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push:
new a945a7c203e Develocity integration (#14394)
a945a7c203e is described below
commit a945a7c203e95ce427b9e9954e971a3d3c9967b3
Author: Daniel Augusto Veronezi Salvador
<[email protected]>
AuthorDate: Wed Oct 14 08:42:01 2026 +0100
Develocity integration (#14394)
* Added basic Develocity integration
* Added develocity access key setup to github actions (maven) workflows
* Cleanup
* Added licensing header to .mvn/extensions.xml
* Added lincesing info and .gitignore for develocity integration
* Point Develocity at develocity.apache.org
Signed-off-by: Gasper Kojek <[email protected]>
* Bump Develocity Maven extensions and drop unused access key env
- develocity-maven-extension 1.21.4 -> 2.5.0
- common-custom-user-data-maven-extension 2.0 -> 2.4.0
CCUD 2.4.0 targets develocity-maven-extension 2.5.0, and both are
compatible with the Develocity 2026.2.x server. Verified locally with
`mvn -N validate`: both extensions load and the existing
.mvn/develocity.xml is read and accepted unchanged.
Also drop DEVELOCITY_ACCESS_KEY from ui.yml and pre-commit.yml, which do
not run Maven.
Signed-off-by: Gasper Kojek <[email protected]>
* Use the DEVELOCITY_ACCESS_KEY secret name
Signed-off-by: Gasper Kojek <[email protected]>
* Update develocity-maven-extension version to 2.6.0
* Scope DEVELOCITY_ACCESS_KEY to the Maven steps
Signed-off-by: Gasper Kojek <[email protected]>
---------
Signed-off-by: Gasper Kojek <[email protected]>
Co-authored-by: Gasper Kojek <[email protected]>
---
.github/workflows/build.yml | 2 ++
.github/workflows/ci.yml | 8 ++++++
.github/workflows/main-sonar-check.yml | 3 ++
.github/workflows/rat.yml | 2 ++
.github/workflows/sonar-check.yml | 3 ++
.gitignore | 3 ++
.mvn/develocity.xml | 50 ++++++++++++++++++++++++++++++++++
.mvn/extensions.xml | 34 +++++++++++++++++++++++
8 files changed, 105 insertions(+)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9c8ca10f85e..742faf57e4b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -54,5 +54,7 @@ jobs:
- name: Install Non-OSS
uses: ./.github/actions/install-nonoss
- name: Noredist Build
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
mvn -B -P developer,systemvm -Dsimulator -Dnoredist clean install
-T$(nproc)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 7f6645f4af4..d46df2f395f 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -54,6 +54,8 @@ jobs:
git status
ipmitool -V
- name: Build with Maven
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
mvn -B -P developer,systemvm -Dsimulator clean install
-DskipTests=true -T$(nproc)
- name: Archive artifacts
@@ -307,6 +309,8 @@ jobs:
mkdir -p ~/.m2/repository
tar -xzf /tmp/artifacts/m2-cloudstack.tar.gz -C ~/.m2/repository
- name: Setup Simulator Prerequisites
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
sudo python3 -m pip install --upgrade netaddr mysql-connector-python
python3 -m pip install --user --upgrade
tools/marvin/dist/[mM]arvin-*.tar.gz
@@ -319,6 +323,8 @@ jobs:
find . | grep "src/main/java" | sed 's/\/java\//\/java /g' | awk
'{print "--sourcefiles", $1, "\\"}' | sort | uniq >> jacoco-report.sh
echo "--xml jacoco-coverage.xml" >> jacoco-report.sh
- name: Start CloudStack Management Server with Simulator
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
export MAVEN_OPTS="-Xmx4096m -XX:MaxMetaspaceSize=800m
-Djava.security.egd=file:/dev/urandom
-javaagent:jacoco/lib/jacocoagent.jar=address=*,port=36320,output=tcpserver
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-exports=java.base/sun.security.x509=ALL-UNNAMED
--add-opens=java.base/jdk.internal.reflect=ALL-UNNAMED"
echo -e "\nStarting simulator"
@@ -329,6 +335,8 @@ jobs:
echo -e "\nStarting Advanced Zone DataCenter deployment"
python3 tools/marvin/marvin/deployDataCenter.py -i
setup/dev/advdualzone.cfg 2>&1 || true
- name: Run Integration Tests with Simulator
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
mkdir -p integration-test-results/smoke/misc
mkdir -p integration-test-results/component
diff --git a/.github/workflows/main-sonar-check.yml
b/.github/workflows/main-sonar-check.yml
index f48409fbc0c..1c9f1273b97 100644
--- a/.github/workflows/main-sonar-check.yml
+++ b/.github/workflows/main-sonar-check.yml
@@ -49,9 +49,12 @@ jobs:
- name: Install Non-OSS
uses: ./.github/actions/install-nonoss
- name: Run Build and Tests with Coverage
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: mvn -B -T$(nproc) -P developer,systemvm,quality -Dsimulator
-Dnoredist clean install
- name: Upload to SonarQube
env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: mvn -B -P quality
org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
-Dsonar.projectKey=apache_cloudstack -Dsonar.branch.name=${{ github.ref_name }}
diff --git a/.github/workflows/rat.yml b/.github/workflows/rat.yml
index 5c72d64d6ed..f4659885fbb 100644
--- a/.github/workflows/rat.yml
+++ b/.github/workflows/rat.yml
@@ -40,6 +40,8 @@ jobs:
- name: Install Non-OSS
uses: ./.github/actions/install-nonoss
- name: RAT licence checks
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: |
mvn -P developer,systemvm -Dsimulator -Dnoredist -pl .
org.apache.rat:apache-rat-plugin:0.18:check
- name: Rat Report
diff --git a/.github/workflows/sonar-check.yml
b/.github/workflows/sonar-check.yml
index 7f2a1bdb293..3fe8c53fece 100644
--- a/.github/workflows/sonar-check.yml
+++ b/.github/workflows/sonar-check.yml
@@ -47,10 +47,13 @@ jobs:
- name: Install Non-OSS
uses: ./.github/actions/install-nonoss
- name: Run Build and Tests with Coverage
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
run: mvn -B -T$(nproc) -P developer,systemvm,quality -Dsimulator
-Dnoredist clean install
- name: Upload to SonarQube
if: github.repository == 'apache/cloudstack' &&
github.event.pull_request.head.repo.full_name == github.repository
env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
PR_ID: ${{ github.event.pull_request.number }}
diff --git a/.gitignore b/.gitignore
index abaef83e455..1c96edf51e2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -99,6 +99,9 @@ tools/marvin/marvin/cloudstackAPI/*
unittest
venv
waf-*
+waf3-*
+
+**/.mvn/.develocity*
# this ignores _all files starting with '.'. Don't do that!
#.*
diff --git a/.mvn/develocity.xml b/.mvn/develocity.xml
new file mode 100644
index 00000000000..bde8355a5e2
--- /dev/null
+++ b/.mvn/develocity.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+<develocity
+ xmlns="https://www.gradle.com/develocity-maven"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="https://www.gradle.com/develocity-maven
https://www.gradle.com/schema/develocity-maven.xsd">
+ <server>
+ <url>https://develocity.apache.org</url>
+ <allowUntrusted>false</allowUntrusted>
+ </server>
+ <buildScan>
+
<backgroundBuildScanUpload>#{isFalse(env['GITHUB_ACTIONS'])}</backgroundBuildScanUpload>
+ <obfuscation>
+ <ipAddresses>#{{'0.0.0.0'}}</ipAddresses>
+ </obfuscation>
+ <publishing>
+ <onlyIf>
+ <![CDATA[authenticated]]>
+ </onlyIf>
+ </publishing>
+ </buildScan>
+ <buildCache>
+ <local>
+ <enabled>false</enabled>
+ </local>
+ <remote>
+ <enabled>false</enabled>
+ <storeEnabled>#{isTrue(env['GITHUB_ACTIONS'])}</storeEnabled>
+ </remote>
+ </buildCache>
+</develocity>
diff --git a/.mvn/extensions.xml b/.mvn/extensions.xml
new file mode 100644
index 00000000000..8118c8f9f46
--- /dev/null
+++ b/.mvn/extensions.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+<extensions>
+ <extension>
+ <groupId>com.gradle</groupId>
+ <artifactId>develocity-maven-extension</artifactId>
+ <version>2.6.0</version>
+ </extension>
+ <extension>
+ <groupId>com.gradle</groupId>
+ <artifactId>common-custom-user-data-maven-extension</artifactId>
+ <version>2.4.0</version>
+ </extension>
+</extensions>