* set branch (+2 squashed commit) Squashed commit: [e322f24] remove placeholder [8647131] palceholder * Code cleanup and (primarily) consolidation (#21) * set branch * Exit 1 on iocage create failure * - Move jailcreate to global function - Remove Jailcreate.sh * Add dataset creation function * - add test script to test new global changes - also create folder in jail with createmount * fix * make test executable * more verbosity, fixing folder creation * moving global dataset create * move jails to new dataset-mount creation function * remove test jail and test branch-ref * Add Nextcloud (#22) * Basic working nextcloud integration * Enable persistent reinstall of Nextcloud * prepare for dev merge * Licence alert * Add external database and integrated jail * small improvements and update script * Add mariadb to dev (#31) * Working MariaDB config * - Set ZFS settings for DB on Nextcloud and MariaDB - Cleanup MariaDB * prepare for dev merge * Niceify Readme (#34) * put content from master into it * Some readme itteration * more niceification * [WIP} Wiki workflow test (#37) introduce automatic wiki generation * Add Bitwarden support (#35) * Nextcloud-Cleanup for v1.1.0 (#40) * Nextcloud cleanup - add db-type sanity check - remove some integrated db checks - Move ssl to /config/ssl - remove integrated databases * slight default tweaking * fix mariadb install bug * QA cycle
		
			
				
	
	
		
			83 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| #
 | |
| # PROVIDE: caddy
 | |
| # REQUIRE: networking
 | |
| # KEYWORD: shutdown
 | |
| 
 | |
| #
 | |
| # Add the following lines to /etc/rc.conf to enable caddy:
 | |
| # caddy_enable (bool):        Set to "NO" by default.
 | |
| #                             Set it to "YES" to enable caddy
 | |
| #
 | |
| # caddy_cert_email (str):     Set to "" by default.
 | |
| #                             Defines the SSL certificate issuer email. By providing an
 | |
| #                             email address you automatically agree to letsencrypt.org's
 | |
| #                             general terms and conditions
 | |
| #
 | |
| # caddy_bin_path (str):       Set to "/usr/local/bin/caddy" by default.
 | |
| #                             Provides the path to the caddy server executable
 | |
| #
 | |
| # caddy_cpu (str):            Set to "99%" by default.
 | |
| #                             Configures, how much CPU capacity caddy may gain
 | |
| #
 | |
| # caddy_config_path (str):    Set to "/usr/local/www/Caddyfile" by default.
 | |
| #                             Defines the path for the configuration file caddy will load on boot
 | |
| #
 | |
| # caddy_user (str):           Set to "root" by default.
 | |
| #                             Defines the user that caddy will run on
 | |
| #
 | |
| # caddy_group (str):          Set to "wheel" by default.
 | |
| #                             Defines the group that caddy files will be attached to
 | |
| #
 | |
| # caddy_logfile (str)         Set to "/var/log/caddy.log" by default.
 | |
| #                             Defines where the process log file is written, this is not a web access log
 | |
| #
 | |
| # caddy_env (str)             Set to "" by default.
 | |
| #                             This allows environment variable to be set that may be required, for example when using "DNS Challenge" account credentials are required.
 | |
| #                             e.g. (in your rc.conf)   caddy_env="CLOUDFLARE_EMAIL=me@domain.com CLOUDFLARE_API_KEY=my_api_key"
 | |
| #
 | |
| 
 | |
| . /etc/rc.subr                                           
 | |
| 
 | |
| name="caddy"
 | |
| rcvar="${name}_enable"
 | |
| 
 | |
| load_rc_config ${name}
 | |
| 
 | |
| : ${caddy_enable:="NO"}
 | |
| : ${caddy_cert_email=""}
 | |
| : ${caddy_bin_path="/usr/local/bin/caddy"}
 | |
| : ${caddy_cpu="99%"} # was a bug for me that caused a crash within jails
 | |
| : ${caddy_config_path="/usr/local/www/Caddyfile"}
 | |
| : ${caddy_logfile="/var/log/caddy.log"}
 | |
| : ${caddy_user="root"}
 | |
| : ${caddy_group="wheel"}
 | |
| 
 | |
| if [ "$caddy_cert_email" = "" ]
 | |
| then
 | |
|     echo "rc variable \$caddy_cert_email is not set. Please provide a valid SSL certificate issuer email."
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| pidfile="/var/run/${name}.pid"
 | |
| procname="${caddy_bin_path}" #enabled builtin pid checking for start / stop
 | |
| command="/usr/sbin/daemon"
 | |
| command_args="-p ${pidfile} /usr/bin/env ${caddy_env} ${procname} -cpu ${caddy_cpu} -log stdout -conf ${caddy_config_path} -agree -email ${caddy_cert_email} < /dev/null >> ${caddy_logfile} 2>&1"
 | |
| 
 | |
| start_precmd="caddy_startprecmd"
 | |
| 
 | |
| caddy_startprecmd()
 | |
| {
 | |
|         if [ ! -e "${pidfile}" ]; then
 | |
|                 install -o "${caddy_user}" -g "${caddy_group}" "/dev/null" "${pidfile}"
 | |
|         fi
 | |
| 
 | |
|         if [ ! -e "${caddy_logfile}" ]; then
 | |
|                 install -o "${caddy_user}" -g "${caddy_group}" "/dev/null" "${caddy_logfile}"
 | |
|         fi
 | |
| }
 | |
| 
 | |
| required_files="${caddy_config_path}"
 | |
| 
 | |
| run_rc_command "$1"
 |