#!/bin/bash set -eu readonly source_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")"/../.. && pwd)" ! "${source_dir}/src/test/checkInstall" && exit 1 # create dir structure rm -rf $HOME/.cloudron_test 2>/dev/null || true # some of those docker container data requires sudo to be removed mkdir -p $HOME/.cloudron_test cd $HOME/.cloudron_test mkdir -p appsdata mkdir -p boxdata/appicons boxdata/mail boxdata/certs boxdata/mail/dkim/localhost boxdata/mail/dkim/foobar.com mkdir -p platformdata/addons/mail platformdata/nginx/cert platformdata/nginx/applications platformdata/collectd/collectd.conf.d platformdata/addons platformdata/logrotate.d platformdata/backup platformdata/logs/tasks # put cert openssl req -x509 -newkey rsa:2048 -keyout platformdata/nginx/cert/host.key -out platformdata/nginx/cert/host.cert -days 3650 -subj '/CN=localhost' -nodes -config <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:*.localhost")) # create docker network (while the infra code does this, most tests skip infra setup) docker network create --subnet=172.18.0.0/16 cloudron || true