diff --git a/infrastructure/docker-jitsi-web/build.py b/infrastructure/docker-jitsi-web/build.py new file mode 100644 index 0000000..36d085a --- /dev/null +++ b/infrastructure/docker-jitsi-web/build.py @@ -0,0 +1,49 @@ +from os import environ +from pybuilder.core import task, init +from ddadevops import * +import logging + +name = 'c4k-cloud' +MODULE = 'docker' +PROJECT_ROOT_PATH = '../..' + + +class MyBuild(DevopsDockerBuild): + pass + +@init +def initialize(project): + project.build_depends_on('ddadevops>=0.12.7') + stage = 'notused' + dockerhub_user = environ.get('DOCKERHUB_USER') + if not dockerhub_user: + dockerhub_user = gopass_field_from_path('meissa/web/docker.com', 'login') + dockerhub_password = environ.get('DOCKERHUB_PASSWORD') + if not dockerhub_password: + dockerhub_password = gopass_password_from_path('meissa/web/docker.com') + config = create_devops_docker_build_config( + stage, PROJECT_ROOT_PATH, MODULE, dockerhub_user, dockerhub_password) + build = MyBuild(project, config) + build.initialize_build_dir() + + +@task +def image(project): + build = get_devops_build(project) + build.image() + +@task +def drun(project): + build = get_devops_build(project) + build.drun() + +@task +def test(project): + build = get_devops_build(project) + build.test() + +@task +def publish(project): + build = get_devops_build(project) + build.dockerhub_login() + build.dockerhub_publish() diff --git a/infrastructure/docker-jitsi-web/image/Dockerfile b/infrastructure/docker-jitsi-web/image/Dockerfile new file mode 100644 index 0000000..0584f40 --- /dev/null +++ b/infrastructure/docker-jitsi-web/image/Dockerfile @@ -0,0 +1,7 @@ +FROM jitsi/web:stable-6826 + +# Prepare Entrypoint Script +ADD resources /tmp +RUN /tmp/install.sh + +ENTRYPOINT ["/entrypoint.sh"] diff --git a/infrastructure/docker-jitsi-web/image/resources/entrypoint.sh b/infrastructure/docker-jitsi-web/image/resources/entrypoint.sh new file mode 100644 index 0000000..ee958dd --- /dev/null +++ b/infrastructure/docker-jitsi-web/image/resources/entrypoint.sh @@ -0,0 +1,20 @@ +#!/bin/sh +set -eu + +echo " +config.disableThirdPartyRequests = true; +config.defaultLanguage = 'de'; +config.resolution = 480; +config.constraints.video = { + aspectRatio: 16 / 9, + height: { + ideal: 480, + max: 480, + min: 240 + } +config.channelLastN = 8; +config.enableLayerSuspension = true; +config.disableAudioLevels = true; +" >> /config/config.js + +/init \ No newline at end of file diff --git a/infrastructure/docker-jitsi-web/image/resources/install-debug.sh b/infrastructure/docker-jitsi-web/image/resources/install-debug.sh new file mode 100644 index 0000000..a5b8ce8 --- /dev/null +++ b/infrastructure/docker-jitsi-web/image/resources/install-debug.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +apt update && apt -qqy install vim bash-completion less diff --git a/infrastructure/docker-jitsi-web/image/resources/install.sh b/infrastructure/docker-jitsi-web/image/resources/install.sh new file mode 100755 index 0000000..8f36e92 --- /dev/null +++ b/infrastructure/docker-jitsi-web/image/resources/install.sh @@ -0,0 +1,7 @@ +#!/bin/bash +set -Eeo pipefail + +apt update > /dev/null + +install -m 0700 /tmp/install-debug.sh /usr/local/bin/ +install -m 0755 /tmp/entrypoint.sh / \ No newline at end of file diff --git a/infrastructure/docker-jitsi-web/test/Dockerfile b/infrastructure/docker-jitsi-web/test/Dockerfile new file mode 100644 index 0000000..891c1ee --- /dev/null +++ b/infrastructure/docker-jitsi-web/test/Dockerfile @@ -0,0 +1,11 @@ +FROM meissa-cloud-app + +RUN apt update +RUN mkdir /usr/share/man/man1/ +RUN apt -yqq install --no-install-recommends --yes curl default-jre-headless + +RUN curl -L -o /tmp/serverspec.jar https://github.com/DomainDrivenArchitecture/dda-serverspec-crate/releases/download/2.0.0/dda-serverspec-standalone.jar + +COPY serverspec.edn /tmp/serverspec.edn + +RUN java -jar /tmp/serverspec.jar /tmp/serverspec.edn -v diff --git a/infrastructure/docker-jitsi-web/test/serverspec.edn b/infrastructure/docker-jitsi-web/test/serverspec.edn new file mode 100644 index 0000000..addfc6d --- /dev/null +++ b/infrastructure/docker-jitsi-web/test/serverspec.edn @@ -0,0 +1 @@ +{:file [{:path "/entrypoint.sh" :mod "755"}]}