On This page
On Related Pages
Templated Configuration
We use a configuration system to help us enforce isolation between our service stacks, our daemon stacks, dev vs. prod, etc...
The build when running as dev has everything it needs to be configured correctly.
non-dev property overrides
Non-dev property override files belong in versioned S3 bucket configuration.sagebase.org. Make a subfolder to keep things tidy.
S3 Versioning documentation http://docs.amazonwebservices.com/AmazonS3/latest/dev/Versioning.html
Note that the AWS Console does not shows the versions of the config files but you can see them via:
~/>s3curl.pl --id platform https://s3.amazonaws.com/configuration.sagebase.org/?versions
dev (local) property overrides
What to put in a local property override file
Right now it would need to be the concatenation of these files (and likely more in the future):
- platform/trunk/lib/stackConfiguration/src/main/resources/stack.properties
- platform/trunk/tools/tool-migration-utility/src/main/resources/searchUpdater.properties
- platform/trunk/tools/tcgaWorkflow/src/main/resources/tcgaWorkflow.properties
How to tell your local build to use a property override file
If you need to make your own local override file, you'll need to add a property similar to the following to your .m2/settings.xml
file:
<org.sagebionetworks.stack.configuration.url>file:///Users/deflaux/Config/devdeflaux.properties</org.sagebionetworks.stack.configuration.url>
How to get an/or use an encryption key
Recommended For your local stack, you can use the encryption key from sodo sodo:/work/platform/PasswordsAndCredentials/StackCredentials/devEncryptionKey.txt
Power Users Only Or make your own. The only requirement for the encryption key is that it is at least 24 characters long.
- For Mac/Linux: You can generate a key with OpenSSL
openssl genrsa -- or -- openssl enc -aes-128-cbc -k <key password> -P -md sha1
- For Windows Users: KeePass http://keepass.info/ create and store my keys using the 'generate key'->'128 bit Hex Key' option.
- To use your key to encrypt stuff
cd lib/stackConfiguration mvn exec:java -Dexec.mainClass="org.sagebionetworks.StringEncrypter" -Dexec.args="<database_password> <your_encryption_key>"