Adjust handling of properties in config bucket / download script
- Dominant language
- Java
- Stars
- 107
- Forks
- 29
- Avg merge
- 19h 46m
- Merged PRs (30d)
- 141
Description
### User Story
As a user of Sleeper, I want to be able to take an instance configuration I've downloaded and use it as a base to configure other instances, so that I can replicate a previous configuration.
### Description / Background
We'd like to adjust how the `scripts/utility/downloadConfig.sh` script works to make it more useable to base the configuration of other instances from the result.
We'd like the downloaded configuration to match the format we would use to configure a new instance. Any additional configuration specific to an existing instance should be separate.
### Technical Notes / Implementation Details
Currently the script writes the instance and table properties mostly as they are in the config bucket, but formatted for more readability with comments describing the properties.
It splits out separate files for certain things, including the tags and the table schema, but it leaves those properties set in the properties file as well. This means that if you edit it and try to save it back, one or the other of these will overwrite the other, so if you guessed wrong about where to edit it your changes will be ignored. The property in the properties file will also generally be considerably less readable than in the separate file.
It includes CDK-defined properties, which should never be set when deploying an instance.
The Java code for the script is in the DownloadConfig class. This uses SaveLocalProperties to write the configuration after loading from the config bucket. This is tested in SaveLocalPropertiesIT.
Contributor guide
Assessment
This issue has not been assessed yet.