Skip to content

Commit 4d45021

Browse files
committedFeb 6, 2022
feat: allow usage of external perrsistent volumes
1 parent 9ac11b2 commit 4d45021

File tree

5 files changed

+24
-7
lines changed

5 files changed

+24
-7
lines changed
 

‎.mdeprc.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ module.exports = {
77
auto_compose: true,
88
node: '16',
99
tester_flavour: 'chrome-tester',
10-
mirror: true,
10+
mirror: process.platform !== 'darwin',
1111
services: [
1212
'redisSentinel',
1313
'redisCluster',
@@ -17,6 +17,8 @@ module.exports = {
1717
'cassandra',
1818
'couchdb',
1919
],
20+
mutagenVolumeExternal: true,
21+
mutagenVolumeName: 'mdep-src ',
2022
in_one: true,
2123
extras: {
2224
tester: {

‎bin/cmds/test.js

+10
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,16 @@ exports.builder = (yargs) => (
179179
.option('mutagen-working-dir', {
180180
describe: 'custom mutagen working dir',
181181
})
182+
.option('mutagen-volume-name', {
183+
describe: 'shared mutagen volume name',
184+
type: 'string',
185+
default: 'makeomatic-deploy-code',
186+
})
187+
.option('mutagen-volume-external', {
188+
describe: 'set as external to avoid recreating each time',
189+
type: 'boolean',
190+
default: false,
191+
})
182192
.option('exec-user', {
183193
alias: 'euser',
184194
describe: 'user to run setup commands with',

‎bin/cmds/test_cmds/auto-compose.js

+7-3
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,11 @@ exports.handler = async (argv) => {
4444
}
4545

4646
if (argv.isMutagen) {
47-
compose.volumes['makeomatic-deploy-code'] = {};
47+
compose.volumes[argv.mutagenVolumeName] = {};
48+
if (argv.mutagenVolumeExternal) {
49+
compose.volumes[argv.mutagenVolumeName].name = argv.mutagenVolumeName;
50+
}
51+
4852
compose['x-mutagen'] = {
4953
sync: {
5054
defaults: {
@@ -53,7 +57,7 @@ exports.handler = async (argv) => {
5357
},
5458
code: {
5559
alpha: argv.mutagenDir,
56-
beta: 'volume://makeomatic-deploy-code',
60+
beta: `volume://${argv.mutagenVolumeName}`,
5761
},
5862
},
5963
};
@@ -113,7 +117,7 @@ async function tester(compose, argv) {
113117
const volumes = testerConfig.volumes.filter((volume) => volume !== workingVolume);
114118

115119
volumes.push(
116-
argv.isMutagen ? `makeomatic-deploy-code:${mutagenWorkingDir}` : workingVolume
120+
argv.isMutagen ? `${argv.mutagenVolumeName}:${mutagenWorkingDir}` : workingVolume
117121
);
118122

119123
if (argv.mirror) {

‎bin/cmds/test_cmds/compose.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,10 @@ exports.handler = async (argv) => {
7070
exec(argv.on_fail);
7171
}
7272

73+
const cleanup = argv.mutagenVolumeExternal ? 'down' : 'down -v';
7374
if (argv.no_cleanup !== true) {
7475
echo(`\nAutomatically cleaning up after ${signal}\n`);
75-
exec(`${dockerCompose} down -v --remove-orphans; true`);
76+
exec(`${dockerCompose} ${cleanup} --remove-orphans; true`);
7677

7778
if (argv.auto_compose) {
7879
const deleteCmd = (isWin ? 'del ' : 'rm ') + argv.docker_compose;
@@ -83,7 +84,7 @@ exports.handler = async (argv) => {
8384
// force exit now
8485
if (signal === 'exit') process.exit(code || 0);
8586
} else {
86-
echo(`\nLocal environment detected.\nTo stop containers write:\n\n${dockerCompose} down -v --remove-orphans;\n`);
87+
echo(`\nLocal environment detected.\nTo stop containers write:\n\n${dockerCompose} ${cleanup} --remove-orphans;\n`);
8788
}
8889
}
8990

‎jest.config.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
exports.coverageProvider = 'v8';
22
exports.testURL = 'http://tester.local';
33
exports.verbose = true;
4-
exports.testTimeout = 15000;
4+
exports.testTimeout = 60000;

0 commit comments

Comments
 (0)
Please sign in to comment.