Make devProject a project property (#405)

* Make devProject a project property

Properties set in rootProject's ext block are not overridden by
commandline flags.

* Make flyway commands runnable from FOSS repo

rootProject.devProject, defined in projects.gradle, cannot be
overridden by commandline flags. Added a flag check in :db's
project script.
This commit is contained in:
Weimin Yu 2019-12-10 11:39:56 -05:00 committed by GitHub
parent 0171e16d91
commit 3690a2b7ce

View file

@ -71,14 +71,16 @@ ext {
// production. The role parameter may be superuser. (More roles will be added // production. The role parameter may be superuser. (More roles will be added
// later). // later).
getCloudSqlCredential = { env, role -> getCloudSqlCredential = { env, role ->
def devProject = project.hasProperty('devProject')
? project.getProperty('devProject') : rootProject.devProject
def command = def command =
"""gsutil cp \ """gsutil cp \
gs://${rootProject.devProject}-deploy/cloudsql-credentials/${env}/${role}_credential.enc - | \ gs://${devProject}-deploy/cloudsql-credentials/${env}/${role}_credential.enc - | \
base64 -d | \ base64 -d | \
gcloud kms decrypt --location global --keyring nomulus-tool-keyring \ gcloud kms decrypt --location global --keyring nomulus-tool-keyring \
--key nomulus-tool-key --plaintext-file=- \ --key nomulus-tool-key --plaintext-file=- \
--ciphertext-file=- \ --ciphertext-file=- \
--project=${rootProject.devProject}""" --project=${devProject}"""
return execInBash(command, '/tmp') return execInBash(command, '/tmp')
} }
@ -157,6 +159,7 @@ dependencies {
testCompile project(':third_party') testCompile project(':third_party')
} }
flywayInfo.dependsOn('buildNeeded')
flywayValidate.dependsOn('buildNeeded') flywayValidate.dependsOn('buildNeeded')
if (ext.isCloudSql()) { if (ext.isCloudSql()) {