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 Apache 2.0
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