Skip to content

Commit

Permalink
Build: Add task interdependencies for ssl configuration (#30633)
Browse files Browse the repository at this point in the history
This commit fixes the tasks creating ssl certs for tests to have correct
dependsOn to ensure the right tasks are run before tests run.
  • Loading branch information
rjernst committed May 16, 2018
1 parent f1073f5 commit ef427c5
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 13 deletions.
10 changes: 3 additions & 7 deletions x-pack/qa/smoke-test-plugins-ssl/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ task exportNodeCertificate(type: LoggedExec) {

// Import the node certificate in the client's keystore
task importNodeCertificateInClientKeyStore(type: LoggedExec) {
dependsOn exportNodeCertificate
dependsOn createClientKeyStore, exportNodeCertificate
executable = new File(project.runtimeJavaHome, 'bin/keytool')
args '-import',
'-alias', 'test-node',
Expand Down Expand Up @@ -137,7 +137,7 @@ task exportClientCertificate(type: LoggedExec) {

// Import the client certificate in the node's keystore
task importClientCertificateInNodeKeyStore(type: LoggedExec) {
dependsOn exportClientCertificate
dependsOn createNodeKeyStore, exportClientCertificate
executable = new File(project.runtimeJavaHome, 'bin/keytool')
args '-import',
'-alias', 'test-client',
Expand All @@ -153,14 +153,10 @@ forbiddenPatterns {

// Add keystores to test classpath: it expects it there
sourceSets.test.resources.srcDir(keystoreDir)
processTestResources.dependsOn(
createNodeKeyStore, createClientKeyStore,
importNodeCertificateInClientKeyStore, importClientCertificateInNodeKeyStore
)
processTestResources.dependsOn(importNodeCertificateInClientKeyStore, importClientCertificateInNodeKeyStore)

integTestCluster.dependsOn(importClientCertificateInNodeKeyStore, importNodeCertificateInClientKeyStore)


ext.pluginsCount = 0
project(':plugins').getChildProjects().each { pluginName, pluginProject ->
// need to get a non-decorated project object, so must re-lookup the project by path
Expand Down
11 changes: 5 additions & 6 deletions x-pack/qa/sql/security/ssl/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ task createClientKeyStore(type: LoggedExec) {
// Export the node's certificate
File nodeCertificate = new File(keystoreDir, 'test-node.cert')
task exportNodeCertificate(type: LoggedExec) {
dependsOn createNodeKeyStore
doFirst {
if (nodeCertificate.parentFile.exists() == false) {
nodeCertificate.parentFile.mkdirs()
Expand All @@ -92,7 +93,7 @@ task exportNodeCertificate(type: LoggedExec) {

// Import the node certificate in the client's keystore
task importNodeCertificateInClientKeyStore(type: LoggedExec) {
dependsOn exportNodeCertificate
dependsOn createClientKeyStore, exportNodeCertificate
executable = new File(project.runtimeJavaHome, 'bin/keytool')
args '-import',
'-alias', 'test-node',
Expand All @@ -105,6 +106,7 @@ task importNodeCertificateInClientKeyStore(type: LoggedExec) {
// Export the client's certificate
File clientCertificate = new File(keystoreDir, 'test-client.cert')
task exportClientCertificate(type: LoggedExec) {
dependsOn createClientKeyStore
doFirst {
if (clientCertificate.parentFile.exists() == false) {
clientCertificate.parentFile.mkdirs()
Expand All @@ -123,7 +125,7 @@ task exportClientCertificate(type: LoggedExec) {

// Import the client certificate in the node's keystore
task importClientCertificateInNodeKeyStore(type: LoggedExec) {
dependsOn exportClientCertificate
dependsOn createNodeKeyStore, exportClientCertificate
executable = new File(project.runtimeJavaHome, 'bin/keytool')
args '-import',
'-alias', 'test-client',
Expand All @@ -139,10 +141,7 @@ forbiddenPatterns {

// Add keystores to test classpath: it expects it there
sourceSets.test.resources.srcDir(keystoreDir)
processTestResources.dependsOn(
createNodeKeyStore, createClientKeyStore,
importNodeCertificateInClientKeyStore, importClientCertificateInNodeKeyStore
)
processTestResources.dependsOn(importNodeCertificateInClientKeyStore, importClientCertificateInNodeKeyStore)

integTestCluster.dependsOn(importClientCertificateInNodeKeyStore)

Expand Down

0 comments on commit ef427c5

Please sign in to comment.