From d11b7d83abce3266338300e85ddd3c6eeb05a77c Mon Sep 17 00:00:00 2001 From: dcore94 Date: Fri, 30 Oct 2020 19:19:31 +0100 Subject: [PATCH] new release --- build-base.sh | 10 ++++++++++ build-provisioning.sh | 10 ++++++++++ config.cfg | 3 +-- docker/base/Dockerfile | 8 ++++++++ docker/base/entrypoint.sh | 14 ++++++++++++++ docker/base/requirements.txt | 2 ++ docker/provisioning/Dockerfile | 8 ++++++++ docker/provisioning/entrypoint.sh | 14 ++++++++++++++ docker/provisioning/requirements.txt | 1 + 9 files changed, 68 insertions(+), 2 deletions(-) create mode 100755 build-base.sh create mode 100755 build-provisioning.sh create mode 100644 docker/base/Dockerfile create mode 100755 docker/base/entrypoint.sh create mode 100644 docker/base/requirements.txt create mode 100644 docker/provisioning/Dockerfile create mode 100755 docker/provisioning/entrypoint.sh create mode 100644 docker/provisioning/requirements.txt diff --git a/build-base.sh b/build-base.sh new file mode 100755 index 0000000..c4b494d --- /dev/null +++ b/build-base.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +if [ $# -eq 0 ] + then + tag='latest' + else + tag=$1 +fi + +docker build -t nubisware/nubisware-conductor-worker-py-base:$tag -f docker/base/Dockerfile . +docker push nubisware/nubisware-conductor-worker-py-base:$tag diff --git a/build-provisioning.sh b/build-provisioning.sh new file mode 100755 index 0000000..d62bec9 --- /dev/null +++ b/build-provisioning.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +if [ $# -eq 0 ] + then + tag='latest' + else + tag=$1 +fi + +docker build -t nubisware/nubisware-conductor-worker-py-provisioning:$tag -f docker/provisioning/Dockerfile . +#docker push nubisware/nubisware-conductor-worker-py-provisioning:$tag diff --git a/config.cfg b/config.cfg index 2374e47..cda049d 100644 --- a/config.cfg +++ b/config.cfg @@ -1,11 +1,10 @@ [common] -loglevel = info +loglevel = debug server = http://conductorserver:8080/api #server = http://localhost:8080/api threads = 3 pollrate = .1 #domain = comma separated list of task domains to be applied to all task types as fallback -domain = marco [pyexec] #domain = comma separated list of task domains to be applied to pyexec task type diff --git a/docker/base/Dockerfile b/docker/base/Dockerfile new file mode 100644 index 0000000..573cccb --- /dev/null +++ b/docker/base/Dockerfile @@ -0,0 +1,8 @@ +FROM python:3.7 +COPY ./docker/base/requirements.txt /app/ +RUN pip install -r /app/requirements.txt +COPY conductor/ /app/conductor +COPY pyexecplugins/ /app/pyexecplugins +COPY ./docker/base/requirements.txt PyExec.py config.cfg ./docker/base/entrypoint.sh /app/ +WORKDIR /app +ENTRYPOINT ["/app/entrypoint.sh"] diff --git a/docker/base/entrypoint.sh b/docker/base/entrypoint.sh new file mode 100755 index 0000000..3665471 --- /dev/null +++ b/docker/base/entrypoint.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +export BASE=${CONDUCTOR_SERVER:-http://conductorserver:8080/api} + +echo 'Waiting for Conductor at ' $BASE '...' + +while [[ "$(curl -s -o /dev/null -L -w ''%{http_code}'' $BASE/health)" != 200 ]]; do + echo 'still waiting ...' + sleep 5 +done + +echo 'Starting default workers...' + +python3 PyExec.py Http Shell Eval diff --git a/docker/base/requirements.txt b/docker/base/requirements.txt new file mode 100644 index 0000000..a3751e6 --- /dev/null +++ b/docker/base/requirements.txt @@ -0,0 +1,2 @@ +requests >= 2.19.1 + diff --git a/docker/provisioning/Dockerfile b/docker/provisioning/Dockerfile new file mode 100644 index 0000000..d6fd71c --- /dev/null +++ b/docker/provisioning/Dockerfile @@ -0,0 +1,8 @@ +FROM nubisware/nubisware-conductor-worker-py-base:latest +COPY ./docker/provisioning/requirements.txt /app/ +RUN pip install -r /app/requirements.txt +RUN apt-get update +RUN apt-get -y install packer +WORKDIR /app +COPY ./docker/base/entrypoint.sh /app/ +ENTRYPOINT ["/app/entrypoint.sh"] diff --git a/docker/provisioning/entrypoint.sh b/docker/provisioning/entrypoint.sh new file mode 100755 index 0000000..3c8eb8f --- /dev/null +++ b/docker/provisioning/entrypoint.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +export BASE=${CONDUCTOR_SERVER:-http://conductorserver:8080/api} + +echo 'Waiting for Conductor ...' + +while [[ "$(curl -s -o /dev/null -L -w ''%{http_code}'' $BASE/health)" != 200 ]]; do + echo 'still waiting ...' + sleep 5 +done + +echo 'Starting provisioning workers...' + +python3 PyExec.py Ansible Packer diff --git a/docker/provisioning/requirements.txt b/docker/provisioning/requirements.txt new file mode 100644 index 0000000..75f651c --- /dev/null +++ b/docker/provisioning/requirements.txt @@ -0,0 +1 @@ +ansible >= 2.8