adding dockerfile

This commit is contained in:
Brandon B. Jozsa 2017-03-10 16:34:19 -05:00
parent 8d054558ab
commit 31546f2956
2 changed files with 46 additions and 4 deletions

34
Dockerfile Normal file
View File

@ -0,0 +1,34 @@
FROM ubuntu:16.04
MAINTAINER bjozsa@att.com
ENV USER=armada \
VERSION=master
RUN apt-get update && \
apt-get install -y \
build-essential \
git \
git-review \
python-virtualenv \
python-dev \
python-pip \
gcc \
libssl-dev \
libffi-dev \
libgit2-dev
RUN useradd -ms /bin/bash armada
USER armada
WORKDIR /home/armada
RUN git clone -b $VERSION https://github.com/att-comdev/armada.git
WORKDIR /home/armada/armada
RUN virtualenv --no-site-packages /home/armada/.armada && \
. /home/armada/.armada/bin/activate
RUN /home/armada/.armada/bin/pip install -r /home/armada/armada/requirements.txt
RUN /home/armada/.armada/bin/python ./setup.py install
ENTRYPOINT ["/home/armada/.armada/bin/armada"]
CMD ["-h"]

View File

@ -1,11 +1,10 @@
# Armada
[![Build Status](https://travis-ci.org/att-comdev/armada.svg?branch=master)](https://travis-ci.org/att-comdev/armada)
# Armada [![Docker Repository on Quay](https://quay.io/repository/attcomdev/armada/status "Docker Repository on Quay")](https://quay.io/repository/attcomdev/armada) [![Build Status](https://travis-ci.org/att-comdev/armada.svg?branch=master)](https://travis-ci.org/att-comdev/armada)
A python orchestrator for a installing, upgrading, and managing a collection of helm charts, dependencies, and values overrides.
Note that this project is pre-alpha and under active development. It may undergo drastic changes to support the long-term vision but contributions are welcome.
# Overview
The armada python library and command line tool provides a way to synchronize a helm (tiller) target with an operators intended state, consisting of several charts, dependencies, and overrides using a single file or directory with a collection of files. This allows operators to define many charts, potentially with different namespaces for those releases, and their overrides in a central place. With a single command, deploy and/or upgrade them where applicable.
@ -16,6 +15,15 @@ It will also give the operator some indication of what is about to change by ass
Its functionality may extend beyond helm, assisting in interacting with kubernetes directly to perform basic pre and post steps, such as removing completed or failed jobs, running backup jobs, blocking on chart readiness, or deleting resources that do not support upgrades. However, primarily, it will be an interface to support orchestrating Helm.
## Running Armada
To use this container, use these simple instructions:
```
docker run quay.io/attcomdev/armada:latest
```
# Installation
The installation is fairly straight forward:
@ -90,4 +98,4 @@ The helm gRPC libraries are located in the hapi directory. They were generated
python -m grpc_tools.protoc -I helm/_proto --python_out=. --grpc_python_out=. helm/_proto/hapi/services/*
python -m grpc_tools.protoc -I helm/_proto --python_out=. --grpc_python_out=. helm/_proto/hapi/release/*
python -m grpc_tools.protoc -I helm/_proto --python_out=. --grpc_python_out=. helm/_proto/hapi/version/*
```
```