From 11a980feb09012db3e75d8817f908436eb13db68 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 15:11:56 +0200 Subject: Dockerfile and build script --- docker/Dockerfile | 15 +++++++++++++++ docker/build.sh | 19 +++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 docker/Dockerfile create mode 100755 docker/build.sh (limited to 'docker') diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 00000000..9c4406bf --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,15 @@ +FROM python:3.6-alpine3.7 +RUN apk add --update tini git + +RUN mkdir /bot +COPY . /bot +WORKDIR /bot + +ENV LIBRARY_PATH=/lib:/usr/lib + +RUN pip install pipenv +RUN pipenv install --deploy --system + +ENTRYPOINT ["/sbin/tini", "--"] +CMD ["python", "-m", "bot"] + diff --git a/docker/build.sh b/docker/build.sh new file mode 100755 index 00000000..337f47c6 --- /dev/null +++ b/docker/build.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +# Build and deploy on master branch +#if [[ $TRAVIS_BRANCH == 'master' && $TRAVIS_PULL_REQUEST == 'false' ]]; then + echo "Connecting to docker hub" + echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin + + echo "Building image" + docker build -t pythondiscord/hacktober-bot:latest -f docker/Dockerfile . + + echo "Pushing image" + docker push pythondiscord/hacktober-bot:latest + +# echo "Deploying container" +# curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK +#else +# echo "Skipping deploy" +#fi + -- cgit v1.2.3 From 29411f024301ae492c3d3796489d1340754c5336 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 16:27:28 +0200 Subject: Add compose file --- docker/docker-compose.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 docker/docker-compose.yml (limited to 'docker') diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml new file mode 100644 index 00000000..0a802ddc --- /dev/null +++ b/docker/docker-compose.yml @@ -0,0 +1,11 @@ +version: "3" +services: + dumbo: + image: pythondiscord/hacktober-bot:latest + container_name: hacktoberbot + + restart: always + + environment: + - HACKTOBERBOT_TOKEN + -- cgit v1.2.3 From 7698f93144ffa38896fd4ad82cda5a4a44b0dbd7 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:16:02 +0200 Subject: Move pepper command to build.sh --- .travis.yml | 1 - docker/build.sh | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'docker') diff --git a/.travis.yml b/.travis.yml index f4586702..6f204bdb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,4 +15,3 @@ install: script: - pipenv run lint - sh docker/build.sh - - pepper "glimglam.gserv.me" state.apply docker/hacktoberbot -u $SALTAPI_URL -a $SALTAPI_EAUTH --username $SALTAPI_USER --password $SALTAPI_PASS &> /dev/null diff --git a/docker/build.sh b/docker/build.sh index 337f47c6..f0a98e49 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -10,6 +10,9 @@ echo "Pushing image" docker push pythondiscord/hacktober-bot:latest + + echo "Deploying on server" + pepper "glimglam.gserv.me" state.apply docker/hacktoberbot -u $SALTAPI_URL -a $SALTAPI_EAUTH --username $SALTAPI_USER --password $SALTAPI_PASS &> /dev/null # echo "Deploying container" # curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK -- cgit v1.2.3 From c7d92f8086e951b170f5290ca91edb07adce1851 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:32:14 +0100 Subject: Update vars in build.sh --- docker/build.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index f0a98e49..7e275a9c 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -12,11 +12,10 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper "glimglam.gserv.me" state.apply docker/hacktoberbot -u $SALTAPI_URL -a $SALTAPI_EAUTH --username $SALTAPI_USER --password $SALTAPI_PASS &> /dev/null + pepper "glimglam.gserv.me" state.apply docker/hacktoberbot -u ${SALTAPI_URL} -a ${SALTAPI_EAUTH} --username ${SALTAPI_USER} --password ${SALTAPI_PASS} &> /dev/null # echo "Deploying container" # curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK #else # echo "Skipping deploy" #fi - -- cgit v1.2.3 From d9e4d95613b69d9bf420c83f7f7655711fac1a79 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:36:21 +0100 Subject: Pepper params are key=value --- docker/build.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index 7e275a9c..f4b54d4d 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -12,7 +12,10 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper "glimglam.gserv.me" state.apply docker/hacktoberbot -u ${SALTAPI_URL} -a ${SALTAPI_EAUTH} --username ${SALTAPI_USER} --password ${SALTAPI_PASS} &> /dev/null + pepper "glimglam.gserv.me" state.apply docker/hacktoberbot \ + --saltapi-url=${SALTAPI_URL} --auth=${SALTAPI_EAUTH} \ + --username=${SALTAPI_USER} --password=${SALTAPI_PASS} \ + &> /dev/null # echo "Deploying container" # curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK -- cgit v1.2.3 From 53b6ad68e2444cd15f2a30ecb5dc223a68b30dd1 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:40:29 +0100 Subject: Pepper: See no evil.. --- docker/build.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index f4b54d4d..dd703986 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -12,9 +12,9 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper "glimglam.gserv.me" state.apply docker/hacktoberbot \ - --saltapi-url=${SALTAPI_URL} --auth=${SALTAPI_EAUTH} \ - --username=${SALTAPI_USER} --password=${SALTAPI_PASS} \ + pepper "$SALTAPI_TARGET" state.apply docker/hacktoberbot \ + --saltapi-url="$SALTAPI_URL" --auth="$SALTAPI_EAUTH" \ + --username="$SALTAPI_USER" --password="$SALTAPI_PASS" \ &> /dev/null # echo "Deploying container" -- cgit v1.2.3 From 4f6706ef1dc0abfefdf75d384b2cd0f28cf9216b Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:49:09 +0100 Subject: Pepper: Fixed syntax again --- docker/build.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index dd703986..7b97afcc 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -12,9 +12,9 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper "$SALTAPI_TARGET" state.apply docker/hacktoberbot \ - --saltapi-url="$SALTAPI_URL" --auth="$SALTAPI_EAUTH" \ - --username="$SALTAPI_USER" --password="$SALTAPI_PASS" \ + pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot \ + --saltapi-url=${SALTAPI_URL} --auth=${SALTAPI_EAUTH} \ + --username=${SALTAPI_USER} --password=${SALTAPI_PASS} \ &> /dev/null # echo "Deploying container" -- cgit v1.2.3 From c758208b85ada40c13b4e0a02cbef0992b4fdd2a Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 17:54:33 +0100 Subject: Make pepper behave more suitably for deployment --- docker/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index 7b97afcc..4cf22c6d 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -15,7 +15,7 @@ pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot \ --saltapi-url=${SALTAPI_URL} --auth=${SALTAPI_EAUTH} \ --username=${SALTAPI_USER} --password=${SALTAPI_PASS} \ - &> /dev/null + --out=no_out --non-interactive # echo "Deploying container" # curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK -- cgit v1.2.3 From 7ca433000e7ad5f1b5e5ba779faf98959c508db2 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Wed, 10 Oct 2018 20:29:24 +0100 Subject: Remove extra params to pepper --- docker/build.sh | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index 4cf22c6d..289f54e2 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -12,10 +12,7 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot \ - --saltapi-url=${SALTAPI_URL} --auth=${SALTAPI_EAUTH} \ - --username=${SALTAPI_USER} --password=${SALTAPI_PASS} \ - --out=no_out --non-interactive + pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot --out=no_out --non-interactive # echo "Deploying container" # curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK -- cgit v1.2.3 From 713bc1157d45f12a92a5c3ee9eedd83ff11d197d Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Thu, 11 Oct 2018 19:35:46 +0100 Subject: Deployment is working now --- docker/build.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index 289f54e2..ee46bf40 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -1,7 +1,7 @@ #!/bin/bash # Build and deploy on master branch -#if [[ $TRAVIS_BRANCH == 'master' && $TRAVIS_PULL_REQUEST == 'false' ]]; then +if [[ $TRAVIS_BRANCH == 'master' && $TRAVIS_PULL_REQUEST == 'false' ]]; then echo "Connecting to docker hub" echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin @@ -12,10 +12,10 @@ docker push pythondiscord/hacktober-bot:latest echo "Deploying on server" - pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot --out=no_out --non-interactive + pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot --out=no_out --non-interactive &> /dev/null -# echo "Deploying container" -# curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK -#else -# echo "Skipping deploy" -#fi + echo "Deploying container" + curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK +else + echo "Skipping deploy" +fi -- cgit v1.2.3 From c3dce15ddc362757cc0e8e989395d80c39f24725 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Thu, 11 Oct 2018 20:25:05 +0100 Subject: Remove extra lines in build script --- docker/build.sh | 3 --- 1 file changed, 3 deletions(-) (limited to 'docker') diff --git a/docker/build.sh b/docker/build.sh index ee46bf40..153fbccc 100755 --- a/docker/build.sh +++ b/docker/build.sh @@ -13,9 +13,6 @@ if [[ $TRAVIS_BRANCH == 'master' && $TRAVIS_PULL_REQUEST == 'false' ]]; then echo "Deploying on server" pepper ${SALTAPI_TARGET} state.apply docker/hacktoberbot --out=no_out --non-interactive &> /dev/null - - echo "Deploying container" - curl -H "token: $AUTODEPLOY_TOKEN" $AUTODEPLOY_WEBHOOK else echo "Skipping deploy" fi -- cgit v1.2.3