Skip to content

Commit

Permalink
Copy changes from opensearch-project/sql#957.
Browse files Browse the repository at this point in the history
Signed-off-by: Yury-Fridlyand <[email protected]>
  • Loading branch information
Yury-Fridlyand committed Dec 9, 2022
1 parent 28b8856 commit 2531bc2
Show file tree
Hide file tree
Showing 2 changed files with 145 additions and 40 deletions.
93 changes: 53 additions & 40 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ plugins {
id 'signing'
}

group 'org.opensearch.client'
group 'org.opensearch.driver'

// keep version in sync with version in Driver source
version '2.0.0.0'
Expand Down Expand Up @@ -89,7 +89,7 @@ tasks.withType(JavaCompile) {
}

static def getShadowPath(String path) {
return 'com.amazonaws.opensearch.sql.jdbc.shadow.' + path
return 'org.opensearch.sql.jdbc.shadow.' + path
}

shadowJar {
Expand All @@ -107,10 +107,7 @@ shadowJar {
exclude 'META-INF/NOTICE*'
exclude 'META-INF/DEPENDENCIES'

relocate('com.amazonaws', getShadowPath('com.amazonaws')) {
exclude 'com.amazonaws.opensearch.*/**'
}

relocate 'com.amazonaws', getShadowPath('com.amazonaws')
relocate 'org.apache', getShadowPath('org.apache')
relocate 'org.joda', getShadowPath('org.joda')
relocate 'com.fasterxml', getShadowPath('com.fasterxml')
Expand Down Expand Up @@ -139,47 +136,59 @@ publishing {
artifact javadocJar

pom {
name = "OpenSearch SQL JDBC Driver"
packaging = "jar"
url = "https://github.com/opensearch-project/sql-jdbc"
description = "OpenSearch SQL JDBC driver"
scm {
connection = "scm:[email protected]:opensearch-project/sql-jdbc.git"
developerConnection = "scm:[email protected]:opensearch-project/sql-jdbc.git"
url = "[email protected]:opensearch-project/sql-jdbc.git"
}
licenses {
license {
name = "The Apache License, Version 2.0"
url = "http://www.apache.org/licenses/LICENSE-2.0.txt"
name = "OpenSearch SQL JDBC Driver"
packaging = "jar"
url = "https://github.com/opensearch-project/sql/sql-jdbc"
description = "OpenSearch SQL JDBC driver"
scm {
connection = "scm:[email protected]:opensearch-project/sql.git"
developerConnection = "scm:[email protected]:opensearch-project/sql.git"
url = "[email protected]:opensearch-project/sql.git"
}
licenses {
license {
name = "The Apache License, Version 2.0"
url = "http://www.apache.org/licenses/LICENSE-2.0.txt"
}
}
}
developers {
developer {
id = "amazonwebservices"
organization = "Amazon Web Services"
organizationUrl = "https://aws.amazon.com"
developers {
developer {
name = 'OpenSearch'
url = 'https://github.com/opensearch-project/sql'
}
}
}
}
}
}
publishMaven(MavenPublication) { publication ->
from components.java

repositories {
maven {
name = "internal-snapshots"
url = "s3://snapshots.opendistroforelasticsearch.amazon.com/maven"
authentication {
awsIm(AwsImAuthentication) // load from EC2 role or env var
}
}
maven {
name = "internal-releases"
url = "s3://artifacts.opendistroforelasticsearch.amazon.com/maven"
authentication {
awsIm(AwsImAuthentication) // load from EC2 role or env var
pom {
name = "OpenSearch SQL JDBC Driver"
packaging = "jar"
url = "https://github.com/opensearch-project/sql/sql-jdbc"
description = "OpenSearch SQL JDBC driver"
scm {
connection = "scm:[email protected]:opensearch-project/sql.git"
developerConnection = "scm:[email protected]:opensearch-project/sql.git"
url = "[email protected]:opensearch-project/sql.git"
}
licenses {
license {
name = "The Apache License, Version 2.0"
url = "http://www.apache.org/licenses/LICENSE-2.0.txt"
}
}
developers {
developer {
name = 'OpenSearch'
url = 'https://github.com/opensearch-project/sql'
}
}
}
}
}

repositories {
maven {
name = "sonatype-staging"
url "https://aws.oss.sonatype.org/service/local/staging/deploy/maven2"
Expand All @@ -188,6 +197,10 @@ publishing {
password project.hasProperty('ossrhPassword') ? project.property('ossrhPassword') : ''
}
}
maven {
name = "localRepo"
url "${project.buildDir}/repository"
}
}

// TODO - enabled debug logging for the time being, remove this eventually
Expand Down
92 changes: 92 additions & 0 deletions jenkins/jdbc-stage-maven-release.jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
lib = library(identifier: 'jenkins@main', retriever: modernSCM([
$class: 'GitSCMSource',
remote: 'https://github.com/opensearch-project/opensearch-build.git',
]))

pipeline {
agent {
docker {
label 'Jenkins-Agent-AL2-X64-C54xlarge-Docker-Host'
image 'opensearchstaging/ci-runner:ci-runner-centos7-opensearch-build-v2'
args '-e JAVA_HOME=/opt/java/openjdk-11'
alwaysPull true
}
}
options {
timeout(time: 30, unit: 'MINUTES')
throttleJobProperty(
categories: [],
limitOneJobWithMatchingParams: false,
maxConcurrentPerNode: 0,
maxConcurrentTotal: 1,
paramsToUseForLimit: '',
throttleEnabled: true,
throttleOption: 'project',
)
}
triggers {
GenericTrigger(
genericVariables: [
[key: 'ref', value: '$.ref'],
[key: 'VERSION', value: '$.ref', regexpFilter: 'refs/tags/v' ],
],
tokenCredentialId: 'jenkins-sql-jdbc-generic-webhook-token',
causeString: 'A tag was cut on opensearch-project/sql repository causing this workflow to run',
printContributedVariables: false,
printPostContent: false,
regexpFilterText: '$ref',
regexpFilterExpression: '^sql-jdbc-release-[0-9\.]*$'
)
}
environment {
ARTIFACT_PATH = "$WORKSPACE/build/repository/org/opensearch/driver/opensearch-sql-jdbc/$VERSION"
}
stages {
stage('Publish to Maven Local') {
steps {
// checkout the commit
checkout([
$class: 'GitSCM', userRemoteConfigs: [[url: 'https://github.com/opensearch-project/sql.git']],
branches: [[name: "$ref"]]
])

dir('sql-jdbc') {
// publish maven artifacts
sh('./gradlew --no-daemon publishPublishMavenPublicationToLocalRepoRepository')
}
}
}
stage('Sign') {
steps {
script {
signArtifacts(
artifactPath: "${ARTIFACT_PATH}",
type: 'maven',
platform: 'linux'
)
}
}
}
stage('Stage Maven Artifacts') {
environment {
REPO_URL = 'https://aws.oss.sonatype.org/'
STAGING_PROFILE_ID = "${SONATYPE_STAGING_PROFILE_ID}"
BUILD_ID = "${BUILD_NUMBER}"
}
steps {
// checkout the build repo
git url: 'https://github.com/opensearch-project/opensearch-build.git', branch: 'main'

// stage artifacts for release with Sonatype
withCredentials([usernamePassword(credentialsId: 'jenkins-sonatype-creds', usernameVariable: 'SONATYPE_USERNAME', passwordVariable: 'SONATYPE_PASSWORD')]) {
sh('$WORKSPACE/publish/stage-maven-release.sh $WORKSPACE/build/repository/')
}
}
}
}
post {
always {
cleanWs disableDeferredWipeout: true, deleteDirs: true
}
}
}

0 comments on commit 2531bc2

Please sign in to comment.