Abstract: |
In recent years, many application deployment technologies have emerged such as configuration management tools, e.g., Chef and Juju, infrastructure and platform technologies, e.g., Cloud Foundry and OpenStack, as well as container-based approaches, e.g., Docker. As a result, many repositories exist which contain executable and heavily used artifacts that can be used with these technologies, e.g., to deploy a WordPress application. However, to automate the deployment of more complex applications, typically, multiple of these technologies have to be used in combination. Thus, often, diverse artifacts stored in different repositories need to be integrated. This requires expertise about each technology and leads to a manual, complex, and error-prone integration step. In this paper, we tackle these issues: We present a method and system architecture that enables crawling repositories in order to transform the contained artifacts into technology-agnostic topology models, each describing the components that get installed as well as their dependencies. We show how these topologies can be combined to model the deployment of complex applications and how the resulting topology can be deployed automatically by one runtime. To prove the feasibility, we developed and evaluated a prototype based on the TOSCA standard and conducted a case study for Chef artifacts. |