All Projects → teamhephy → controller

teamhephy / controller

Licence: MIT license
Hephy Workflow Controller (API)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to controller

Knctl
Knative CLI
Stars: ✭ 163 (+1064.29%)
Mutual labels:  paas
Panteras
PanteraS - PaaS - Platform as a Service in a box
Stars: ✭ 189 (+1250%)
Mutual labels:  paas
Containership
A simple container management platform
Stars: ✭ 241 (+1621.43%)
Mutual labels:  paas
Choerodon
Open Source Multi-Cloud Integrated Platform
Stars: ✭ 2,149 (+15250%)
Mutual labels:  paas
Minishift
Run OpenShift 3.x locally
Stars: ✭ 2,246 (+15942.86%)
Mutual labels:  paas
Wordpress Heroku
This project is a template for installing and running WordPress 5.x on Heroku.
Stars: ✭ 198 (+1314.29%)
Mutual labels:  paas
Hrcloud2
A full-featured home hosted Cloud Drive, Personal Assistant, App Launcher, File Converter, Streamer, Share Tool & More!
Stars: ✭ 134 (+857.14%)
Mutual labels:  paas
Docs
User documentation for Knative components.
Stars: ✭ 3,106 (+22085.71%)
Mutual labels:  paas
Codeflow
Open source event based Platform as a Service
Stars: ✭ 188 (+1242.86%)
Mutual labels:  paas
Mpaas
mPaaS Demo 合集,mPaaS 是源自于支付宝的移动开发平台。The collection of demos for mPaaS components. mPaaS is the Mobile Development Platform which oriented from Alipay.
Stars: ✭ 238 (+1600%)
Mutual labels:  paas
Space Cloud
Open source Firebase + Heroku to develop, scale and secure serverless apps on Kubernetes
Stars: ✭ 3,323 (+23635.71%)
Mutual labels:  paas
Mypaas
Run your own PaaS using Docker, Traefik, and great analytics
Stars: ✭ 183 (+1207.14%)
Mutual labels:  paas
Stratos
Stratos: Web-based Management UI for Cloud Foundry and Kubernetes
Stars: ✭ 209 (+1392.86%)
Mutual labels:  paas
1backend
Run your web apps easily with a complete platform that you can install on any server. Build composable microservices and lambdas.
Stars: ✭ 2,024 (+14357.14%)
Mutual labels:  paas
Rainbond
Cloud-native and easy-to-use application management platform | 云原生且易用的应用管理平台
Stars: ✭ 2,871 (+20407.14%)
Mutual labels:  paas
Rack
Private PaaS built on native AWS services for maximum privacy and minimum upkeep
Stars: ✭ 1,836 (+13014.29%)
Mutual labels:  paas
Platformsh Cli
The unified tool for managing your Platform.sh services from the command line.
Stars: ✭ 192 (+1271.43%)
Mutual labels:  paas
xxcloud
xxcloud,旨在整合数据中心异构虚拟化资源为统一的资源池,并在资源池上为用户提供各类IAAS、PAAS服务。
Stars: ✭ 64 (+357.14%)
Mutual labels:  paas
Empire
A PaaS built on top of Amazon EC2 Container Service (ECS)
Stars: ✭ 2,660 (+18900%)
Mutual labels:  paas
Awesome Heroku
A curated list of helpful Heroku resources.
Stars: ✭ 230 (+1542.86%)
Mutual labels:  paas

Deis Controller

Build Status codecov.io Docker Repository on Quay

Deis (pronounced DAY-iss) Workflow is an open source Platform as a Service (PaaS) that adds a developer-friendly layer to any Kubernetes cluster, making it easy to deploy and manage applications on your own servers.

For more information about the Deis Workflow, please visit the main project page at https://github.com/teamhephy/workflow.

We welcome your input! If you have feedback, please submit an issue. If you'd like to participate in development, please read the "Development" section below and submit a pull request.

About

The Controller is the central API server for Deis Workflow. It is installed on a Kubernetes cluster, making it easy to deploy and manage applications on your own cluster. Below is a non-exhaustive list of things it can do:

  • Create a new application
  • Delete an application
  • Scale an application
  • Configure an application
  • Create a new user

Development

The Deis project welcomes contributions from all developers. The high-level process for development matches many other open source projects. See below for an outline.

  • Fork this repository
  • Make your changes
  • Submit a pull request (PR) to this repository with your changes, and unit tests whenever possible.
    • If your PR fixes any issues, make sure you write Fixes #1234 in your PR description (where #1234 is the number of the issue you're closing)
  • Deis project maintainers will review your code.
  • After two maintainers approve it, they will merge your PR.

Prerequisites

Docker

Unit tests and code linters for controller run in a Docker container with your local code directory mounted in. You need Docker to run make test.

Kubernetes

You'll want to test your code changes interactively in a working Kubernetes cluster. Follow the installation instructions if you need Kubernetes.

Workflow Installation

After you have a working Kubernetes cluster, you're ready to install Workflow.

Testing Your Code

When you've built your new feature or fixed a bug, make sure you've added appropriate unit tests and run make test to ensure your code works properly.

Also, since this component is central to the platform, it's recommended that you manually test and verify that your feature or fix works as expected. To do so, ensure the following environment variables are set:

  • DEIS_REGISTRY - A Docker registry that you have push access to and your Kubernetes cluster can pull from
    • If this is Docker Hub, leave this variable empty
    • Otherwise, ensure it has a trailing /. For example, if you're using Quay.io, use quay.io/
  • IMAGE_PREFIX - The organization in the Docker repository. This defaults to deis, but if you don't have access to that organization, set this to one you have push access to.
  • SHORT_NAME (optional) - The name of the image. This defaults to controller
  • VERSION (optional) - The tag of the Docker image. This defaults to the current Git SHA (the output of git rev-parse --short HEAD)

Then, run make deploy to build and push a new Docker image with your changes and replace the existing one with your new one in the Kubernetes cluster. See below for an example with appropriate environment variables.

export DEIS_REGISTRY=quay.io/
export IMAGE_PREFIX=arschles
make deploy

After the make deploy finishes, a new pod will be launched but may not be running. You'll need to wait until the pod is listed as Running and the value in its Ready column is 1/1. Use the following command watch the pod's status:

kubectl get pod --namespace=deis -w | grep deis-controller
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].