diff --git a/build.gradle b/build.gradle index 7f930d4..4f7176d 100644 --- a/build.gradle +++ b/build.gradle @@ -7,6 +7,7 @@ plugins { id "java" id 'maven-publish' id "org.openapi.generator" version "7.0.1" + id 'net.researchgate.release' version '3.0.2' } group build_group @@ -21,10 +22,12 @@ repositories { } java { - sourceCompatibility = "17" - targetCompatibility = "17" + sourceCompatibility = "8" + targetCompatibility = "8" } + + def loadSpecConfig() { def configJson = "[" + file('spec.config').text + "]" @@ -84,26 +87,42 @@ tasks.openApiValidate.configure { dependsOn(validateSpec) } +release { + // Configure release parameters + failOnSnapshotDependencies = true + + // Custom tasks before release + preTagCommitMessage = 'Pre tag commit: ' + tagCommitMessage = 'Creating tag: ' + newVersionCommitMessage = 'New version commit: ' +} + publishing { repositories { maven { - url artifactory_publish_url - credentials { - username System.env.CODEARTIFACT_USER - password System.env.CODEARTIFACT_AUTH_TOKEN - } + url = uri("${project.rootDir}/local-maven-repo") } } publications { mavenJava(MavenPublication) { - groupId = project.group - artifactId = rootProject.name - version = project.version from components.java } } } +tasks.register("releaseClean") { + doLast { + // Clean up release-related files + delete(fileTree(project.rootDir) { + include("release.properties", "gradle.properties.backup") + }) + } +} + +// Ensure publish task runs after release +afterReleaseBuild.dependsOn(tasks.publish) + + //As of now we have to keep following dependencies to generate build with generated sources dependencies { implementation 'com.squareup.okhttp3:okhttp:4.12.0' @@ -119,4 +138,9 @@ dependencies { testImplementation 'org.mockito:mockito-core:5.6.0' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.0' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.0' + + // Add equivalent dependencies from POM + implementation 'org.json:json:20231013' + implementation 'commons-codec:commons-codec:1.16.0' + } diff --git a/gradle.properties b/gradle.properties index 00c8470..dd0ca2e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,6 @@ sonar_project_key=chargebee_cb-provider-spi build_project_name=cb-provider-spi build_group=org.chargebee.spi -build_version=0.0.11 -# Artifactory config to be controlled at build time by CI/CD -artifactory_build_url=https://artifactory.url/maven/build -artifactory_publish_url=https://artifactory.url/maven/publish +build_version=0.0.12 +org.gradle.java.home=/Library/Java/JavaVirtualMachines/amazon-corretto-11.jdk/Contents/Home + diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.md5 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.md5 new file mode 100644 index 0000000..1b33328 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.md5 @@ -0,0 +1 @@ +25ed3c144d99f6281d6844168074d79e \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha1 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha1 new file mode 100644 index 0000000..5bc95ba --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha1 @@ -0,0 +1 @@ +aef6fe8f17eb75536eda9b1f126f240311e4b098 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha256 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha256 new file mode 100644 index 0000000..b4842f3 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha256 @@ -0,0 +1 @@ +2df9387ec6e8e008903cac489b09ae164754840a9acfb5dcfeaca737416674b1 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha512 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha512 new file mode 100644 index 0000000..9d2ca51 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.jar.sha512 @@ -0,0 +1 @@ +e831ce28b3e8f36b18de9584e0f9ac60014b16963bbc245b40f62e078c9a0560c8792c4d009c635cd23edbeb1c3408fec41ff57cea04c16fbd15026e35b9d822 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module new file mode 100644 index 0000000..17a7bf6 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module @@ -0,0 +1,146 @@ +{ + "formatVersion": "1.1", + "component": { + "group": "org.chargebee.spi", + "module": "cb-provider-spi", + "version": "0.0.12", + "attributes": { + "org.gradle.status": "release" + } + }, + "createdBy": { + "gradle": { + "version": "8.2.1" + } + }, + "variants": [ + { + "name": "apiElements", + "attributes": { + "org.gradle.category": "library", + "org.gradle.dependency.bundling": "external", + "org.gradle.jvm.version": 8, + "org.gradle.libraryelements": "jar", + "org.gradle.usage": "java-api" + }, + "files": [ + { + "name": "cb-provider-spi-0.0.12.jar", + "url": "cb-provider-spi-0.0.12.jar", + "size": 543721, + "sha512": "e831ce28b3e8f36b18de9584e0f9ac60014b16963bbc245b40f62e078c9a0560c8792c4d009c635cd23edbeb1c3408fec41ff57cea04c16fbd15026e35b9d822", + "sha256": "2df9387ec6e8e008903cac489b09ae164754840a9acfb5dcfeaca737416674b1", + "sha1": "aef6fe8f17eb75536eda9b1f126f240311e4b098", + "md5": "25ed3c144d99f6281d6844168074d79e" + } + ] + }, + { + "name": "runtimeElements", + "attributes": { + "org.gradle.category": "library", + "org.gradle.dependency.bundling": "external", + "org.gradle.jvm.version": 8, + "org.gradle.libraryelements": "jar", + "org.gradle.usage": "java-runtime" + }, + "dependencies": [ + { + "group": "com.squareup.okhttp3", + "module": "okhttp", + "version": { + "requires": "4.12.0" + } + }, + { + "group": "com.squareup.okhttp3", + "module": "logging-interceptor", + "version": { + "requires": "4.12.0" + } + }, + { + "group": "com.google.code.gson", + "module": "gson", + "version": { + "requires": "2.10.1" + } + }, + { + "group": "com.google.code.findbugs", + "module": "jsr305", + "version": { + "requires": "3.0.2" + } + }, + { + "group": "io.gsonfire", + "module": "gson-fire", + "version": { + "requires": "1.8.5" + } + }, + { + "group": "javax.ws.rs", + "module": "jsr311-api", + "version": { + "requires": "1.1.1" + } + }, + { + "group": "javax.ws.rs", + "module": "javax.ws.rs-api", + "version": { + "requires": "2.1.1" + } + }, + { + "group": "com.fasterxml.jackson.core", + "module": "jackson-core", + "version": { + "requires": "2.15.0" + } + }, + { + "group": "org.apache.commons", + "module": "commons-lang3", + "version": { + "requires": "3.13.0" + } + }, + { + "group": "jakarta.annotation", + "module": "jakarta.annotation-api", + "version": { + "requires": "1.3.5" + } + }, + { + "group": "org.json", + "module": "json", + "version": { + "requires": "20231013" + } + }, + { + "group": "commons-codec", + "module": "commons-codec", + "version": { + "requires": "1.16.0" + } + } + ], + "files": [ + { + "name": "cb-provider-spi-0.0.12.jar", + "url": "cb-provider-spi-0.0.12.jar", + "size": 543721, + "sha512": "e831ce28b3e8f36b18de9584e0f9ac60014b16963bbc245b40f62e078c9a0560c8792c4d009c635cd23edbeb1c3408fec41ff57cea04c16fbd15026e35b9d822", + "sha256": "2df9387ec6e8e008903cac489b09ae164754840a9acfb5dcfeaca737416674b1", + "sha1": "aef6fe8f17eb75536eda9b1f126f240311e4b098", + "md5": "25ed3c144d99f6281d6844168074d79e" + } + ] + } + ] +} diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.md5 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.md5 new file mode 100644 index 0000000..e6dcfee --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.md5 @@ -0,0 +1 @@ +45a86b42d07b10dd5f51e1ac03bdd5a5 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha1 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha1 new file mode 100644 index 0000000..2099e8d --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha1 @@ -0,0 +1 @@ +0cb2ee163bf0b9d5b79d11051d1190207c9c6526 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha256 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha256 new file mode 100644 index 0000000..aab5ea2 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha256 @@ -0,0 +1 @@ +9464d23f02f1fca98848379e609ad5afcd17c5bcfc0b919e9a9e204a3b131a17 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha512 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha512 new file mode 100644 index 0000000..9d427c6 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.module.sha512 @@ -0,0 +1 @@ +56fd05ad2f9b4df03a5d23abf4ef020c413bc8dcf5b5946f34f5f06ad72e53374ba94c2bc13430b3df8a09cf4e19554432d66d5084e79eb1a9873388d2ea09ae \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom new file mode 100644 index 0000000..d0de1a8 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom @@ -0,0 +1,87 @@ + + + + + + + + 4.0.0 + org.chargebee.spi + cb-provider-spi + 0.0.12 + + + com.squareup.okhttp3 + okhttp + 4.12.0 + runtime + + + com.squareup.okhttp3 + logging-interceptor + 4.12.0 + runtime + + + com.google.code.gson + gson + 2.10.1 + runtime + + + com.google.code.findbugs + jsr305 + 3.0.2 + runtime + + + io.gsonfire + gson-fire + 1.8.5 + runtime + + + javax.ws.rs + jsr311-api + 1.1.1 + runtime + + + javax.ws.rs + javax.ws.rs-api + 2.1.1 + runtime + + + com.fasterxml.jackson.core + jackson-core + 2.15.0 + runtime + + + org.apache.commons + commons-lang3 + 3.13.0 + runtime + + + jakarta.annotation + jakarta.annotation-api + 1.3.5 + runtime + + + org.json + json + 20231013 + runtime + + + commons-codec + commons-codec + 1.16.0 + runtime + + + diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.md5 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.md5 new file mode 100644 index 0000000..d95b4cc --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.md5 @@ -0,0 +1 @@ +2de883775d55f19380b459d06623315e \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha1 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha1 new file mode 100644 index 0000000..2415c9a --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha1 @@ -0,0 +1 @@ +aa92a8dc02701ed61052f36c01373eef3740a174 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha256 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha256 new file mode 100644 index 0000000..6438d10 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha256 @@ -0,0 +1 @@ +382ffc406c36977366c693a73882198dde04f9e231f0c5fccd9debfea3d77042 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha512 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha512 new file mode 100644 index 0000000..5482f54 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/0.0.12/cb-provider-spi-0.0.12.pom.sha512 @@ -0,0 +1 @@ +0521955cacfba4758adc934de22c606c60bbb5b2af951cf98e7e1e7beaaaa4ebf5b32745ec522794434fc6ab18d32885d931e7bfcacc4f863c59032b28669d3d \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml new file mode 100644 index 0000000..032cad3 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml @@ -0,0 +1,13 @@ + + + org.chargebee.spi + cb-provider-spi + + 0.0.12 + 0.0.12 + + 0.0.12 + + 20241216051021 + + diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.md5 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.md5 new file mode 100644 index 0000000..87567d0 --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.md5 @@ -0,0 +1 @@ +cba7df9c014e9353ba9537005c9458f9 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha1 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha1 new file mode 100644 index 0000000..c95e19d --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha1 @@ -0,0 +1 @@ +7990f465650a737a66b349091d3abf482f41fd41 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha256 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha256 new file mode 100644 index 0000000..3d5d13b --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha256 @@ -0,0 +1 @@ +93d6de5009031aac46b2795bf678989654b05d2035e1ac13a0c6bb069cfa5994 \ No newline at end of file diff --git a/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha512 b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha512 new file mode 100644 index 0000000..aec98ac --- /dev/null +++ b/local-maven-repo/org/chargebee/spi/cb-provider-spi/maven-metadata.xml.sha512 @@ -0,0 +1 @@ +c59f87fc4849d480abcaa7c7331f1f7c76f4f488bc41e0577643dcd574aacd464070d695662bee6699895b1e3bd99296302f6f8fe476f6b4883625a3720620bd \ No newline at end of file diff --git a/release.sh b/release.sh new file mode 100644 index 0000000..e88c158 --- /dev/null +++ b/release.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +release_gradle() { + # Clean any previous release artifacts + ./gradlew releaseClean + + # Prepare the release + # This will: + # 1. Remove SNAPSHOT from version + # 2. Create a git tag + # 3. Commit version changes + ./gradlew release + + # Publish to local Maven repository + ./gradlew publish + + # Optional: Push tags to remote repository + git push --tags +} + +# Run the release function +release_gradle \ No newline at end of file