diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55e4b55..7b938c1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,9 @@ stages: - test - build + - deploy include: - local: .gitlab/ci/test.gitlab-ci.yml - - local: .gitlab/ci/build.gitlab-ci.yml \ No newline at end of file + - local: .gitlab/ci/build.gitlab-ci.yml + - local: .gitlab/ci/deploy.gitlab-ci.yml \ No newline at end of file diff --git a/.gitlab/ci/deploy.gitlab-ci.yml b/.gitlab/ci/deploy.gitlab-ci.yml new file mode 100644 index 0000000..effab0b --- /dev/null +++ b/.gitlab/ci/deploy.gitlab-ci.yml @@ -0,0 +1,7 @@ +build: + stage: build + image: docker:stable + script: + - docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY + + diff --git a/scripts/build_image.sh b/scripts/build_image.sh new file mode 100644 index 0000000..f5e0e25 --- /dev/null +++ b/scripts/build_image.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +VERSION="$(python get_replication_version.py)" + +echo "Building docker image with version ${VERSION}" +docker build --no-cache --build-arg version=${VERSION} -t registry.gitlab.com/slumber/multi-user/multi-user-server:0.1.0 ./docker_server + +echo "Pushing to gitlab registry ${VERSION}" +docker push registry.gitlab.com/slumber/multi-user/multi-user-server:0.1.0 \ No newline at end of file diff --git a/scripts/docker_server/Dockerfile b/scripts/docker_server/Dockerfile new file mode 100644 index 0000000..04f4c4f --- /dev/null +++ b/scripts/docker_server/Dockerfile @@ -0,0 +1,23 @@ +# Download base image debian jessie +FROM python:slim + +# Infos +LABEL maintainer="Swann Martinez" +LABEL version="0.1.0" +LABEL description="Blender multi-user addon \ + dedicated server image." + +ARG version=0.0.21a15 + +# Argument +ENV password='admin' +ENV port=5555 +ENV timeout=3000 +ENV log_level=INFO +ENV log_file="multiuser_server.log" + +#Install replication +RUN pip install replication==$version + +# Run the server with parameters +CMD replication.serve -pwd ${password} -p ${port} -t ${timeout} -l ${log_level} -lf ${log_file} diff --git a/scripts/get_replication_version.py b/scripts/get_replication_version.py new file mode 100644 index 0000000..e300963 --- /dev/null +++ b/scripts/get_replication_version.py @@ -0,0 +1,4 @@ +import re + +init_py = open("../multi_user/__init__.py").read() +print(re.search("\d+\.\d+\.\d+\w\d+|\d+\.\d+\.\d+", init_py).group(0))