Skip to content

Commit

Permalink
Switch to new Oracle image and try to improve podman experience
Browse files Browse the repository at this point in the history
  • Loading branch information
beikov committed Apr 7, 2022
1 parent 6815c2a commit 43d2274
Show file tree
Hide file tree
Showing 7 changed files with 200 additions and 103 deletions.
16 changes: 1 addition & 15 deletions .github/workflows/contributor-build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# The main CI of Hibernate ORM is https://ci.hibernate.org/job/hibernate-orm-6.0-h2-main/.
# The main CI of Hibernate ORM is https://ci.hibernate.org/job/hibernate-orm-pipeline/.
# However, Hibernate ORM builds run on GitHub actions regularly
# to check that it still works and can be used in GitHub forks.
# See https://docs.github.com/en/free-pro-team@latest/actions
Expand Down Expand Up @@ -30,34 +30,20 @@ jobs:
strategy:
fail-fast: false
matrix:
# When GitHub Actions supports it: https://github.com/actions/toolkit/issues/399
# We will use the experimental flag as indicator whether a failure should cause a workflow failure
include:
- rdbms: h2
experimental: false
- rdbms: hsqldb
experimental: false
- rdbms: derby
experimental: false
- rdbms: mysql8
experimental: false
- rdbms: mariadb
experimental: false
- rdbms: postgresql_9_5
experimental: false
- rdbms: postgresql_13
experimental: false
- rdbms: oracle
experimental: false
- rdbms: db2
experimental: false
- rdbms: mssql
experimental: false
- rdbms: sybase
experimental: false
# Running with HANA requires at least 8GB memory just for the database, which we don't have on GH Actions runners
# - rdbms: hana
# experimental: true
steps:
- uses: actions/checkout@v2
with:
Expand Down
57 changes: 28 additions & 29 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,33 +19,36 @@ import org.hibernate.jenkins.pipeline.helpers.job.JobHelper
this.helper = new JobHelper(this)

helper.runWithNotification {

def defaultJdk = '11'
stage('Configure') {
this.environments = [
// buildEnv('11', 'h2'),
// buildEnv('11', 'hsqldb'),
// buildEnv('11', 'derby'),
// buildEnv('11', 'mysql8'),
// buildEnv('11', 'mariadb'),
// buildEnv('11', 'postgresql_9_5'),
// buildEnv('11', 'postgresql_13'),
// buildEnv('11', 'oracle'),
buildEnv('11', 'oracle_ee'),
// buildEnv('11', 'db2'),
// buildEnv('11', 'mssql'),
// buildEnv('11', 'sybase'),
buildEnv('11', 'hana', 'HANA'),
buildEnv('11', 's390x', 's390x'),
buildEnv('11', 'tidb', 'tidb', 'tidb_hibernate@pingcap.com'),
// buildEnv(defaultJdk, 'h2'),
// buildEnv(defaultJdk, 'hsqldb'),
// buildEnv(defaultJdk, 'derby'),
// buildEnv(defaultJdk, 'mysql8'),
// buildEnv(defaultJdk, 'mariadb'),
// buildEnv(defaultJdk, 'postgresql_9_5'),
// buildEnv(defaultJdk, 'postgresql_13'),
// buildEnv(defaultJdk, 'oracle'),
buildEnv(defaultJdk, 'oracle_ee'),
// buildEnv(defaultJdk, 'db2'),
// buildEnv(defaultJdk, 'mssql'),
// buildEnv(defaultJdk, 'sybase'),
buildEnv(defaultJdk, 'hana', 'HANA'),
buildEnv(defaultJdk, 's390x', 's390x'),
buildEnv(defaultJdk, 'tidb', 'tidb', 'tidb_hibernate@pingcap.com'),
// Disable EDB for now as the image is not available anymore
// buildEnv('11', 'edb')
// buildEnv(defaultJdk, 'edb')
buildEnv('17', 'h2'),
buildEnv('18', 'h2'),
buildEnv('19', 'h2'),
];

helper.configure {
file 'job-configuration.yaml'
// We don't require the following, but the build helper plugin apparently does
jdk {
defaultTool 'OpenJDK 11 Latest'
defaultTool "OpenJDK ${defaultJdk} Latest"
}
maven {
defaultTool 'Apache Maven 3.8'
Expand All @@ -72,6 +75,10 @@ if (currentBuild.getBuildCauses().toString().contains('BranchIndexingCause')) {
stage('Build') {
Map<String, Closure> executions = [:]
environments.each { BuildEnvironment buildEnv ->
// Don't build environments for newer JDKs when this is a PR
if ( buildEnv.getVersion() != defaultJdk && helper.scmSource.pullRequest ) {
return
}
executions.put(buildEnv.tag, {
runBuildOnNode(buildEnv.node) {
// Use withEnv instead of setting env directly, as that is global!
Expand Down Expand Up @@ -118,7 +125,7 @@ stage('Build') {
docker.withRegistry('https://index.docker.io/v1/', 'hibernateci.hub.docker.com') {
docker.image('quillbuilduser/oracle-18-xe').pull()
}
sh "./docker_db.sh oracle"
sh "./docker_db.sh oracle_18"
containerName = "oracle"
break;
case "db2":
Expand Down Expand Up @@ -279,22 +286,14 @@ public class BuildEnvironment {
this.notificationRecipients = notificationRecipients;
String buildJdkTool;
String testJdkTool;
switch ( version ) {
case "8":
buildJdkTool = testJdkTool = "OpenJDK 8 Latest";
break;
case "11":
buildJdkTool = testJdkTool = "OpenJDK 11 Latest";
break;
default:
throw new IllegalArgumentException( "Unsupported version: ${version}" );
}
buildJdkTool = testJdkTool = "OpenJDK ${version} Latest";
this.buildJdkTool = buildJdkTool;
this.testJdkTool = testJdkTool;
}
String toString() { getTag() }
String getTag() { "jdk-$version-$dbName" }
String getNode() { node }
String getVersion() { version }
String getNotificationRecipients() { notificationRecipients }
}

Expand Down
12 changes: 12 additions & 0 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,18 @@ The following table illustrates a list of commands for various databases that ca
|`./docker_db.sh oracle`
|`./gradlew test -Pdb=oracle_ci`

|Oracle 11g
|`./docker_db.sh oracle_11`
|`./gradlew test -Pdb=oracle_ci`

|Oracle XE 18
|`./docker_db.sh oracle_18`
|`./gradlew test -Pdb=oracle_ci`

|Oracle XE 21
|`./docker_db.sh oracle_21`
|`./gradlew test -Pdb=oracle_ci`

|Oracle EE
|`./docker_db.sh oracle_ee`
|`./gradlew test -Pdb=oracle_docker`
Expand Down
21 changes: 21 additions & 0 deletions Release.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.5 (GNU/Linux)

mQENBFtkV0cBCADStSTCG5qgYtzmWfymHZqxxhfwfS6fdHJcbGUeXsI5dxjeCWhs
XarZm6rWZOd5WfSmpXhbKOyM6Ll+6bpSl5ICHLa6fcpizYWEPa8fpg9EGl0cF12G
GgVLnnOZ6NIbsoW0LHt2YN0jn8xKVwyPp7KLHB2paZh+KuURERG406GXY/DgCxUx
Ffgdelym/gfmt3DSq6GAQRRGHyucMvPYm53r+jVcKsf2Bp6E1XAfqBrD5r0maaCU
Wvd7bi0B2Q0hIX0rfDCBpl4rFqvyaMPgn+Bkl6IW37zCkWIXqf1E5eDm/XzP881s
+yAvi+JfDwt7AE+Hd2dSf273o3WUdYJGRwyZABEBAAG0OGRldmVsOmt1YmljIE9C
UyBQcm9qZWN0IDxkZXZlbDprdWJpY0BidWlsZC5vcGVuc3VzZS5vcmc+iQE+BBMB
CAAoBQJfcJJOAhsDBQkIKusHBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBN
ZDkDdQYKpB0xCACmtCT6ruPiQa4l0DEptZ+u3NNbZfSVGH4fE4hyTjLbzrCxqcoh
xJvDKxspuJ85wWFWMtl57+lFFE1KP0AX2XTT+/v2vN1PIfwgOSw3yp2sgWuIXFAi
89YSjSh8G0SGAH90A9YFMnTbllzGoGURjSX03iasW3A408ljbDehA6rpS3t3FD7P
PnUF6204orYu00Qvc54an/xVJzxupb69MKW5EeK7x8MJnIToT8hIdOdGVD6axsis
x+1U71oMK1gBke7p4QPUdhJFpSUd6kT8bcO+7rYouoljFNYkUfwnqtUn7525fkfg
uDqqXvOJMpJ/sK1ajHOeehp5T4Q45L/qUCb3iEYEExECAAYFAltkV0cACgkQOzAR
t2udZSOoswCdF44NTN09DwhPFbNYhEMb9juP5ykAn0bcELvuKmgDwEwZMrPQkG8t
Pu9n
=42uC
-----END PGP PUBLIC KEY BLOCK-----
2 changes: 1 addition & 1 deletion ci/database-start.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ elif [ "$RDBMS" == 'postgresql_13' ]; then
elif [ "$RDBMS" == 'db2' ]; then
bash $DIR/../docker_db.sh db2
elif [ "$RDBMS" == 'oracle' ]; then
bash $DIR/../docker_db.sh oracle
bash $DIR/../docker_db.sh oracle_18
elif [ "$RDBMS" == 'mssql' ]; then
bash $DIR/../docker_db.sh mssql
elif [ "$RDBMS" == 'hana' ]; then
Expand Down
Loading

0 comments on commit 43d2274

Please sign in to comment.