Towards the canary manager exploring: A high-level language for automation of canary management
Master thesis
Published version
Permanent lenke
https://hdl.handle.net/11250/3016792Utgivelsesdato
2022Metadata
Vis full innførselSamlinger
Sammendrag
In this submission, we deal with themes and topics related to software deployment, but more specifically around the deployment strategy known as canary deployment, and the possibilities of automation within the concept. This thesis will explore surrounding facets of canaries, how research represents the method and how canaries are viewed in literature.
With this submission, the goal is to propose an approach to handling canary deployments through a high-level language. To achieve a relevant contribution towards this goal, an abstract model containing some of the envisioned key features of the language is created. With the model, the potential for reducing the complexity of implementing canary deployment as a strategy to a project is showing promise by reducing the lengthiness of scripts, centralizing the command of the deployment, and providing a syntax with a high degree of human readability.
The model is then tested on a canary deployment case described in the works of a preceding thesis discussing a similar topic, which ends up suggesting the need for a high level language. This is done to validate the assumed advantages of employing a high-level language rather than a series of tools or scripts. Furthermore, the model language's expressional power is tested by analysing its ability to respond to different scenarios with varying needs.
As a result, the language reaches a level of a framework, which shows promise as an improved alternative to combinations of tools and plugins for achieving canary deployment, as well as transcending its initial desired function, by introducing additional implementational features that extends the language's abilities.