Switch to HANA cloud instances

This commit is contained in:
Christian Beikov 2022-10-21 16:06:45 +02:00
parent 78c8a04486
commit 1e6d6b8207
4 changed files with 13 additions and 15 deletions

10
Jenkinsfile vendored
View File

@ -39,13 +39,12 @@ stage('Configure') {
// new BuildEnvironment( dbName: 'db2' ), // new BuildEnvironment( dbName: 'db2' ),
// new BuildEnvironment( dbName: 'mssql' ), // new BuildEnvironment( dbName: 'mssql' ),
// new BuildEnvironment( dbName: 'sybase' ), // new BuildEnvironment( dbName: 'sybase' ),
new BuildEnvironment( dbName: 'hana_jenkins', node: 'HANA' ), // Don't build with HANA by default, but only do it nightly until we receive a 3rd instance
// new BuildEnvironment( dbName: 'hana_cloud', dbLockableResource: 'hana-cloud', dbLockResourceAsHost: true ),
new BuildEnvironment( node: 's390x' ), new BuildEnvironment( node: 's390x' ),
new BuildEnvironment( dbName: 'tidb', node: 'tidb', new BuildEnvironment( dbName: 'tidb', node: 'tidb',
additionalOptions: '-DdbHost=localhost:4000', additionalOptions: '-DdbHost=localhost:4000',
notificationRecipients: 'tidb_hibernate@pingcap.com' ), notificationRecipients: 'tidb_hibernate@pingcap.com' ),
// Disable EDB for now as the image is not available anymore
// new BuildEnvironment( dbName: 'edb', additionalOptions: '-DdbHost=localhost:5433' ),
new BuildEnvironment( testJdkVersion: '17' ), new BuildEnvironment( testJdkVersion: '17' ),
new BuildEnvironment( testJdkVersion: '18' ), new BuildEnvironment( testJdkVersion: '18' ),
// We want to enable preview features when testing early-access builds of OpenJDK: // We want to enable preview features when testing early-access builds of OpenJDK:
@ -59,6 +58,9 @@ stage('Configure') {
if ( pullRequest.labels.contains( 'cockroachdb' ) ) { if ( pullRequest.labels.contains( 'cockroachdb' ) ) {
this.environments.add( new BuildEnvironment( dbName: 'cockroachdb', node: 'LongDuration', longRunning: true ) ) this.environments.add( new BuildEnvironment( dbName: 'cockroachdb', node: 'LongDuration', longRunning: true ) )
} }
if ( pullRequest.labels.contains( 'hana' ) ) {
this.environments.add( new BuildEnvironment( dbName: 'hana_cloud', dbLockableResource: 'hana-cloud', dbLockResourceAsHost: true ) )
}
} }
helper.configure { helper.configure {
@ -211,7 +213,7 @@ stage('Build') {
} }
} }
else { else {
lock(label: buildEnv.dbLockableResource, variable: 'LOCKED_RESOURCE') { lock(label: buildEnv.dbLockableResource, quantity: 1, variable: 'LOCKED_RESOURCE') {
if ( buildEnv.dbLockResourceAsHost ) { if ( buildEnv.dbLockResourceAsHost ) {
cmd += " -DdbHost=${LOCKED_RESOURCE}" cmd += " -DdbHost=${LOCKED_RESOURCE}"
} }

View File

@ -32,8 +32,8 @@ elif [ "$RDBMS" == "mssql" ]; then
goal="-Pdb=mssql_ci" goal="-Pdb=mssql_ci"
elif [ "$RDBMS" == "hana" ]; then elif [ "$RDBMS" == "hana" ]; then
goal="-Pdb=hana_ci" goal="-Pdb=hana_ci"
elif [ "$RDBMS" == "hana_jenkins" ]; then elif [ "$RDBMS" == "hana_cloud" ]; then
goal="-Pdb=hana_jenkins" goal="-Pdb=hana_cloud"
elif [ "$RDBMS" == "sybase" ]; then elif [ "$RDBMS" == "sybase" ]; then
goal="-Pdb=sybase_ci" goal="-Pdb=sybase_ci"
elif [ "$RDBMS" == "tidb" ]; then elif [ "$RDBMS" == "tidb" ]; then

View File

@ -271,7 +271,7 @@ ext {
'connection.init_sql' : '' 'connection.init_sql' : ''
], ],
hana_cloud : [ hana_cloud : [
'db.dialect' : 'org.hibernate.dialect.HANACloudColumnStoreDialect', 'db.dialect' : 'org.hibernate.dialect.HANAColumnStoreDialect',
'jdbc.driver': 'com.sap.db.jdbc.Driver', 'jdbc.driver': 'com.sap.db.jdbc.Driver',
'jdbc.user' : 'HIBERNATE_TEST', 'jdbc.user' : 'HIBERNATE_TEST',
'jdbc.pass' : 'H1bernate_test', 'jdbc.pass' : 'H1bernate_test',

View File

@ -26,7 +26,8 @@ this.helper = new JobHelper(this)
helper.runWithNotification { helper.runWithNotification {
stage('Configure') { stage('Configure') {
this.environments = [ this.environments = [
new BuildEnvironment( dbName: 'cockroachdb', node: 'cockroachdb', longRunning: true ) new BuildEnvironment( dbName: 'cockroachdb', node: 'cockroachdb', longRunning: true ),
new BuildEnvironment( dbName: 'hana_cloud', dbLockableResource: 'hana-cloud', dbLockResourceAsHost: true )
]; ];
helper.configure { helper.configure {
@ -164,12 +165,7 @@ stage('Build') {
state[buildEnv.tag]['containerName'] = "sybase" state[buildEnv.tag]['containerName'] = "sybase"
break; break;
case "edb": case "edb":
docker.withRegistry('https://containers.enterprisedb.com', 'hibernateci.containers.enterprisedb.com') { docker.image('quay.io/enterprisedb/edb-postgres-advanced:10.22').pull()
// withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'hibernateci.containers.enterprisedb.com',
// usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
// sh 'docker login -u "$USERNAME" -p "$PASSWORD" https://containers.enterprisedb.com'
docker.image('containers.enterprisedb.com/edb/edb-as-lite:v11').pull()
}
sh "./docker_db.sh edb" sh "./docker_db.sh edb"
state[buildEnv.tag]['containerName'] = "edb" state[buildEnv.tag]['containerName'] = "edb"
break; break;
@ -185,7 +181,7 @@ stage('Build') {
} }
} }
else { else {
lock(label: buildEnv.dbLockableResource, variable: 'LOCKED_RESOURCE') { lock(label: buildEnv.dbLockableResource, quantity: 1, variable: 'LOCKED_RESOURCE') {
if ( buildEnv.dbLockResourceAsHost ) { if ( buildEnv.dbLockResourceAsHost ) {
cmd += " -DdbHost=${LOCKED_RESOURCE}" cmd += " -DdbHost=${LOCKED_RESOURCE}"
} }