Skip to content

Commit d2b164b

Browse files
author
Marco Ris
committedMay 20, 2021
fix: Improve the setup workflow
1 parent 2bb7d11 commit d2b164b

File tree

4 files changed

+73
-72
lines changed

4 files changed

+73
-72
lines changed
 

‎gulp/setconfig.js

-66
This file was deleted.

‎gulp/setup.js

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
import {src, dest} from 'gulp';
2+
import replace from 'gulp-replace';
3+
import run from 'gulp-run';
4+
5+
import yargs from 'yargs';
6+
import fs from 'fs';
7+
8+
require('dotenv').config();
9+
10+
// Setup the wp-config.php for local, stage or production
11+
const setup = (done) => {
12+
if (fs.existsSync('.env')) {
13+
var dbname = process.env.LOCAL_DB_NAME;
14+
var dbuser = process.env.LOCAL_DB_USER;
15+
var dbpass = process.env.LOCAL_DB_PASS;
16+
var dbhost = process.env.LOCAL_DB_HOST;
17+
var prefix = process.env.DB_PREFIX;
18+
var debug = process.env.LOCAL_WP_DEBUG;
19+
var savequ = process.env.LOCAL_SAVEQUERIES;
20+
var disfmo = process.env.LOCAL_DISALLOW_FILE_MODS;
21+
var almult = process.env.LOCAL_WP_ALLOW_MULTISITE;
22+
23+
if (typeof yargs.argv.prod !== 'undefined') {
24+
dbname = process.env.PRODUCTION_DB_NAME;
25+
dbuser = process.env.PRODUCTION_DB_USER;
26+
dbpass = process.env.PRODUCTION_DB_PASS;
27+
dbhost = '';
28+
prefix = process.env.DB_PREFIX;
29+
debug = process.env.PRODUCTION_WP_DEBUG;
30+
savequ = process.env.PRODUCTION_SAVEQUERIES;
31+
disfmo = process.env.PRODUCTION_DISALLOW_FILE_MODS;
32+
almult = process.env.PRODUCTION_WP_ALLOW_MULTISITE;
33+
} else if (typeof yargs.argv.stage !== 'undefined') {
34+
dbname = process.env.STAGING_DB_NAME;
35+
dbuser = process.env.STAGING_DB_USER;
36+
dbpass = process.env.STAGING_DB_PASS;
37+
dbhost = '';
38+
prefix = process.env.DB_PREFIX;
39+
debug = process.env.STAGING_WP_DEBUG;
40+
savequ = process.env.STAGING_SAVEQUERIES;
41+
disfmo = process.env.STAGING_DISALLOW_FILE_MODS;
42+
almult = process.env.STAGING_WP_ALLOW_MULTISITE;
43+
}
44+
45+
var cmd = new run.Command('sh ./shells/getKeys.sh').exec();
46+
var keys = fs.readFileSync('keys.php', 'utf-8');
47+
48+
src('./config/wp-config.php')
49+
.pipe(replace('@@db_name', dbname))
50+
.pipe(replace('@@db_user', dbuser))
51+
.pipe(replace('@@db_pass', dbpass))
52+
.pipe(replace('@@db_host', dbhost))
53+
.pipe(replace('@@include', keys))
54+
.pipe(replace('@@db_prefix', prefix))
55+
.pipe(replace('@@wp_debug', debug))
56+
.pipe(replace('@@save_queries', savequ))
57+
.pipe(replace('@@disallow_file_mods', disfmo))
58+
.pipe(replace('@@wp_allow_multisite', almult))
59+
.pipe(dest('wwwroot'));
60+
} else {
61+
console.log('.env file does not exist.\nRun gulp setupFirst');
62+
}
63+
64+
done();
65+
};
66+
67+
module.exports = setup;

‎gulp/setupenvironment.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,10 @@ const setupEnvironment = () => {
7070
default: ''
7171
}], function(res) {
7272
//value is in res.name
73-
return src('.env')
73+
src('.env')
7474
.pipe(replace('hostinguser', res.hostinguser))
7575
.pipe(replace('sshhost', res.sshhost))
7676
.pipe(replace('dbhost', res.dbhost))
77-
.pipe(replace('dbport', res.dbport))
7877
.pipe(replace('wpversion', res.wpversion))
7978
.pipe(replace('locale', res.locale))
8079
.pipe(replace('dockername', res.dockername))

‎gulpfile.babel.js

+5-4
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ const copyHtaccessProduction = () => {
1010
// Setsup nucleus and the .env file
1111
import setupEnvironment from './gulp/setupenvironment';
1212

13-
// Sets the wp-config.php file
14-
import setConfig from './gulp/setconfig';
15-
1613
// Sets the composer.json file
1714
import setComposerfile from './gulp/setcomposerfile';
1815

@@ -98,13 +95,17 @@ exports.shot = shot;
9895
import deploy from './gulp/deploy';
9996
exports.deploy = deploy;
10097

98+
// Deploy theme to server
99+
import setup from './gulp/setup';
100+
exports.setup = setup;
101+
101102
// Bumps version
102103
import bumpPrompt from './gulp/bump';
103104

104105
// Release to github with tags
105106
import githubrelease from './gulp/githubrelease';
106107

107-
export const setup = series(setupEnvironment, setConfig, setComposerfile);
108+
export const setupFirst = series(setupEnvironment, setup, setComposerfile);
108109
export const dev = series(clean, styles, images, makepot, copyfiles, copyphp, scripts, addbanner, plugins, docs, serve, watchForChanges);
109110
export const build = series(cleanall, styles, images, makepot, copyfiles, copyphp, scripts, addbanner, plugins, copyHtaccessProduction, docs);
110111
export const buildzip = series(cleanall, styles, images, makepot, copyfiles, copyphp, scripts, addbanner, copyHtaccessProduction, generatezip);

0 commit comments

Comments
 (0)
Please sign in to comment.