diff --git a/linux/ecosystem/testrail/7.5.3.1000/ad/Dockerfile b/linux/ecosystem/testrail/7.5.3.1000/ad/Dockerfile new file mode 100644 index 000000000..814c43112 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ad/Dockerfile @@ -0,0 +1,13 @@ +FROM epicmorg/testrail:7.5.3.1000 + +ENV TESTRAIL_PLUGIN_VERSION=1.4 +ENV TESTRAIL_PLUGIN_NAME=ad +ENV TESTRAIL_PLUGIN_FULLNAME=testrail-auth-${TESTRAIL_PLUGIN_NAME}-${TESTRAIL_PLUGIN_VERSION} +ENV TESTRAIL_PLUGIN_FILE=${TESTRAIL_PLUGIN_FULLNAME}.zip +ENV TESTRAIL_PLUGIN_DONWLOAD_URL=https://media.gurock.com/gk-media/downloads/${TESTRAIL_PLUGIN_FILE} +ENV TESTRAIL_PLUGIN_TEMP=${TESTRAIL_RELEASE_DIR}/${TESTRAIL_PLUGIN_FILE} + +RUN rm -rfv /usr/bin/docker-entrypoint.sh +COPY docker-entrypoint.sh /usr/bin/docker-entrypoint.sh + +RUN wget --no-check-certificate -O ${TESTRAIL_PLUGIN_TEMP} ${TESTRAIL_PLUGIN_DONWLOAD_URL} diff --git a/linux/ecosystem/testrail/7.5.3.1000/ad/Makefile b/linux/ecosystem/testrail/7.5.3.1000/ad/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ad/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/testrail/7.5.3.1000/ad/README.md b/linux/ecosystem/testrail/7.5.3.1000/ad/README.md new file mode 100644 index 000000000..1aae0e92d --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ad/README.md @@ -0,0 +1,36 @@ +## Testrail + +* Based on `websites:php7.2` of our ecosystem. + +# Compose example + +```yml +version: '3.7' +services: + testrail: + image: epicmorg/testrail +# depends_on: +# - mysql +# - memcached + restart: unless-stopped + volumes: + - /etc/localtime:/etc/localtime + - /etc/timezone:/etc/timezone +# - /etc/letsencrypt:/etc/letsencrypt + - www:/var/www + - apache2:/etc/apache2 + - php:/etc/php + restart: unless-stopped +# extra_hosts: +# - "example.com:192.168.0.11" + tmpfs: + - /tmp + - /var/lib/php/sessions +volumes: + www: + external: true + apache2: + external: true + php: + external: true +``` diff --git a/linux/ecosystem/testrail/7.5.3.1000/ad/docker-compose.yml b/linux/ecosystem/testrail/7.5.3.1000/ad/docker-compose.yml new file mode 100644 index 000000000..752d11954 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ad/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/testrail:auth-ad-7.5.3.1000" + build: + context: . diff --git a/linux/ecosystem/testrail/7.5.3.1000/ad/docker-entrypoint.sh b/linux/ecosystem/testrail/7.5.3.1000/ad/docker-entrypoint.sh new file mode 100755 index 000000000..2a7954f51 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ad/docker-entrypoint.sh @@ -0,0 +1,66 @@ +#!/bin/bash + +echo "[testrail] Starting testrail service" + +################################################################################## + +function createOptDirectory { + if [ ! -d $1 ] + then + echo "[testrail] Creating " $1 + mkdir -p $1 + fi + + chown -R www-data:www-data $1 +} + +/bin/cp -rf ${TESTRAIL_RELEASE_DIR}/apache-conf/000-default.conf /etc/apache2/sites-enabled/000-default.conf + +echo "[testrail] Unzipping testrail service" +unzip -q -o ${TESTRAIL_RELEASE_DIR}/testrail.zip -d /var/www/ + +echo "[testrail] Unzipping testrail Active Directory auth plugin" +unzip -q -o -j ${TESTRAIL_RELEASE_DIR}/${TESTRAIL_PLUGIN_FILE} ${TESTRAIL_PLUGIN_FULLNAME}/auth.php -d ${TR_CUSTOM_AUTH_DIR} + +createOptDirectory ${TR_DEFAULT_LOG_DIR} +createOptDirectory ${TR_DEFAULT_AUDIT_DIR} +createOptDirectory ${TR_DEFAULT_REPORT_DIR} +createOptDirectory ${TR_DEFAULT_ATTACHMENT_DIR} + +chown -R www-data:www-data ${TR_CONFIG_DIR} + +################################################################################# + +echo "[testrail] Waiting for background task file" +while [ ! -f /var/www/testrail/task.php ] +do + sleep 2 +done + +echo "[testrail] Starting background task" +while /bin/true; do + php /var/www/testrail/task.php || true + sleep ${TR_DEFAULT_TASK_EXECUTION} +done & +echo "[testrail] Background task stoped" + +################################################################################# + +if [[ -z "${FIX_WWW_DATA}" ]]; then + echo "[apache2] env FIX_WWW_DATA is not set. Fixing permissions anyway" + chown www-data:www-data /var/www -R +elif [ "${FIX_WWW_DATA}" == "false" ]; then + echo "[apache2] env FIX_WWW_DATA is set to false. Skipping..." +elif [ "${FIX_WWW_DATA}" == "true" ]; then + echo "[apache2] Changing permissions for /var/www path. Dont worry, please wait." + chown www-data:www-data /var/www -R + echo "[apache2] Done" +else + echo "[apache2] env FIX_WWW_DATA is set to strange value. Skipping..." +fi + +echo "[apache2] Starting up" + +source /etc/apache2/envvars +tail -F /var/log/apache2/* & +exec apache2 -D FOREGROUND diff --git a/linux/ecosystem/testrail/7.5.3.1000/ldap/Dockerfile b/linux/ecosystem/testrail/7.5.3.1000/ldap/Dockerfile new file mode 100644 index 000000000..1f5f2296f --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ldap/Dockerfile @@ -0,0 +1,13 @@ +FROM epicmorg/testrail:7.5.3.1000 + +ENV TESTRAIL_PLUGIN_VERSION=1.4 +ENV TESTRAIL_PLUGIN_NAME=ldap +ENV TESTRAIL_PLUGIN_FULLNAME=testrail-auth-${TESTRAIL_PLUGIN_NAME}-${TESTRAIL_PLUGIN_VERSION} +ENV TESTRAIL_PLUGIN_FILE=${TESTRAIL_PLUGIN_FULLNAME}.zip +ENV TESTRAIL_PLUGIN_DONWLOAD_URL=https://media.gurock.com/gk-media/downloads/${TESTRAIL_PLUGIN_FILE} +ENV TESTRAIL_PLUGIN_TEMP=${TESTRAIL_RELEASE_DIR}/${TESTRAIL_PLUGIN_FILE} + +RUN rm -rfv /usr/bin/docker-entrypoint.sh +COPY docker-entrypoint.sh /usr/bin/docker-entrypoint.sh + +RUN wget --no-check-certificate -O ${TESTRAIL_PLUGIN_TEMP} ${TESTRAIL_PLUGIN_DONWLOAD_URL} diff --git a/linux/ecosystem/testrail/7.5.3.1000/ldap/Makefile b/linux/ecosystem/testrail/7.5.3.1000/ldap/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ldap/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/testrail/7.5.3.1000/ldap/README.md b/linux/ecosystem/testrail/7.5.3.1000/ldap/README.md new file mode 100644 index 000000000..1aae0e92d --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ldap/README.md @@ -0,0 +1,36 @@ +## Testrail + +* Based on `websites:php7.2` of our ecosystem. + +# Compose example + +```yml +version: '3.7' +services: + testrail: + image: epicmorg/testrail +# depends_on: +# - mysql +# - memcached + restart: unless-stopped + volumes: + - /etc/localtime:/etc/localtime + - /etc/timezone:/etc/timezone +# - /etc/letsencrypt:/etc/letsencrypt + - www:/var/www + - apache2:/etc/apache2 + - php:/etc/php + restart: unless-stopped +# extra_hosts: +# - "example.com:192.168.0.11" + tmpfs: + - /tmp + - /var/lib/php/sessions +volumes: + www: + external: true + apache2: + external: true + php: + external: true +``` diff --git a/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-compose.yml b/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-compose.yml new file mode 100644 index 000000000..ed164fd53 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/testrail:auth-ldap-7.5.3.1000" + build: + context: . diff --git a/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-entrypoint.sh b/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-entrypoint.sh new file mode 100755 index 000000000..f25d4d764 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/ldap/docker-entrypoint.sh @@ -0,0 +1,66 @@ +#!/bin/bash + +echo "[testrail] Starting testrail service" + +################################################################################# + +function createOptDirectory { + if [ ! -d $1 ] + then + echo "[testrail] Creating " $1 + mkdir -p $1 + fi + + chown -R www-data:www-data $1 +} + +/bin/cp -rf ${TESTRAIL_RELEASE_DIR}/apache-conf/000-default.conf /etc/apache2/sites-enabled/000-default.conf + +echo "[testrail] Unzipping testrail service" +unzip -q -o ${TESTRAIL_RELEASE_DIR}/testrail.zip -d /var/www/ + +echo "[testrail] Unzipping testrail LDAP auth plugin" +unzip -q -o -j ${TESTRAIL_RELEASE_DIR}/${TESTRAIL_PLUGIN_FILE} ${TESTRAIL_PLUGIN_FULLNAME}/auth.php -d ${TR_CUSTOM_AUTH_DIR} + +createOptDirectory ${TR_DEFAULT_LOG_DIR} +createOptDirectory ${TR_DEFAULT_AUDIT_DIR} +createOptDirectory ${TR_DEFAULT_REPORT_DIR} +createOptDirectory ${TR_DEFAULT_ATTACHMENT_DIR} + +chown -R www-data:www-data ${TR_CONFIG_DIR} + +################################################################################# + +echo "[testrail] Waiting for background task file" +while [ ! -f /var/www/testrail/task.php ] +do + sleep 2 +done + +echo "[testrail] Starting background task" +while /bin/true; do + php /var/www/testrail/task.php || true + sleep ${TR_DEFAULT_TASK_EXECUTION} +done & +echo "[testrail] Background task stoped" + +################################################################################# + +if [[ -z "${FIX_WWW_DATA}" ]]; then + echo "[apache2] env FIX_WWW_DATA is not set. Fixing permissions anyway" + chown www-data:www-data /var/www -R +elif [ "${FIX_WWW_DATA}" == "false" ]; then + echo "[apache2] env FIX_WWW_DATA is set to false. Skipping..." +elif [ "${FIX_WWW_DATA}" == "true" ]; then + echo "[apache2] Changing permissions for /var/www path. Dont worry, please wait." + chown www-data:www-data /var/www -R + echo "[apache2] Done" +else + echo "[apache2] env FIX_WWW_DATA is set to strange value. Skipping..." +fi + +echo "[apache2] Starting up" + +source /etc/apache2/envvars +tail -F /var/log/apache2/* & +exec apache2 -D FOREGROUND diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/Dockerfile b/linux/ecosystem/testrail/7.5.3.1000/main/Dockerfile new file mode 100644 index 000000000..73a433ba0 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/Dockerfile @@ -0,0 +1,96 @@ +FROM epicmorg/apache2:php7.4 + +ARG PHP_MODULE_PATH=/usr/lib/php/20190902 +ARG PHP_VER=7.4 +ARG PHP_DIR=/etc/php/${PHP_VER} +ARG CAS_PHP_INI=${PHP_DIR}/mods-available/cassandra.ini + +############################################################################## +# Cassandra CPP Support Install +############################################################################## + +############################################################################## +# Cassandra PHP Drivers Install +############################################################################## + +COPY addons/cassandra-php-driver /tmp/cassandra-php-driver +RUN cd /tmp/cassandra-php-driver && \ + dpkg -i ./multiarch-support_2.28-10+deb10u1_amd64.deb && \ + dpkg -i ./libuv1_1.35.0-1_amd64.deb && \ + dpkg -i ./cassandra-cpp-driver_2.16.0-1_amd64.deb + +COPY addons/Drivers.Cassandra/Linux/7.4/cassandra.so ${PHP_MODULE_PATH} +RUN echo "extension = ${PHP_MODULE_PATH}/cassandra.so" > ${CAS_PHP_INI} && \ + ln -sf ${CAS_PHP_INI} ${PHP_DIR}/cgi/conf.d/cassandra.ini && \ + ln -sf ${CAS_PHP_INI} ${PHP_DIR}/cli/conf.d/cassandra.ini && \ + ln -sf ${CAS_PHP_INI} ${PHP_DIR}/fpm/conf.d/cassandra.ini && \ + ln -sf ${CAS_PHP_INI} ${PHP_DIR}/apache2/conf.d/cassandra.ini && \ + php -m && \ + php -v + +############################################################################## +# Testrail Install +############################################################################## + +ENV TESTRAIL_VERSION=7.5.3.1000 +ENV DOWNLOAD_URL=https://secure.gurock.com/downloads/testrail/testrail-${TESTRAIL_VERSION}-ion72.zip +ENV TR_DEFAULT_TASK_EXECUTION=60 + +ENV TESTRAIL_RELEASE_DIR=/testrail-release + +ENV TR_WWW_PATH=/var/www/testrail +ENV TR_CONFIGPATH=${TR_CONFIG_DIR} +ENV TR_CONFIG_DIR=${TR_WWW_PATH}/config +ENV TR_CUSTOM_DIR=${TR_WWW_PATH}/custom +ENV TR_CUSTOM_AUTH_DIR=${TR_CUSTOM_DIR}/auth + +ENV TR_OPT_PATH=/opt/testrail +ENV TR_DEFAULT_LOG_DIR=${TR_OPT_PATH}/logs +ENV TR_DEFAULT_AUDIT_DIR=${TR_OPT_PATH}/audit +ENV TR_DEFAULT_REPORT_DIR=${TR_OPT_PATH}/reports +ENV TR_DEFAULT_ATTACHMENT_DIR=${TR_OPT_PATH}/attachments + +ENV TR_OPTPATH="/opt/testrail/" +ENV TR_CONFIGPATH="/var/www/testrail/config/" + +ENV OPENSSL_CONF=/etc/ssl/ + +RUN \ + apt-get update && \ + apt-get install -y --no-install-recommends zlib1g-dev libcurl4-gnutls-dev libldap2-dev zlib1g-dev libxml2-dev libfontconfig1 && \ + apt-get clean && \ + echo "ServerName localhost" >> /etc/apache2/apache2.conf && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /run.sh && \ + rm -rf /tmp/* + + +RUN \ + echo "[testrail] Preparing folders" && \ + mkdir -p ${TESTRAIL_RELEASE_DIR} && \ + mkdir -p ${TR_WWW_PATH} && \ + mkdir -p ${TR_DEFAULT_ATTACHMENT_DIR} ${TR_DEFAULT_REPORT_DIR} ${TR_DEFAULT_AUDIT_DIR} ${TR_DEFAULT_LOG_DIR} && \ + echo "[testrail] Downloading and installing" && \ + wget --no-check-certificate -O ${TESTRAIL_RELEASE_DIR}/testrail.zip ${DOWNLOAD_URL} && \ + chown -R www-data:www-data ${TESTRAIL_RELEASE_DIR} && \ + unzip -q -o ${TESTRAIL_RELEASE_DIR}/testrail.zip -d /var/www/ && \ + chown -R www-data:www-data ${TR_WWW_PATH} && \ + ls -las ${TR_WWW_PATH} && \ + chown -R www-data:www-data ${TR_OPT_PATH} && \ + ls -las ${TR_OPT_PATH} + +COPY apache_testrail.conf ${TESTRAIL_RELEASE_DIR}/apache-conf/000-default.conf + +#healthcheck. good practice +HEALTHCHECK --interval=2m --timeout=3s CMD curl -f http://localhost:80/ || exit 1 + +# Add image configuration and scripts +COPY docker-entrypoint.sh /usr/bin/docker-entrypoint.sh +RUN chmod 755 /usr/bin/docker-entrypoint.sh + +#Final config +WORKDIR /var/www/testrail +EXPOSE 80 443 + +ENTRYPOINT ["tini", "-s", "--", "docker-entrypoint.sh"] +CMD ["docker-entrypoint.sh"] diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/Makefile b/linux/ecosystem/testrail/7.5.3.1000/main/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/README.md b/linux/ecosystem/testrail/7.5.3.1000/main/README.md new file mode 100644 index 000000000..1aae0e92d --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/README.md @@ -0,0 +1,36 @@ +## Testrail + +* Based on `websites:php7.2` of our ecosystem. + +# Compose example + +```yml +version: '3.7' +services: + testrail: + image: epicmorg/testrail +# depends_on: +# - mysql +# - memcached + restart: unless-stopped + volumes: + - /etc/localtime:/etc/localtime + - /etc/timezone:/etc/timezone +# - /etc/letsencrypt:/etc/letsencrypt + - www:/var/www + - apache2:/etc/apache2 + - php:/etc/php + restart: unless-stopped +# extra_hosts: +# - "example.com:192.168.0.11" + tmpfs: + - /tmp + - /var/lib/php/sessions +volumes: + www: + external: true + apache2: + external: true + php: + external: true +``` diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.3/cassandra.so b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.3/cassandra.so new file mode 100755 index 000000000..48ec4a0af Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.3/cassandra.so differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.4/cassandra.so b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.4/cassandra.so new file mode 100755 index 000000000..9f6332a44 Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Linux/7.4/cassandra.so differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/README.MD b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/README.MD new file mode 100644 index 000000000..8616d54de --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/README.MD @@ -0,0 +1,24 @@ +# Cassandra PHP drivers for 7.3 and 7.4 + +`git clone https://git.assembla.com/gurock/Drivers.Cassandra.git` + +Drivers are built from sources of the awesome DataStax PHP driver available [here](https://github.com/datastax/php-driver) + +### Important: PHP driver requires C++ driver installed. It can be found [here](https://github.com/datastax/cpp-driver) + + + +# Copyright + +© DataStax, Inc. + +Licensed under the Apache License, Version 2.0 (the “License”); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. \ No newline at end of file diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_nts/php_cassandra.dll b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_nts/php_cassandra.dll new file mode 100644 index 000000000..d42d75acf Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_nts/php_cassandra.dll differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_ts/php_cassandra.dll b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_ts/php_cassandra.dll new file mode 100644 index 000000000..4d5e0694a Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.3_ts/php_cassandra.dll differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_nts/php_cassandra.dll b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_nts/php_cassandra.dll new file mode 100644 index 000000000..587141b9b Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_nts/php_cassandra.dll differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_ts/php_cassandra.dll b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_ts/php_cassandra.dll new file mode 100644 index 000000000..3b3237e27 Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/Drivers.Cassandra/Windows/7.4_ts/php_cassandra.dll differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dbg_2.16.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dbg_2.16.0-1_amd64.deb new file mode 100644 index 000000000..f0918d7d6 Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dbg_2.16.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dev_2.16.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dev_2.16.0-1_amd64.deb new file mode 100644 index 000000000..edf602ecf Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver-dev_2.16.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver_2.16.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver_2.16.0-1_amd64.deb new file mode 100644 index 000000000..951f84d41 Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/cassandra-cpp-driver_2.16.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/download.sh b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/download.sh new file mode 100755 index 000000000..fec710926 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/download.sh @@ -0,0 +1 @@ +wget -r -k -l 7 -p -E -nc --reject="index.html*" --user-agent=Mozilla/5.0 https://downloads.datastax.com/cpp-driver/ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dbg_1.35.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dbg_1.35.0-1_amd64.deb new file mode 100644 index 000000000..1fb9f44dd Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dbg_1.35.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dev_1.35.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dev_1.35.0-1_amd64.deb new file mode 100644 index 000000000..3ac90a83d Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1-dev_1.35.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1_1.35.0-1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1_1.35.0-1_amd64.deb new file mode 100644 index 000000000..0e9e1301d Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/libuv1_1.35.0-1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/multiarch-support_2.28-10+deb10u1_amd64.deb b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/multiarch-support_2.28-10+deb10u1_amd64.deb new file mode 100644 index 000000000..7cf23ffa8 Binary files /dev/null and b/linux/ecosystem/testrail/7.5.3.1000/main/addons/cassandra-php-driver/multiarch-support_2.28-10+deb10u1_amd64.deb differ diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/apache_testrail.conf b/linux/ecosystem/testrail/7.5.3.1000/main/apache_testrail.conf new file mode 100644 index 000000000..750791db9 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/apache_testrail.conf @@ -0,0 +1,16 @@ + + ServerName localhost + + ServerAdmin webmaster@localhost + DocumentRoot /var/www/testrail + + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + + Options Indexes FollowSymLinks + AllowOverride All + Require all granted + + + \ No newline at end of file diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/docker-compose.yml b/linux/ecosystem/testrail/7.5.3.1000/main/docker-compose.yml new file mode 100644 index 000000000..c4de29d76 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/testrail:7.5.3.1000" + build: + context: . diff --git a/linux/ecosystem/testrail/7.5.3.1000/main/docker-entrypoint.sh b/linux/ecosystem/testrail/7.5.3.1000/main/docker-entrypoint.sh new file mode 100755 index 000000000..17af00304 --- /dev/null +++ b/linux/ecosystem/testrail/7.5.3.1000/main/docker-entrypoint.sh @@ -0,0 +1,65 @@ +#!/bin/bash + +echo "[testrail] Starting testrail service" + +################################################################################# + +function createOptDirectory { + if [ ! -d $1 ] + then + echo "[testrail] Creating " $1 + mkdir -p $1 + fi + + chown -R www-data:www-data $1 +} + +/bin/cp -rf ${TESTRAIL_RELEASE_DIR}/apache-conf/000-default.conf /etc/apache2/sites-enabled/000-default.conf + +echo "[testrail] Unzipping testrail service" +unzip -q -o ${TESTRAIL_RELEASE_DIR}/testrail.zip -d /var/www/ +echo "[testrail] Testrail extracted" + +createOptDirectory ${TR_DEFAULT_LOG_DIR} +createOptDirectory ${TR_DEFAULT_AUDIT_DIR} +createOptDirectory ${TR_DEFAULT_REPORT_DIR} +createOptDirectory ${TR_DEFAULT_ATTACHMENT_DIR} + +chown -R www-data:www-data ${TR_CONFIG_DIR} +chown -R www-data:www-data ${TR_CONFIGPATH} + +################################################################################# + +echo "[testrail] Waiting for background task file" +while [ ! -f /var/www/testrail/task.php ] +do + sleep 2 +done + +echo "[testrail] Starting background task" +while /bin/true; do + php /var/www/testrail/task.php || true + sleep ${TR_DEFAULT_TASK_EXECUTION} +done & +echo "[testrail] Background task stoped" + +################################################################################# + +if [[ -z "${FIX_WWW_DATA}" ]]; then + echo "[apache2] env FIX_WWW_DATA is not set. Fixing permissions anyway" + chown www-data:www-data /var/www -R +elif [ "${FIX_WWW_DATA}" == "false" ]; then + echo "[apache2] env FIX_WWW_DATA is set to false. Skipping..." +elif [ "${FIX_WWW_DATA}" == "true" ]; then + echo "[apache2] Changing permissions for /var/www path. Dont worry, please wait." + chown www-data:www-data /var/www -R + echo "[apache2] Done" +else + echo "[apache2] env FIX_WWW_DATA is set to strange value. Skipping..." +fi + +echo "[apache2] Starting up" + +source /etc/apache2/envvars +tail -F /var/log/apache2/* & +exec apache2 -D FOREGROUND diff --git a/linux/ecosystem/testrail/README.md b/linux/ecosystem/testrail/README.md new file mode 100644 index 000000000..1779347f4 --- /dev/null +++ b/linux/ecosystem/testrail/README.md @@ -0,0 +1,77 @@ +## Testrail + +# Compose example + +```yml + testrail-latest-core: + container_name: testrail-latest-core + hostname: testrail-latest-core + image: epicmorg/testrail:latest + restart: always + ports: + - "80:80" + volumes: + - /mnt/lvm/apps/testrail-latest/core/custom/auth/auth.php:/var/www/testrail/custom/auth/auth.php:ro + - /mnt/lvm/apps/testrail-latest/core/attachments:/opt/testrail/attachments + - /mnt/lvm/apps/testrail-latest/core/audit:/opt/testrail/audit + - /mnt/lvm/apps/testrail-latest/core/logs:/opt/testrail/logs + - /mnt/lvm/apps/testrail-latest/core/reports:/opt/testrail/reports + - /mnt/lvm/apps/testrail-latest/core/www/config:/var/www/testrail/config + depends_on: + - testrail-latest-mysql + - testrail-latest-rabbitmq + - testrail-latest-cassandra + environment: + - TR_DEFAULT_TASK_EXECUTION=5 + + testrail-latest-mysql: + container_name: testrail-latest-mysql + hostname: testrail-latest-mysql + image: mysql:8 + ports: + - "3306:3306" + volumes: + - /mnt/lvm/apps/testrail-latest/mysql8.0/etc/mysql/my.cnf:/etc/mysql/my.cnf + - /mnt/lvm/apps/testrail-latest/mysql8.0/var/lib/mysql:/var/lib/mysql + - /mnt/lvm/apps/testrail-latest/mysql8.0/var/lib/mysql-files:/var/lib/mysql-files + - /mnt/lvm/apps/testrail-latest/mysql8.0/var/log/mysql:/var/log/mysql + restart: always + environment: + INIT_TOKUDB: 1 + MYSQL_ROOT_PASSWORD: password + + testrail-latest-cassandra: + container_name: testrail-latest-cassandra + hostname: cassandra + image: epicmorg/cassandra:3.11 + ulimits: + memlock: -1 + nproc: 1048575 + nofile: 100000 + volumes: + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + - /mnt/lvm/apps/testrail-latest/cassandra/bitnami:/bitnami + environment: + - CASSANDRA_SEEDS=user + - CASSANDRA_PASSWORD_SEEDER=yes + - CASSANDRA_PASSWORD=password + restart: always + + testrail-latest-rabbitmq: + image: rabbitmq:3-management + container_name: testrail-latest-rabbitmq + hostname: testrail-latest-rabbitmq + ports: + - 15671:15671 + - 15672:15672 + restart: always + environment: + - RABBITMQ_DEFAULT_USER=testrail + - RABBITMQ_DEFAULT_PASS=testrail + volumes: + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + - /mnt/lvm/apps/testrail-latest/rabbitmq:/var/lib/rabbitmq + +```