Updates
This commit is contained in:
17
README.md
17
README.md
@@ -22,9 +22,8 @@ Wiaas implementation based on wordpress [woocommerce](https://woocommerce.com/)
|
||||
* `MYSQL_DATABASE` - Wordpress database name
|
||||
* `MYSQL_USER` - Wordpress database user
|
||||
* `MYSQL_PASSWORD` - Wordpress database password
|
||||
* `MYSQL_HOST` - Wordpress database host (will be `db` for docker)
|
||||
* `WP_ENV` - Set to environment (`local`, `development`, `production`)
|
||||
* `API_URL` - Full URL to WordPress home (http://localhost:8081 if you are testing locally)
|
||||
* `WP_ENV` - Set to environment (`development`, `staging`, `production`)
|
||||
* `WP_AUTH_KEY`, `WP_SECURE_AUTH_KEY`, `WP_LOGGED_IN_KEY`, `WP_NONCE_KEY`, `WP_AUTH_SALT`, `WP_SECURE_AUTH_SALT`, `WP_LOGGED_IN_SALT`, `WP_NONCE_SALT`, `WP_JWT_AUTH_SECRET_KEY`
|
||||
|
||||
3) Execute in the root of the project :
|
||||
@@ -53,14 +52,16 @@ Frontend is running on http://localhost:8080 and backend on http://localhost:808
|
||||
|
||||
1) Environment variables
|
||||
|
||||
For handling environment variables during local development we use [dotenv](https://github.com/vlucas/phpdotenv) library which will load all variables from `local.env` file
|
||||
if such file is present. These variables will then be accessible inside wordpress.
|
||||
|
||||
cp environment.env local.env
|
||||
For handling wordpress environment variables during local development we use [dotenv](https://github.com/vlucas/phpdotenv) library
|
||||
which enables loading variables from `.env` file.
|
||||
|
||||
If you wish to keep your docker and development setup different then generate `development.env` file which will then
|
||||
be loaded by dotenv insted of default `.env` file.
|
||||
|
||||
cp environment.env development.env
|
||||
|
||||
Update `local.env` with your local environment variables.
|
||||
Remember to uncomment env variables needed for local wordpress development like WP_HOME and WP_DB_HOST.
|
||||
(important: set WP_ENV to local only for local coding environment, since it will activate script debug, wordpress debug and save query options).
|
||||
Update `development.env` with your local environment variables overrides.
|
||||
|
||||
2) Apache
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ ARG WP_JWT_AUTH_SECRET_KEY
|
||||
|
||||
ENV WP_ENV ${WP_ENV}
|
||||
ENV WP_HOME ${API_URL}
|
||||
ENV WP_DB_HOST db
|
||||
|
||||
ENV MYSQL_DATABASE ${MYSQL_DATABASE}
|
||||
ENV MYSQL_USER ${MYSQL_USER}
|
||||
|
||||
@@ -15,7 +15,7 @@ Env::init();
|
||||
* Set up our global environment constant and load its config first
|
||||
* Default: development
|
||||
*/
|
||||
define('WP_ENV', env('WP_ENV') ?: 'local');
|
||||
define('WP_ENV', env('WP_ENV') ?: 'development');
|
||||
|
||||
$env_config = __DIR__ . '/environments/' . WP_ENV . '.php';
|
||||
|
||||
@@ -26,7 +26,7 @@ if (file_exists($env_config)) {
|
||||
/**
|
||||
* URLs
|
||||
*/
|
||||
define('WP_HOME', env('WP_HOME'));
|
||||
define('WP_HOME', env('WP_HOME') ?: 'http://localhost');
|
||||
define('WP_SITEURL', WP_HOME . '/wp');
|
||||
|
||||
/**
|
||||
@@ -43,7 +43,7 @@ define('VP_PROJECT_ROOT', $webroot_dir . '/wp/');
|
||||
define('DB_NAME', env('MYSQL_DATABASE'));
|
||||
define('DB_USER', env('MYSQL_USER'));
|
||||
define('DB_PASSWORD', env('MYSQL_PASSWORD'));
|
||||
define('DB_HOST', env('WP_DB_HOST') ?: 'db');
|
||||
define('DB_HOST', env('WP_DB_HOST') ?: 'localhost');
|
||||
define('DB_CHARSET', 'utf8mb4');
|
||||
define('DB_COLLATE', '');
|
||||
$table_prefix = env('DB_PREFIX') ?: 'wp_';
|
||||
|
||||
@@ -1,7 +1,25 @@
|
||||
<?php
|
||||
/** Development */
|
||||
ini_set('display_errors', 0);
|
||||
define('WP_DEBUG_DISPLAY', false);
|
||||
define('SCRIPT_DEBUG', false);
|
||||
/** Disable all file modifications including updates and update notifications */
|
||||
define('DISALLOW_FILE_MODS', true);
|
||||
define('SAVEQUERIES', true);
|
||||
define('WP_DEBUG', true);
|
||||
define('SCRIPT_DEBUG', true);
|
||||
|
||||
/**
|
||||
* Use Dotenv to set required environment variables and load .local.env file
|
||||
*/
|
||||
|
||||
$dotenv_dir = dirname(dirname(dirname(__DIR__)));
|
||||
|
||||
$env_file_name = null;
|
||||
|
||||
if (file_exists($dotenv_dir . '/development.env')) {
|
||||
$env_file_name = 'development.env';
|
||||
} else if(file_exists($dotenv_dir . '/.env')) {
|
||||
$env_file_name = '.env';
|
||||
}
|
||||
|
||||
if (isset($env_file_name)) {
|
||||
$dotenv = new Dotenv\Dotenv($dotenv_dir, $env_file_name);
|
||||
$dotenv->load();
|
||||
$dotenv->required(['MYSQL_DATABASE', 'MYSQL_USER', 'MYSQL_PASSWORD']);
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
<?php
|
||||
/** Development */
|
||||
define('SAVEQUERIES', true);
|
||||
define('WP_DEBUG', true);
|
||||
define('SCRIPT_DEBUG', true);
|
||||
|
||||
/**
|
||||
* Use Dotenv to set required environment variables and load .env file in root if on local
|
||||
*/
|
||||
|
||||
$dotenv_dir = dirname(dirname(dirname(__DIR__)));
|
||||
$dotenv = new Dotenv\Dotenv($dotenv_dir, 'local.env');
|
||||
if (file_exists($dotenv_dir . '/local.env')) {
|
||||
$dotenv->load();
|
||||
$dotenv->required(['MYSQL_DATABASE', 'MYSQL_USER', 'MYSQL_PASSWORD', 'WP_HOME']);
|
||||
}
|
||||
7
backend/config/environments/staging.php
Normal file
7
backend/config/environments/staging.php
Normal file
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
/** Development */
|
||||
ini_set('display_errors', 0);
|
||||
define('WP_DEBUG_DISPLAY', false);
|
||||
define('SCRIPT_DEBUG', false);
|
||||
/** Disable all file modifications including updates and update notifications */
|
||||
define('DISALLOW_FILE_MODS', true);
|
||||
@@ -4,22 +4,17 @@ MYSQL_DATABASE=wordpress
|
||||
MYSQL_USER=wp_admin
|
||||
MYSQL_PASSWORD=wp_password
|
||||
|
||||
|
||||
API_URL=url
|
||||
# Url where backend application api is available
|
||||
API_URL=http://localhost
|
||||
|
||||
#Wordpress config
|
||||
|
||||
# Determines loading of enviroment specific non sensitive wordpress config file (/backend/config/environments/[WP_ENV].php)
|
||||
# Set this to local only for local wordpress development (it will activate WP_DEBUG, SCRIPT_DEBUG and SAVEQUERIES)
|
||||
# Possible values [development, staging, production]
|
||||
# Note that development value will activate WP_DEBUG, SCRIPT_DEBUG and SAVEQUERIES
|
||||
WP_ENV=development
|
||||
|
||||
# Required for local wordpress development only for quick override of default db if needed
|
||||
#WP_DB_HOST=localhost
|
||||
|
||||
# Required for local wordpress development since dotenv allows this kind of initialization
|
||||
# For docker deployment this is done inside docker container
|
||||
#WP_HOME=${API_URL}
|
||||
|
||||
# Generate salts here https://api.wordpress.org/secret-key/1.1/salt/
|
||||
WP_AUTH_KEY=generate_me
|
||||
WP_SECURE_AUTH_KEY=generate_me
|
||||
WP_LOGGED_IN_KEY=generate_me
|
||||
|
||||
Reference in New Issue
Block a user