From 232c4857626e9dab589331b15705f0bc2d091cfa Mon Sep 17 00:00:00 2001
From: Felipe Cecagno <fcecagno@gmail.com>
Date: Wed, 25 Jul 2018 22:05:51 -0300
Subject: [PATCH] revert some unneeded changes

---
 .../bigbluebutton/SystemConfiguration.scala   |   3 +-
 .../bigbluebutton/SystemConfiguration.scala   |   7 +-
 akka-bbb-transcode/Dockerfile                 |  26 ---
 .../bigbluebutton/SystemConfiguration.scala   |   3 +-
 .../api2/SystemConfiguration.scala            |   5 +-
 bbb-lti/Dockerfile                            |   5 +-
 .../{entrypoint.sh => docker-entrypoint.sh}   |   0
 bbb-lti/grails-app/i18n/messages.properties   |   6 +-
 .../grails-app/i18n/messages_es.properties    |   6 +-
 .../grails-app/i18n/messages_fr.properties    |   6 +-
 .../grails-app/i18n/messages_pt.properties    |  48 ------
 bbb-webhooks/application.js                   |   2 +-
 bbb-webhooks/test/test.js                     |  12 +-
 .../grails-app/conf/Config.groovy             |   2 +-
 .../db/production/production.sqlite3          | Bin 15360 -> 0 bytes
 labs/docker/greenlight/greenlight.env         | 150 ------------------
 labs/docker/nginx-dhp/Dockerfile              |   5 +-
 .../{entrypoint.sh => docker-entrypoint.sh}   |   0
 labs/docker/nginx/.dockerfile                 |   1 -
 19 files changed, 28 insertions(+), 259 deletions(-)
 delete mode 100644 akka-bbb-transcode/Dockerfile
 rename bbb-lti/{entrypoint.sh => docker-entrypoint.sh} (100%)
 delete mode 100644 bbb-lti/grails-app/i18n/messages_pt.properties
 delete mode 100644 labs/docker/greenlight/db/production/production.sqlite3
 delete mode 100644 labs/docker/greenlight/greenlight.env
 rename labs/docker/nginx-dhp/{entrypoint.sh => docker-entrypoint.sh} (100%)
 delete mode 100644 labs/docker/nginx/.dockerfile

diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index 375a0f34a4..6421ad2ce6 100755
--- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,13 +2,12 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
 
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
   lazy val httpInterface = Try(config.getString("http.interface")).getOrElse("")
diff --git a/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index d1159ad76a..c9c776a410 100755
--- a/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-fsesl/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,18 +2,17 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
- 
+
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val eslHost = Try(Properties.envOrElse("ESL_HOST", config.getString("freeswitch.esl.host"))).getOrElse("127.0.0.1")
+  lazy val eslHost = Try(config.getString("freeswitch.esl.host")).getOrElse("127.0.0.1")
   lazy val eslPort = Try(config.getInt("freeswitch.esl.port")).getOrElse(8021)
   lazy val eslPassword = Try(config.getString("freeswitch.esl.password")).getOrElse("ClueCon")
   lazy val fsProfile = Try(config.getString("freeswitch.conf.profile")).getOrElse("cdquality")
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/akka-bbb-transcode/Dockerfile b/akka-bbb-transcode/Dockerfile
deleted file mode 100644
index 96225399a7..0000000000
--- a/akka-bbb-transcode/Dockerfile
+++ /dev/null
@@ -1,26 +0,0 @@
-FROM bbb-common-message AS builder
-
-ARG COMMON_VERSION=0.0.1-SNAPSHOT
-
-COPY . /source
-
-RUN cd /source \
- && find -name build.sbt -exec sed -i "s|\(.*org.bigbluebutton.*bbb-common-message[^\"]*\"[ ]*%[ ]*\)\"[^\"]*\"\(.*\)|\1\"$COMMON_VERSION\"\2|g" {} \; \
- && sbt compile
-
-RUN apt-get update \
- && apt-get -y install fakeroot
-
-RUN cd /source \
- && sbt debian:packageBin
-
-# FROM ubuntu:16.04
-FROM openjdk:8-jre-slim-stretch
-
-COPY --from=builder /source/target/*.deb /root/
-
-RUN dpkg -i /root/*.deb \
- && apt-get update \
- && apt-get -y install ffmpeg
-
-CMD ["/usr/share/bbb-transcode-akka/bin/bbb-transcode-akka"]
diff --git a/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala b/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
index bd39f3f7ef..47eda79c64 100644
--- a/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
+++ b/akka-bbb-transcode/src/main/scala/org/bigbluebutton/SystemConfiguration.scala
@@ -2,13 +2,12 @@ package org.bigbluebutton
 
 import com.typesafe.config.ConfigFactory
 import scala.util.Try
-import scala.util.Properties
 
 trait SystemConfiguration {
 
   val config = ConfigFactory.load()
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
index 016b9557a3..0eb67da981 100755
--- a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
+++ b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/SystemConfiguration.scala
@@ -1,14 +1,13 @@
 package org.bigbluebutton.api2
 
 import com.typesafe.config.ConfigFactory
-import scala.util.Properties
 
 import scala.util.Try
 
 trait SystemConfiguration {
-  val config = ConfigFactory.load()
+  val config = ConfigFactory.load("bbb-web")
 
-  lazy val redisHost = Try(Properties.envOrElse("REDIS_HOST", config.getString("redis.host"))).getOrElse("127.0.0.1")
+  lazy val redisHost = Try(config.getString("redis.host")).getOrElse("127.0.0.1")
   lazy val redisPort = Try(config.getInt("redis.port")).getOrElse(6379)
   lazy val redisPassword = Try(config.getString("redis.password")).getOrElse("")
 
diff --git a/bbb-lti/Dockerfile b/bbb-lti/Dockerfile
index 132e1c75d7..4503f2d172 100644
--- a/bbb-lti/Dockerfile
+++ b/bbb-lti/Dockerfile
@@ -47,7 +47,6 @@ COPY --from=builder /source/target/lti-*.war webapps/lti.war
 RUN unzip -q webapps/lti.war -d webapps/lti \
  && rm webapps/lti.war
 
-COPY entrypoint.sh .
-
-CMD ["./entrypoint.sh"]
+COPY docker-entrypoint.sh /usr/local/bin/
 
+CMD ["docker-entrypoint.sh"]
diff --git a/bbb-lti/entrypoint.sh b/bbb-lti/docker-entrypoint.sh
similarity index 100%
rename from bbb-lti/entrypoint.sh
rename to bbb-lti/docker-entrypoint.sh
diff --git a/bbb-lti/grails-app/i18n/messages.properties b/bbb-lti/grails-app/i18n/messages.properties
index dbf3ab604f..4b708fbecb 100644
--- a/bbb-lti/grails-app/i18n/messages.properties
+++ b/bbb-lti/grails-app/i18n/messages.properties
@@ -19,12 +19,12 @@
 # The welcome.header can be static, however if you want the name of the activity (meeting) to be injected use {0} as part of the text
 # {1} can be used to inject the name of the course
 bigbluebutton.welcome.header=Welcome to <b>{0}</b>!
-bigbluebutton.welcome.footer=To join the audio bridge click the headset icon (upper-left hand corner). <b>Please use a headset to avoid causing noise for others.
+bigbluebutton.welcome.footer=To understand how BigBlueButton works see our <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>tutorial videos</u></a>.<br><br>To join the audio bridge click the headset icon (upper-left hand corner). <b>Please use a headset to avoid causing noise for others.
 bigbluebutton.welcome.record=This meeting is being recorded
 bigbluebutton.welcome.duration=The maximum duration for this meeting is {0} minutes
 
-tool.view.app=Mconf
-tool.view.title=Mconf LTI Interface
+tool.view.app=BigBlueButton
+tool.view.title=BigBlueButton LTI Interface
 tool.view.join=Join Meeting
 tool.view.recording=Recording
 tool.view.recording.format.presentation=presentation
diff --git a/bbb-lti/grails-app/i18n/messages_es.properties b/bbb-lti/grails-app/i18n/messages_es.properties
index 0d47b069ee..2513f516b2 100644
--- a/bbb-lti/grails-app/i18n/messages_es.properties
+++ b/bbb-lti/grails-app/i18n/messages_es.properties
@@ -17,12 +17,12 @@
 #
 
 bigbluebutton.welcome.header=Bienvenido a <b>{0}</b>!
-bigbluebutton.welcome.footer=Para activar el audio haga click en el icono de auricular (equina superior izquierda). <b>Por favor utilice auricular para evitar causar ruido.
+bigbluebutton.welcome.footer=Para entender como funciona BigBlueButton consulte estos <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>videos tutoriales</u></a>.<br><br>Para activar el audio haga click en el icono de auricular (equina superior izquierda). <b>Por favor utilice auricular para evitar causar ruido.
 bigbluebutton.welcome.record=Esta sesi&#243;n esta siendo grabada
 bigbluebutton.welcome.duration=La duraci&#243;n maxima para esta sesi&#243;n es de {0} minutos
 
-tool.view.app=Mconf
-tool.view.title=Interface LTI para Mconf
+tool.view.app=BigBlueButton
+tool.view.title=Interface LTI para BigBlueButton
 tool.view.join=Ingresar a la sesi&#243;n
 tool.view.recording=Grabaci&#243;n
 tool.view.recording.format.presentation=presentaci&#243;n
diff --git a/bbb-lti/grails-app/i18n/messages_fr.properties b/bbb-lti/grails-app/i18n/messages_fr.properties
index 3c38fb490b..a25b69bf01 100644
--- a/bbb-lti/grails-app/i18n/messages_fr.properties
+++ b/bbb-lti/grails-app/i18n/messages_fr.properties
@@ -17,10 +17,10 @@
 #
 
 bigbluebutton.welcome.header=<br>Bienvenue au <b>{0}</b>!<br>
-bigbluebutton.welcome.footer=<br>Pour activer l'audio cliquez sur l'ic&#244;ne du casque &#224; &#233;couteurs (coin sup&#233;rieur gauche). <b>S'il vous pla�t utiliser le casque pour &#233;viter de causer du bruit.</b>
+bigbluebutton.welcome.footer=<br>Pour comprendre comment fonctionne BigBlueButton, consultez les <a href=\"event:http://www.bigbluebutton.org/content/videos\"><u>didacticiels vid&#233;o</u></a>.<br><br>Pour activer l'audio cliquez sur l'ic&#244;ne du casque &#224; &#233;couteurs (coin sup&#233;rieur gauche). <b>S'il vous pla�t utiliser le casque pour &#233;viter de causer du bruit.</b>
 
-tool.view.app=Mconf
-tool.view.title=LTI Interface pour Mconf
+tool.view.app=BigBlueButton
+tool.view.title=LTI Interface pour BigBlueButton
 tool.view.join=Saisie de la r&#233;union
 tool.view.recording=Enregistrement
 tool.view.recording.format.presentation=presentation
diff --git a/bbb-lti/grails-app/i18n/messages_pt.properties b/bbb-lti/grails-app/i18n/messages_pt.properties
deleted file mode 100644
index d39a3650fa..0000000000
--- a/bbb-lti/grails-app/i18n/messages_pt.properties
+++ /dev/null
@@ -1,48 +0,0 @@
-#
-# BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
-#
-# Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
-#
-# This program is free software; you can redistribute it and/or modify it under the
-# terms of the GNU Lesser General Public License as published by the Free Software
-# Foundation; either version 3.0 of the License, or (at your option) any later
-# version.
-#
-# BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public License along
-# with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
-#
-
-# The welcome.header can be static, however if you want the name of the activity (meeting) to be injected use {0} as part of the text
-# {1} can be used to inject the name of the course
-bigbluebutton.welcome.header=Bem-vindo &#224; sala <b>{0}</b>!
-bigbluebutton.welcome.footer=Para habilitar o &#225;udio, clique no bot&#227;o do headset (no canto superior esquerdo). <b>Para uma melhor experi&#234;ncia, utilize sempre que poss&#237;vel um headset e conecte na rede cabeada.
-bigbluebutton.welcome.record=Esta sess&#227;o est&#225; sendo gravada
-bigbluebutton.welcome.duration=A dura&#231;&#227;o m&#225;xima desta sess&#227;o &#233; de {0} minutos
-
-tool.view.app=Mconf
-tool.view.title=Interface LTI do Mconf
-tool.view.join=Entrar na sala
-tool.view.recording=Grava&#231;&#227;o
-tool.view.recording.format.presentation=apresenta&#231;&#227;o
-tool.view.recording.format.video=v&#237;deo
-tool.view.recording.delete.confirmation=Voc&#234; tem certeza que deseja remover permanentemente esta grava&#231;&#227;o?
-tool.view.recording.delete.confirmation.warning=Aviso
-tool.view.recording.delete.confirmation.yes=Sim
-tool.view.recording.delete.confirmation.no=N&#227;o
-tool.view.recording.publish=Publicar
-tool.view.recording.unpublish=Despublicar
-tool.view.recording.delete=Remover
-tool.view.activity=Atividade
-tool.view.description=Descri&#231;&#227;o
-tool.view.preview=Preview
-tool.view.date=Data
-tool.view.duration=Dura&#231;&#227;o
-tool.view.actions=A&#231;&#245;es
-tool.view.dateFormat=dd/mm/yyyy HH:mm:ss Z
-
-tool.error.general=Conex&#227;o n&#227;o pode ser estabelecida.
-
diff --git a/bbb-webhooks/application.js b/bbb-webhooks/application.js
index 12d9e74dd8..b6e9985b12 100644
--- a/bbb-webhooks/application.js
+++ b/bbb-webhooks/application.js
@@ -13,7 +13,7 @@ const async = require("async");
 module.exports = class Application {
 
   constructor() {
-    let options = {
+    const options = {
       host : process.env.REDIS_HOST || config.redis.host,
       port : process.env.REDIS_PORT || config.redis.port
     };
diff --git a/bbb-webhooks/test/test.js b/bbb-webhooks/test/test.js
index 460ce5af88..7239b9f16f 100644
--- a/bbb-webhooks/test/test.js
+++ b/bbb-webhooks/test/test.js
@@ -9,7 +9,7 @@ const Helpers = require('./helpers.js')
 const sinon = require('sinon');
 const winston = require('winston');
 
-const sharedSecret = process.env.SHARED_SECRET || sharedSecrett;
+const sharedSecret = process.env.SHARED_SECRET || sharedSecret;
 
 // Block winston from logging
 Logger.remove(winston.transports.Console);
@@ -40,7 +40,7 @@ describe('bbb-webhooks tests', () => {
 
   describe('GET /hooks/list permanent', () => {
     it('should list permanent hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.listUrl, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.listUrl, sharedSecret);
       getUrl = Helpers.listUrl + '?checksum=' + getUrl
 
       request(Helpers.url)
@@ -64,7 +64,7 @@ describe('bbb-webhooks tests', () => {
       Hook.removeSubscription(hooks[hooks.length-1].id, () => { done(); });
     });
     it('should create a hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl, sharedSecret);
       getUrl = Helpers.createUrl + '&checksum=' + getUrl
 
       request(Helpers.url)
@@ -89,7 +89,7 @@ describe('bbb-webhooks tests', () => {
     it('should destroy a hook', (done) => {
       const hooks = Hook.allGlobalSync();
       const hook = hooks[hooks.length-1].id;
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyUrl(hook), sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyUrl(hook), sharedSecret);
       getUrl = Helpers.destroyUrl(hook) + '&checksum=' + getUrl
 
       request(Helpers.url)
@@ -105,7 +105,7 @@ describe('bbb-webhooks tests', () => {
 
   describe('GET /hooks/destroy permanent hook', () => {
     it('should not destroy the permanent hook', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyPermanent, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.destroyPermanent, sharedSecret);
       getUrl = Helpers.destroyPermanent + '&checksum=' + getUrl
       request(Helpers.url)
       .get(getUrl)
@@ -128,7 +128,7 @@ describe('bbb-webhooks tests', () => {
       Hook.removeSubscription(hooks[hooks.length-1].id, () => { done(); });
     });
     it('should create a hook with getRaw=true', (done) => {
-      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl + Helpers.createRaw, sharedSecrett);
+      let getUrl = utils.checksumAPI(Helpers.url + Helpers.createUrl + Helpers.createRaw, sharedSecret);
       getUrl = Helpers.createUrl + '&checksum=' + getUrl + Helpers.createRaw
 
       request(Helpers.url)
diff --git a/bigbluebutton-web/grails-app/conf/Config.groovy b/bigbluebutton-web/grails-app/conf/Config.groovy
index d03d3eb93f..230e3f8feb 100755
--- a/bigbluebutton-web/grails-app/conf/Config.groovy
+++ b/bigbluebutton-web/grails-app/conf/Config.groovy
@@ -132,5 +132,5 @@ log4j = {
 
     debug  'org.bigbluebutton',
            'grails.app.controllers',
-           'grails.app.services',
+           'grails.app.services'
 }
diff --git a/labs/docker/greenlight/db/production/production.sqlite3 b/labs/docker/greenlight/db/production/production.sqlite3
deleted file mode 100644
index 87e8ce3b4cf9ea1fbafb8613dbdb8384e11eaeb9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 15360
zcmeHNzi-<{6z1_H(Q@KM=|Xe}dSwPjNL-VWsK{x6R!!JIh$6?1gx1JF(9+o^ERhaH
z331TH>CmxDilS?Wjzt#({S%7*0~y-6V}UMNy7V0>F_bJB0U8C0afB?B-@700zVp-f
z-pLO)s<uzbj_Y+SpX7yvfROMhA%Y+*!p}wc8D8(hO=9=}zftUd+U=sS@|TnZtB7B+
zHW%@~;mx!T9On#h2HpY#=N4d+bZQCSCHzdlf8#&#@Ay~z6Mhbl{NfC72Hpw-8A;6M
zRPBbkmMdwcysD|0)Bw@7lD4K63b{-&LZGEy)C-wJfE2Zy3cd7#UdrGBqN$}^u5d%u
zGU5P%J~=gCQr9x*6`~bYJy&ERFX69P{QrS}!^ikX{4G54i!;C(m@xzI;Vc@Bd?|vW
z&`-snLF^|7P%QWp5fnu~j-V*~#Y;Gwh8c?*Kw<nd{YUs00bcy#3~&bKoPiojUiq+G
zrcU4XT&F`F|G;xwy{2!w4n%foMJ=r4bdu9<s`;CR{6}hWO;bVrr&*Z(Bm9p5FMe?b
zI0I*$feZLbI`-+o^nc`3@2sz%ua7gp8HgAN^Z%CuKb4Ot;WwOtGtR&Q!m`loQm@PM
zf3E*$e7pJbI0I7{VEUg#F9h^L+z_8*ihrKcki+j115c17udbq_4}5F8O}ouK+Of=z
zz3W-*ps0HS5N~f9<+?%Y<<F`HQBK$ua#iVrTtH`q^ewNsXL+QyUMICiwMrgrR_>QK
zx5zzXD_a&*a$^+<w$q|dx{urN-zBEi^WEUtJTb7Toq+IB4NJ1Fqi3H4-dmn&J3jRs
zt8I3uZ?!DnnuH}r*D$FGTgE;;Jbek*iPE>)JsPzFpy^S|r!CX+6$0~9-|o<8{b27M
zFm#GNdpD7iAL-LLndGRcO+u3oQYrb`HMAA(YDjLEKJHPcNe5gHAEgmC#*9}Tt3$6t
z(=6BjcPXs7ubhE5%K+1V5giNY7=Qm}N9Lo=jDfFBNs?t5eRDYwf}oHK-clnU`bvN?
z&9hqysnqJmU1KvY)}-91uUBf&>Aq0|Eg$GP=ox&e)VEvIi!?B9?6Kj-lK|+%L?tr(
zU(sZu3I*!;n4omt;Q^D{DNaD5W4Gg8Y+KF!UC-?~Epx|iQ*(U8n7!#jp5geWe|Rvm
zkXVyoh_3w<>?|qSr5-pMvrkF{poQ=5(^r{OxHfao@3eJ=Y`booS`N8md|qx;>tuOn
zIlH?c$sfz;C>^9tVeS;{rs+E7aB~7+VX)<u+8yIdqD*P3ko8(fXqWvx3`bD7{?9B(
z`M{ik`DcLV|MR~`+(XX5tQg?&KPzVWxSWCcXMolJ3GtR7-V(pVm+=qt?=kmqUKscy
zosu;f^(NJ*a7GZ6r;DeSr@=|WNM*{9>``)2lJ7zJt4|twSiG7Rl=Q=SmIm`QYL$(K
z0f!x@Rl~!c)2d=tpEEz6o|oj?;KuSKH{vG|!BQ{0jtlW#W7ChAvUCZ)1A)2EO`Mw@
Uas-o}f2~QwGm#OZ!*i1Ce@j7yqyPW_

diff --git a/labs/docker/greenlight/greenlight.env b/labs/docker/greenlight/greenlight.env
deleted file mode 100644
index 830bb1ddad..0000000000
--- a/labs/docker/greenlight/greenlight.env
+++ /dev/null
@@ -1,150 +0,0 @@
-# This is a sample of the environment variables you will need
-# To use, copy this file to .env `cp sample.env .env`
-
-# Create a secret key for rails
-#
-# You can generate a secure one through the Greenlight docker image
-# with with the command
-#
-#   docker run --rm bigbluebutton/greenlight rake secret
-#
-SECRET_KEY_BASE=a8b7f914b8323db980756414b6eb7b9825eb84befbc0bd9b9beeb2e84a89f3e959e198149150649b0b101eaf323e79250f3f5662db185c35562ef1a3e12cdabc
-
-# For either developent or production
-
-# Enter credentials for your BigBlueButton Server
-#
-# The endpoint and secret from your bigbluebutton server.  To get these values, run
-# the following command on your BigBlueButton server
-#
-#    bbb-conf --secret
-#
-# and uncomment the following two variables
-BIGBLUEBUTTON_ENDPOINT=https://felipe-docker.mconf.com/bigbluebutton/
-BIGBLUEBUTTON_SECRET=2ff5336294114f9ee7ff4596203f2a53
-
-# Set default client (optional)
-#
-# By default, GreenLight will join users to a BigBlueButton session using the Flash
-# client. By setting USE_HTML5_BY_DEFAULT to true, you can configure GreenLight to
-# use the HTML5 client by default. GreenLight will only use the default for
-# non-authenticated users. Users who have authenticated are able to set their
-# prefered client under preferences. Also note that if the HTML5 client is not
-# running on a BigBlueButton server, all clients will be joined using Flash
-# regardless on any settings. 
-USE_HTML5_BY_DEFAULT=true
-
-# Twitter Login Provider (optional)
-#
-#   You will need to register the app at https://apps.twitter.com/
-#   For the callback URL use 'http://<your hostname:port>/auth/twitter/callback'
-#   Once registered copy the ID and Secret here
-#
-TWITTER_ID=
-TWITTER_SECRET=
-
-# Google Login Provider (optional)
-#
-#   You will need to register for at https://console.developers.google.com/apis/credentials
-#   Select Oauth client ID -> web application
-#   For the callback URL use 'http://<your hostname:port>/auth/google/callback'
-#   Once registered copy the ID and Secret here
-#
-#   The GOOGLE_OAUTH2_HD variable is used to limit sign-in to a particular Google Apps hosted domain. This
-#   can be a string such as, 'domain.com'. If left blank, GreenLight will allow sign-in from all Google Apps hosted
-#   domains.
-#
-GOOGLE_OAUTH2_ID=
-GOOGLE_OAUTH2_SECRET=
-GOOGLE_OAUTH2_HD=
-
-# LDAP Login Provider (optional)
-#
-#   You can enable LDAP authentication by providing values for the variables below.
-#   For information about setting up LDAP, see:
-#     http://docs.bigbluebutton.org/install/green-light.html#ldap-oauth
-#
-LDAP_SERVER=
-LDAP_PORT=
-LDAP_METHOD=
-LDAP_UID=
-LDAP_BASE=
-LDAP_BIND_DN=
-LDAP_PASSWORD=
-
-# If "true", GreenLight will register a webhook callback for each meeting
-# created. This callback is called for all events that happen in the meeting,
-# including the processing of its recording. These events are used to update
-# the web page dynamically as things happen in the server.
-# If not "true", the application will add a metadata to the meetings with this same
-# callback URL. Scripts can then be added to BigBlueButton to call this callback
-# URL and send specific events to GreenLight (e.g. a post publish script to warn
-# the application when recordings are done).
-# GREENLIGHT_USE_WEBHOOKS=true
-
-# Enable uploading to Youtube (optional)
-#
-#   When this is enabled, users will be able to directly upload their recordings
-#   to Youtube. If you plan to enable this, you should follow the steps outlined
-#   in our docs for setting up the Youtube data API.
-#
-#   http://docs.bigbluebutton.org/install/green-light.html#8-enabling-uploading-to-youtube-optional
-#
-ENABLE_YOUTUBE_UPLOADING=false
-
-# Slack Integration (optional)
-#
-#   You will need to register an incoming-webhook for your slack channel
-#   in order for GreenLight to post to it. You can do this by going
-#   to https://slack.com/apps/A0F7XDUAZ-incoming-webhooks, selecting your
-#   team and then selecting "Add Incoming WebHooks integration" on the
-#   desired channel. You will then need to paste the webhook below.
-#
-SLACK_WEBHOOK=
-SLACK_CHANNEL=
-
-# Landing Background (optional)
-#
-#   Supply a URL to an image to change the landing background. If no
-#   URL is provided GreenLight will use a default image. If you
-#   supply a path that does not lead to an image, no landing image
-#   will appear.
-#
-LANDING_BACKGROUND=
-
-# SMTP Mailer (optional)
-#
-GREENLIGHT_MAIL_NOTIFICATIONS=true
-# In the format [localhost.localdomain]
-GREENLIGHT_DOMAIN=localhost-lxc.org
-SMTP_FROM=youremail@gmail.com
-SMTP_SERVER=smtp.gmail.com
-SMTP_PORT=587
-SMTP_DOMAIN=gmail.com
-SMTP_USERNAME=youremail@gmail.com
-SMTP_PASSWORD=yourpassword
-# SMTP_TLS=false
-# SMTP_AUTH=login
-# SMTP_STARTTLS_AUTO=true
-
-# Enable QR Code generation (optional)
-#
-#   When this is enabled, users will be able to generate a QR code for direct access
-#   to a meeting room that can be shared as the URL link.
-#
-ENABLE_QRCODE_GENERATION=false
-
-
-# Prefix for the application's root URL
-# Useful for deploying the application to a subdirectory
-#
-#   default is '/b' (recommended)
-#
-# RELATIVE_URL_ROOT=/b
-
-# Uncomment and set to 'true' to only allow users to create meetings when authenticated.
-# Unauthenticated users are still able to join meetings through invites.
-# DISABLE_GUEST_ACCESS=false
-
-# Comment this out to send logs to STDOUT in production instead of log/production.log .
-DISABLE_RAILS_LOG_TO_STDOUT=true
diff --git a/labs/docker/nginx-dhp/Dockerfile b/labs/docker/nginx-dhp/Dockerfile
index f2e1bfddf1..591d34c9ac 100644
--- a/labs/docker/nginx-dhp/Dockerfile
+++ b/labs/docker/nginx-dhp/Dockerfile
@@ -2,7 +2,6 @@ FROM tannerfe/alpine-openssl
 
 WORKDIR /root
 
-COPY entrypoint.sh .
-
-CMD ["./entrypoint.sh"]
+COPY entrypoint.sh /usr/local/bin/
 
+CMD ["docker-entrypoint.sh"]
diff --git a/labs/docker/nginx-dhp/entrypoint.sh b/labs/docker/nginx-dhp/docker-entrypoint.sh
similarity index 100%
rename from labs/docker/nginx-dhp/entrypoint.sh
rename to labs/docker/nginx-dhp/docker-entrypoint.sh
diff --git a/labs/docker/nginx/.dockerfile b/labs/docker/nginx/.dockerfile
deleted file mode 100644
index 94143827ed..0000000000
--- a/labs/docker/nginx/.dockerfile
+++ /dev/null
@@ -1 +0,0 @@
-Dockerfile
-- 
GitLab