magnum/dockerfiles/heat-container-agent/Dockerfile
Spyros Trigazis 0b5f4260d9 k8s_fedora: Deploy tiller
Add enable_tiller  label to install tiller in k8s_fedora_atomic
clusters. Defaults to false.

Add tiller_tag label to select the version of tiller. If the
tag is not set the tag that matches the helm client version in
the heat-agent will be picked.  The tiller image can be stored
in a private registry and the cluster can pull it using the
container_infra_prefix label.

Install tiller securely using helper container.

TODO:

*add instructions on how RBAC is designed
https://docs.helm.sh/using_helm/#example-deploy-tiller-in-a-namespace-restricted-to-deploying-resources-in-another-namespace
* add docs on how to install addon in the cluster using this tiller
* how users can get the creds to talk to tiller

NOTE:
The main goal of this tiller is internal usage!
Users can still deploy other tillers in other namespaces.

story: 2003902
task: 26780

Change-Id: I99d3a78085ba10030200f12bbfe58a72964e2326
Signed-off-by: dioguerra <dy090.guerra@gmail.com>
2019-02-11 11:18:08 +01:00

62 lines
1.7 KiB
Docker

FROM fedora:rawhide
# Fill out the labels
LABEL name="heat-container-agent" \
maintainer="Spyros Trigazis <strigazi@gmail.com>" \
license="UNKNOWN" \
summary="Heat Container Agent system image" \
version="1.0" \
help="No help" \
architecture="x86_64" \
atomic.type="system" \
distribution-scope="public"
RUN dnf -y --setopt=tsflags=nodocs install \
bash \
findutils \
gcc \
kubernetes-client \
openssh-clients \
openssl \
python-devel \
python-pip \
python-psutil \
redhat-rpm-config && \
pip install --no-cache --no-cache-dir \
dib-utils \
dpath \
os-apply-config \
os-collect-config \
os-refresh-config \
python-heatclient \
python-keystoneclient && \
dnf remove -y gcc redhat-rpm-config -y && \
dnf clean all
ADD ./scripts/55-heat-config \
/opt/heat-container-agent/scripts/
ADD ./scripts/50-heat-config-docker-compose \
/opt/heat-container-agent/scripts/
ADD ./scripts/hooks/* \
/opt/heat-container-agent/hooks/
ADD ./scripts/heat-config-notify \
/usr/bin/heat-config-notify
RUN chmod 755 /usr/bin/heat-config-notify
ADD ./scripts/configure_container_agent.sh /opt/heat-container-agent/
RUN chmod 700 /opt/heat-container-agent/configure_container_agent.sh
ADD ./scripts/write-os-apply-config-templates.sh /tmp
RUN chmod 700 /tmp/write-os-apply-config-templates.sh
RUN /tmp/write-os-apply-config-templates.sh
COPY manifest.json service.template config.json.template tmpfiles.template /exports/
COPY launch /usr/bin/start-heat-container-agent
# Execution
CMD ["/usr/bin/start-heat-container-agent"]