From f1daebc9d49910d9300da6616bc30baf2ab9650d Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Sat, 23 Apr 2022 11:43:22 +0200 Subject: build: Enable testing for all library modules This change updates the Gradle build configuration to ensure that all library modules (that will be published) use testing and are included in coverage reports. This should ensure the public modules remain well tested. --- buildSrc/src/main/kotlin/java-library-conventions.gradle.kts | 2 ++ opendc-common/build.gradle.kts | 2 -- opendc-compute/opendc-compute-service/build.gradle.kts | 2 -- opendc-compute/opendc-compute-simulator/build.gradle.kts | 2 -- opendc-compute/opendc-compute-workload/build.gradle.kts | 1 - opendc-experiments/opendc-experiments-capelin/build.gradle.kts | 1 + opendc-faas/opendc-faas-service/build.gradle.kts | 2 -- opendc-faas/opendc-faas-simulator/build.gradle.kts | 2 -- opendc-harness/opendc-harness-engine/build.gradle.kts | 2 -- opendc-simulator/opendc-simulator-compute/build.gradle.kts | 2 -- opendc-simulator/opendc-simulator-flow/build.gradle.kts | 2 -- opendc-simulator/opendc-simulator-network/build.gradle.kts | 2 -- opendc-simulator/opendc-simulator-power/build.gradle.kts | 2 -- opendc-trace/opendc-trace-azure/build.gradle.kts | 2 -- opendc-trace/opendc-trace-bitbrains/build.gradle.kts | 2 -- opendc-trace/opendc-trace-gwf/build.gradle.kts | 2 -- opendc-trace/opendc-trace-opendc/build.gradle.kts | 2 -- opendc-trace/opendc-trace-parquet/build.gradle.kts | 2 -- opendc-trace/opendc-trace-swf/build.gradle.kts | 2 -- opendc-trace/opendc-trace-wfformat/build.gradle.kts | 2 -- opendc-trace/opendc-trace-wtf/build.gradle.kts | 2 -- opendc-web/opendc-web-client/build.gradle.kts | 2 -- opendc-workflow/opendc-workflow-service/build.gradle.kts | 2 -- opendc-workflow/opendc-workflow-workload/build.gradle.kts | 1 - 24 files changed, 3 insertions(+), 42 deletions(-) diff --git a/buildSrc/src/main/kotlin/java-library-conventions.gradle.kts b/buildSrc/src/main/kotlin/java-library-conventions.gradle.kts index 6a091a37..4af3d496 100644 --- a/buildSrc/src/main/kotlin/java-library-conventions.gradle.kts +++ b/buildSrc/src/main/kotlin/java-library-conventions.gradle.kts @@ -23,6 +23,8 @@ plugins { id("java-conventions") id("publishing-conventions") + id("testing-conventions") + id("jacoco-conventions") } java { diff --git a/opendc-common/build.gradle.kts b/opendc-common/build.gradle.kts index fda4ffd5..7da937c4 100644 --- a/opendc-common/build.gradle.kts +++ b/opendc-common/build.gradle.kts @@ -25,8 +25,6 @@ description = "Common functionality used across OpenDC modules" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-compute/opendc-compute-service/build.gradle.kts b/opendc-compute/opendc-compute-service/build.gradle.kts index b9437a73..b42c2919 100644 --- a/opendc-compute/opendc-compute-service/build.gradle.kts +++ b/opendc-compute/opendc-compute-service/build.gradle.kts @@ -25,8 +25,6 @@ description = "OpenDC Compute Service implementation" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-compute/opendc-compute-simulator/build.gradle.kts b/opendc-compute/opendc-compute-simulator/build.gradle.kts index 9a8cbfcc..e81d87ec 100644 --- a/opendc-compute/opendc-compute-simulator/build.gradle.kts +++ b/opendc-compute/opendc-compute-simulator/build.gradle.kts @@ -25,8 +25,6 @@ description = "Simulator for OpenDC Compute" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-compute/opendc-compute-workload/build.gradle.kts b/opendc-compute/opendc-compute-workload/build.gradle.kts index 41a4b52d..9ced95a7 100644 --- a/opendc-compute/opendc-compute-workload/build.gradle.kts +++ b/opendc-compute/opendc-compute-workload/build.gradle.kts @@ -25,7 +25,6 @@ description = "Support library for simulating VM-based workloads with OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` } dependencies { diff --git a/opendc-experiments/opendc-experiments-capelin/build.gradle.kts b/opendc-experiments/opendc-experiments-capelin/build.gradle.kts index 2def3dc5..9495f4ca 100644 --- a/opendc-experiments/opendc-experiments-capelin/build.gradle.kts +++ b/opendc-experiments/opendc-experiments-capelin/build.gradle.kts @@ -26,6 +26,7 @@ description = "Experiments for the Capelin work" plugins { `experiment-conventions` `testing-conventions` + `jacoco-conventions` `benchmark-conventions` } diff --git a/opendc-faas/opendc-faas-service/build.gradle.kts b/opendc-faas/opendc-faas-service/build.gradle.kts index 7a561014..c54595d3 100644 --- a/opendc-faas/opendc-faas-service/build.gradle.kts +++ b/opendc-faas/opendc-faas-service/build.gradle.kts @@ -25,8 +25,6 @@ description = "FaaS service for OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-faas/opendc-faas-simulator/build.gradle.kts b/opendc-faas/opendc-faas-simulator/build.gradle.kts index 50f75429..5f8c8667 100644 --- a/opendc-faas/opendc-faas-simulator/build.gradle.kts +++ b/opendc-faas/opendc-faas-simulator/build.gradle.kts @@ -25,8 +25,6 @@ description = "Simulator for the OpenDC FaaS platform" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-harness/opendc-harness-engine/build.gradle.kts b/opendc-harness/opendc-harness-engine/build.gradle.kts index 6bf08b7b..471f692d 100644 --- a/opendc-harness/opendc-harness-engine/build.gradle.kts +++ b/opendc-harness/opendc-harness-engine/build.gradle.kts @@ -25,8 +25,6 @@ description = "Engine for running experiments using the OpenDC Harness" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-simulator/opendc-simulator-compute/build.gradle.kts b/opendc-simulator/opendc-simulator-compute/build.gradle.kts index fb516ccf..f3f90bb6 100644 --- a/opendc-simulator/opendc-simulator-compute/build.gradle.kts +++ b/opendc-simulator/opendc-simulator-compute/build.gradle.kts @@ -24,8 +24,6 @@ description = "Library for simulating computing workloads" plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` `benchmark-conventions` } diff --git a/opendc-simulator/opendc-simulator-flow/build.gradle.kts b/opendc-simulator/opendc-simulator-flow/build.gradle.kts index 3f08071a..04d46607 100644 --- a/opendc-simulator/opendc-simulator-flow/build.gradle.kts +++ b/opendc-simulator/opendc-simulator-flow/build.gradle.kts @@ -24,8 +24,6 @@ description = "High-performance flow simulator" plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` `benchmark-conventions` } diff --git a/opendc-simulator/opendc-simulator-network/build.gradle.kts b/opendc-simulator/opendc-simulator-network/build.gradle.kts index 0cc7763e..a7f309c0 100644 --- a/opendc-simulator/opendc-simulator-network/build.gradle.kts +++ b/opendc-simulator/opendc-simulator-network/build.gradle.kts @@ -24,8 +24,6 @@ description = "Library for simulating datacenter network components" plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-simulator/opendc-simulator-power/build.gradle.kts b/opendc-simulator/opendc-simulator-power/build.gradle.kts index 59859403..ea36ce75 100644 --- a/opendc-simulator/opendc-simulator-power/build.gradle.kts +++ b/opendc-simulator/opendc-simulator-power/build.gradle.kts @@ -24,8 +24,6 @@ description = "Library for simulating datacenter power components" plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-azure/build.gradle.kts b/opendc-trace/opendc-trace-azure/build.gradle.kts index 89626737..d4fe045e 100644 --- a/opendc-trace/opendc-trace-azure/build.gradle.kts +++ b/opendc-trace/opendc-trace-azure/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for Azure VM traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-bitbrains/build.gradle.kts b/opendc-trace/opendc-trace-bitbrains/build.gradle.kts index 71c0e794..5211ec30 100644 --- a/opendc-trace/opendc-trace-bitbrains/build.gradle.kts +++ b/opendc-trace/opendc-trace-bitbrains/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for GWF traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-gwf/build.gradle.kts b/opendc-trace/opendc-trace-gwf/build.gradle.kts index d02f7a19..1105a465 100644 --- a/opendc-trace/opendc-trace-gwf/build.gradle.kts +++ b/opendc-trace/opendc-trace-gwf/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for GWF traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-opendc/build.gradle.kts b/opendc-trace/opendc-trace-opendc/build.gradle.kts index d1b4735e..67568f48 100644 --- a/opendc-trace/opendc-trace-opendc/build.gradle.kts +++ b/opendc-trace/opendc-trace-opendc/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for OpenDC-specific trace formats" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-parquet/build.gradle.kts b/opendc-trace/opendc-trace-parquet/build.gradle.kts index f943b6a6..302c0b14 100644 --- a/opendc-trace/opendc-trace-parquet/build.gradle.kts +++ b/opendc-trace/opendc-trace-parquet/build.gradle.kts @@ -25,8 +25,6 @@ description = "Parquet helpers for traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-swf/build.gradle.kts b/opendc-trace/opendc-trace-swf/build.gradle.kts index 25d59b49..20b03c80 100644 --- a/opendc-trace/opendc-trace-swf/build.gradle.kts +++ b/opendc-trace/opendc-trace-swf/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for Standard Workload Format (SWF) traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-wfformat/build.gradle.kts b/opendc-trace/opendc-trace-wfformat/build.gradle.kts index cd78fd61..875f7915 100644 --- a/opendc-trace/opendc-trace-wfformat/build.gradle.kts +++ b/opendc-trace/opendc-trace-wfformat/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for WfCommons workload traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-trace/opendc-trace-wtf/build.gradle.kts b/opendc-trace/opendc-trace-wtf/build.gradle.kts index 8301e363..35eb32e5 100644 --- a/opendc-trace/opendc-trace-wtf/build.gradle.kts +++ b/opendc-trace/opendc-trace-wtf/build.gradle.kts @@ -25,8 +25,6 @@ description = "Support for Workflow Trace Format (WTF) traces in OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-web/opendc-web-client/build.gradle.kts b/opendc-web/opendc-web-client/build.gradle.kts index f53b29d8..77a0afff 100644 --- a/opendc-web/opendc-web-client/build.gradle.kts +++ b/opendc-web/opendc-web-client/build.gradle.kts @@ -25,8 +25,6 @@ description = "Client for the OpenDC web API" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-workflow/opendc-workflow-service/build.gradle.kts b/opendc-workflow/opendc-workflow-service/build.gradle.kts index 17df33e3..60b5eb13 100644 --- a/opendc-workflow/opendc-workflow-service/build.gradle.kts +++ b/opendc-workflow/opendc-workflow-service/build.gradle.kts @@ -25,8 +25,6 @@ description = "Workflow orchestration service for OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` - `jacoco-conventions` } dependencies { diff --git a/opendc-workflow/opendc-workflow-workload/build.gradle.kts b/opendc-workflow/opendc-workflow-workload/build.gradle.kts index a9d497af..b725a69c 100644 --- a/opendc-workflow/opendc-workflow-workload/build.gradle.kts +++ b/opendc-workflow/opendc-workflow-workload/build.gradle.kts @@ -25,7 +25,6 @@ description = "Support library for simulating workflows with OpenDC" /* Build configuration */ plugins { `kotlin-library-conventions` - `testing-conventions` } dependencies { -- cgit v1.2.3 From e1a5b581ae957cc5b07c6083557cd3bcc137894b Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Sat, 23 Apr 2022 12:11:44 +0200 Subject: build: Move modules into subgroups This change updates the Gradle build configuration of the project to publish the different type of modules (e.g., opendc-compute, opendc-simulator) into their own groups. --- opendc-compute/build.gradle.kts | 4 ++++ opendc-experiments/build.gradle.kts | 4 ++++ opendc-faas/build.gradle.kts | 4 ++++ opendc-harness/build.gradle.kts | 4 ++++ opendc-simulator/build.gradle.kts | 27 +++++++++++++++++++++++++++ opendc-telemetry/build.gradle.kts | 6 ++++++ opendc-trace/build.gradle.kts | 6 ++++++ opendc-web/build.gradle.kts | 6 ++++++ opendc-workflow/build.gradle.kts | 4 ++++ 9 files changed, 65 insertions(+) diff --git a/opendc-compute/build.gradle.kts b/opendc-compute/build.gradle.kts index bf920306..b816ce58 100644 --- a/opendc-compute/build.gradle.kts +++ b/opendc-compute/build.gradle.kts @@ -21,3 +21,7 @@ */ description = "Cloud computing fabric controller of OpenDC" + +subprojects { + group = "org.opendc.compute" +} diff --git a/opendc-experiments/build.gradle.kts b/opendc-experiments/build.gradle.kts index a1a751a2..55699694 100644 --- a/opendc-experiments/build.gradle.kts +++ b/opendc-experiments/build.gradle.kts @@ -19,3 +19,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ + +subprojects { + group = "org.opendc.experiments" +} diff --git a/opendc-faas/build.gradle.kts b/opendc-faas/build.gradle.kts index 2493639f..002582bb 100644 --- a/opendc-faas/build.gradle.kts +++ b/opendc-faas/build.gradle.kts @@ -21,3 +21,7 @@ */ description = "Function-as-a-Service (FaaS) platform for OpenDC" + +subprojects { + group = "org.opendc.faas" +} diff --git a/opendc-harness/build.gradle.kts b/opendc-harness/build.gradle.kts index 7a9a8463..ddb8b5bf 100644 --- a/opendc-harness/build.gradle.kts +++ b/opendc-harness/build.gradle.kts @@ -21,3 +21,7 @@ */ description = "Harness for defining repeatable experiments using OpenDC" + +subprojects { + group = "org.opendc.harness" +} diff --git a/opendc-simulator/build.gradle.kts b/opendc-simulator/build.gradle.kts index e69de29b..b29a2fdb 100644 --- a/opendc-simulator/build.gradle.kts +++ b/opendc-simulator/build.gradle.kts @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2022 AtLarge Research + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +description = "Low-level simulation components of OpenDC" + +subprojects { + group = "org.opendc.simulator" +} diff --git a/opendc-telemetry/build.gradle.kts b/opendc-telemetry/build.gradle.kts index 7edfd134..6473a29e 100644 --- a/opendc-telemetry/build.gradle.kts +++ b/opendc-telemetry/build.gradle.kts @@ -19,3 +19,9 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ + +description = "Telemetry processing for OpenDC" + +subprojects { + group = "org.opendc.telemetry" +} diff --git a/opendc-trace/build.gradle.kts b/opendc-trace/build.gradle.kts index 7edfd134..08a3d832 100644 --- a/opendc-trace/build.gradle.kts +++ b/opendc-trace/build.gradle.kts @@ -19,3 +19,9 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ + +description = "Workload trace processing in OpenDC" + +subprojects { + group = "org.opendc.trace" +} diff --git a/opendc-web/build.gradle.kts b/opendc-web/build.gradle.kts index 7edfd134..47b19763 100644 --- a/opendc-web/build.gradle.kts +++ b/opendc-web/build.gradle.kts @@ -19,3 +19,9 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ + +description = "Interactive web interface for OpenDC" + +subprojects { + group = "org.opendc.web" +} diff --git a/opendc-workflow/build.gradle.kts b/opendc-workflow/build.gradle.kts index 3cefa409..ae05d4ad 100644 --- a/opendc-workflow/build.gradle.kts +++ b/opendc-workflow/build.gradle.kts @@ -21,3 +21,7 @@ */ description = "Workflow orchestration for OpenDC" + +subprojects { + group = "org.opendc.workflow" +} -- cgit v1.2.3 From 6bcca06300900882a8bc1a865f826268873bf3d8 Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Sat, 23 Apr 2022 12:15:43 +0200 Subject: build: Update to Jandex Gradle 0.12.0 This change updates the Jandex Gradle plugin to version 0.12.0. This version addresses some deprecation warnings reported by Gradle for the future 8.0 release. --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 8e0807ef..43568067 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -7,7 +7,7 @@ dokka = "1.6.10" gradle-node = "3.2.1" hadoop = "3.3.1" jackson = "2.13.2" -jandex-gradle = "0.11.0" +jandex-gradle = "0.12.0" jmh-gradle = "0.6.6" jakarta-validation = "2.0.2" junit-jupiter = "5.8.2" -- cgit v1.2.3