gchq / gchq/sleeper

Adjust handling of properties in config bucket / download script

Open
#6,282 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.