Configuration-based deploy scripts
Created by: slifty
Right now the deploy processes for various competitions are explicit about the files they expect to exist (this is good!). This is done by having python code that explicitly hard codes the files that are being decrypted (and unzipped). The downside of this approach is it is a bit more verbose than it might otherwise be, and there is some logic repeated across the competitions.
What do we think of shifting to a deploy script model where the competition-specific-stuff is handled via yaml or json, and the deploy script is treated as a single script that is passed a configuration. For instance, the configuration might have the list of expected gpg files with optional checksums.
The script could then iterate through that list (and maybe even automatically detect zip files and inflate those files)
This approach would mean we could still benefit from things like checksums and ensuring that all of the expected files are there, but we wouldn't have to repeat things like GPG parameter logic and various types of path mapping.
(I may have some similar thoughts about the compose-and-upload processes once I get into that.)