External Dependencies
Technology | Description | License |
---|---|---|
Bitbucket/GitHub/GitHub Enterprise/GitLab | Source Control Management System. Users must have access to one of the supported SCMs | |
Docker | Used with executor-k8s & executor-docker. Also required for running Screwdriver with SD in a box | Commercial |
Ember.js | Screwdriver UI | MIT |
Golang | Launcher & log-service are written in Golang | License |
Habitat | For packaging dependencies like curl in the Launcher container so that build containers have minimal required tooling | Apache 2.0 |
Hapi.js | API & Store web servers are based on Hapi | License |
Helm (Optional) | For deploying Screwdriver into k8s | Apache 2.0 |
HyperContainer (Optional) | Hypervisor-agnostic Docker runtime. Used with executor-k8s-vm | Apache 2.0 |
Jenkins (Optional) | Used in executor-jenkins | MIT |
JWT | For authentication & authorization | MIT |
Kubernetes | For running Screwdriver at scale using executor-k8s | Apache 2.0 |
MariaDB (Optional) | One of the options for Database | GPL Licence |
MySQL (Optional) | One of the options for Database | GPL or Commercial |
Node.js | Most application components are running in node.js | MIT |
Postgres (Optional) | One of the options for Database | PostgreSQL Licence |
RabbitMQ | For queueing builds to build clusters | Mozilla Public License |
Redis | For handling workflow use-cases(e.g.: periodic builds) | Three clause BSD license |
S3 (Optional) | One of the options for artifact storage | Commercial |
Sequelize | Multi SQL dialect ORM for Node.js | MIT |
SonarQube (Optional) | For providing code analysis via coverage-sonar bookend | GNU V3 |
Swagger | For API documentation | Apache 2.0 |
Prometheus (Optional) | For metrics based monitoring | Apache 2.0 |
Prometheus Pushgateway (Optional) | For build metrics | Apache 2.0 |