Our current release procedure consists of taking a snapshot and putting it on the R drive. We cannot rebuild that snapshot, and it's difficult to patch with certainty. Even if we documented this as the approach to take, this would fail any audit.
Here I will sketch out a design for what I think is necessary to achieve a re-buildable release. It is however only a proposal and ideas are welcome.
...
The problem we have is that our code-base is split across multiple repos, most of which are badly structured. We cannot easily move into a git-flow structured environment without need to re-architecting the codebase, although some work in that respect is under wayarchitect the code-base so it can be branched easily.
An interim approach would be to label all the necessary repos on the Master branch, check the repos on the label out and build - probably with a script.
...