Commit 04ca1484 authored by Dom Sekotill's avatar Dom Sekotill
Browse files

Delegate wp-config.php generation to wp-cli

parent 42d68708
Loading
Loading
Loading
Loading
+8 −40
Original line number Diff line number Diff line
@@ -2,49 +2,17 @@
set -eu
shopt -s nullglob globstar

# constants
WP_ROOT=${WORDPRESS_ROOT:-/var/www/html}
WP_CONTENT=${WP_ROOT}/wp-content
WP_CONFIG=${WP_ROOT}/wp-config.php

genkey() { head -c${1:-1M} /dev/urandom | sha1sum | cut -d' ' -f1; }

create_config()
{
	local key=$(genkey)
	cat > $WP_CONFIG <<-END_CONFIG
		<?php
		/**
		 * Generated by entrypoint.sh
		 * `date`
		 */

		define('DB_HOST', '${DB_HOST? Please set DB_HOST in /etc/wordpress/}');
		define('DB_NAME', '${DB_NAME? Please set DB_NAME in /etc/wordpress/}');
		define('DB_USER', '${DB_USER? Please set DB_USER in /etc/wordpress/}');
		define('DB_PASSWORD', '${DB_PASSWORD? Please set DB_PASSWORD in /etc/wordpress/}');

		define('DB_CHARSET', 'utf8');
		define('DB_COLLATE', '');

		\$table_prefix = 'wp_';

		define('AUTH_KEY',         '${key}');
		define('SECURE_AUTH_KEY',  '${key}');
		define('LOGGED_IN_KEY',    '${key}');
		define('NONCE_KEY',        '${key}');
		define('AUTH_SALT',        '`genkey 128`');
		define('SECURE_AUTH_SALT', '`genkey 128`');
		define('LOGGED_IN_SALT',   '`genkey 128`');
		define('NONCE_SALT',       '`genkey 128`');

	wp config create \
		--extra-php \
		--skip-check \
		--dbhost="${DB_HOST? Please set DB_HOST in /etc/wordpress/}" \
		--dbname="${DB_NAME? Please set DB_NAME in /etc/wordpress/}" \
		--dbuser="${DB_USER? Please set DB_USER in /etc/wordpress/}" \
		--dbpass="${DB_PASSWORD? Please set DB_PASSWORD in /etc/wordpress/}" \
	<<-END_CONFIG
		define('DISALLOW_FILE_MODS', true);

		define('WP_DEBUG', false);
		if ( !defined('ABSPATH') )
			define('ABSPATH', dirname(__FILE__) . '/');

		require_once(ABSPATH . 'wp-settings.php');
	END_CONFIG
}