Skip to content

Commit

Permalink
feat: load and resolve config file in enterpriseUpload
Browse files Browse the repository at this point in the history
Motivation:
Make Gatling as Code accessible to gradle plugin user

Modifications:
Initialize package ID from settings, overwrite package id by retrieving new package id from json config file if exists.

Ref: MISC-448
  • Loading branch information
bastien-gatling committed Feb 1, 2024
1 parent d99ced9 commit 8be6250
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ repositories {
}

dependencies {
implementation "io.gatling:gatling-enterprise-plugin-commons:1.9.0-M6"
implementation "io.gatling:gatling-enterprise-plugin-commons:1.9.0-M7"
implementation "org.apache.ant:ant:1.10.11"
constraints {
implementation('com.fasterxml.jackson.core:jackson-databind') {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.gatling.gradle

import io.gatling.plugin.EnterprisePlugin
import io.gatling.plugin.configuration.PackageConfiguration
import org.gradle.api.DefaultTask
import org.gradle.api.InvalidUserDataException
import org.gradle.api.tasks.CacheableTask
Expand All @@ -14,9 +15,17 @@ class GatlingEnterpriseUploadTask extends DefaultTask {
def gatling = project.extensions.getByType(GatlingPluginExtension)
RecoverEnterprisePluginException.handle(logger) {
EnterprisePlugin enterprisePlugin = gatling.enterprise.initBatchEnterprisePlugin(project.version.toString(), logger)
if (gatling.enterprise.packageId) {
logger.lifecycle("Uploading package with packageId " + gatling.enterprise.packageId)
enterprisePlugin.uploadPackage(gatling.enterprise.packageId, inputs.files.singleFile)

String jsonPackageConfig = PackageConfiguration.loadToJson(project.projectDir)
UUID packageUUID = gatling.enterprise.packageId
if (jsonPackageConfig != null) {
logger.lifecycle("Package configuration file detected, applying it.")
packageUUID = enterprisePlugin.uploadPackageConfiguration(jsonPackageConfig)
logger.lifecycle("Package id: "+ packageUUID.toString())
}
if (packageUUID) {
logger.lifecycle("Uploading package with packageId " + packageUUID)
enterprisePlugin.uploadPackage(packageUUID, inputs.files.singleFile)
} else if (gatling.enterprise.simulationId) {
logger.lifecycle("Uploading package belonging to the simulation " + gatling.enterprise.simulationId)
enterprisePlugin.uploadPackageWithSimulationId(gatling.enterprise.simulationId, inputs.files.singleFile)
Expand Down

0 comments on commit 8be6250

Please sign in to comment.