The application component pipelines do not deliver to an actual runtime environment, instead they create a releasable image only. The only required output is the versioned image, and the developer(s) are free to use whatever delivery mechanism they like to publish this image. In our case, there are two component patterns
PiP resolves Python dependencies, and gathers these, along with helper scripts, to produce a release package. The release package is then used to construct a runtime image, which in turn is smoke tested using docker-compose. The tested image is then pushed to the registry.
NPM resolves NodeJS dependencies, builds an image and pushes it to the registry.
Note: the Python
release.ps1
is an intermediary artefact, and not used to deploy to the runtime environments.