#4036 Dump command improved
This commit is contained in:
parent
bfa522afbe
commit
a0ebfcf3f5
25
myvc-run.js
25
myvc-run.js
|
@ -38,6 +38,9 @@ class Run {
|
||||||
|
|
||||||
async run(myvc, opts) {
|
async run(myvc, opts) {
|
||||||
const dumpDir = `${opts.myvcDir}/dump`;
|
const dumpDir = `${opts.myvcDir}/dump`;
|
||||||
|
const serverDir = path.join(__dirname, 'server');
|
||||||
|
|
||||||
|
// Fetch dump information
|
||||||
|
|
||||||
if (!await fs.pathExists(`${dumpDir}/.dump.sql`))
|
if (!await fs.pathExists(`${dumpDir}/.dump.sql`))
|
||||||
throw new Error('To run local database you have to create a dump first');
|
throw new Error('To run local database you have to create a dump first');
|
||||||
|
@ -68,13 +71,27 @@ class Run {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const dockerfilePath = path.join(__dirname, 'server', 'Dockerfile');
|
// Build base server image
|
||||||
|
|
||||||
|
await docker.build(__dirname, {
|
||||||
|
tag: 'myvc/server-base',
|
||||||
|
file: path.join(serverDir, 'Dockerfile')
|
||||||
|
}, opts.debug);
|
||||||
|
|
||||||
|
|
||||||
|
// Build server image
|
||||||
|
|
||||||
|
let serverDockerfile = path.join(dumpDir, 'Dockerfile');
|
||||||
|
if (!await fs.pathExists(serverDockerfile))
|
||||||
|
serverDockerfile = path.join(serverDir, 'Dockerfile.server');
|
||||||
|
|
||||||
await docker.build(__dirname, {
|
await docker.build(__dirname, {
|
||||||
tag: 'myvc/server',
|
tag: 'myvc/server',
|
||||||
file: dockerfilePath
|
file: serverDockerfile
|
||||||
}, opts.debug);
|
}, opts.debug);
|
||||||
|
|
||||||
|
// Build dump image
|
||||||
|
|
||||||
const today = new Date();
|
const today = new Date();
|
||||||
const pad = v => v < 10 ? '0' + v : v;
|
const pad = v => v < 10 ? '0' + v : v;
|
||||||
const year = today.getFullYear();
|
const year = today.getFullYear();
|
||||||
|
@ -84,10 +101,12 @@ class Run {
|
||||||
|
|
||||||
await docker.build(opts.myvcDir, {
|
await docker.build(opts.myvcDir, {
|
||||||
tag: opts.code,
|
tag: opts.code,
|
||||||
file: `${dockerfilePath}.dump`,
|
file: path.join(serverDir, 'Dockerfile.dump'),
|
||||||
buildArg: `STAMP=${stamp}`
|
buildArg: `STAMP=${stamp}`
|
||||||
}, opts.debug);
|
}, opts.debug);
|
||||||
|
|
||||||
|
// Run container
|
||||||
|
|
||||||
const isRandom = opts.random;
|
const isRandom = opts.random;
|
||||||
const dbConfig = Object.assign({}, opts.dbConfig);
|
const dbConfig = Object.assign({}, opts.dbConfig);
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "myvc",
|
"name": "myvc",
|
||||||
"version": "1.4.9",
|
"version": "1.4.10",
|
||||||
"author": "Verdnatura Levante SL",
|
"author": "Verdnatura Levante SL",
|
||||||
"description": "MySQL Version Control",
|
"description": "MySQL Version Control",
|
||||||
"license": "GPL-3.0",
|
"license": "GPL-3.0",
|
||||||
|
|
|
@ -1,19 +1,11 @@
|
||||||
FROM mariadb:10.7.3
|
FROM mariadb:10.7.3
|
||||||
|
|
||||||
ENV MYSQL_ROOT_PASSWORD root
|
ENV MYSQL_ROOT_PASSWORD root
|
||||||
ENV TZ Europe/Madrid
|
|
||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
curl \
|
curl \
|
||||||
ca-certificates \
|
|
||||||
tzdata \
|
|
||||||
&& curl -sL https://apt.verdnatura.es/conf/verdnatura.gpg | apt-key add - \
|
|
||||||
&& echo "deb http://apt.verdnatura.es/ jessie main" > /etc/apt/sources.list.d/vn.list \
|
|
||||||
&& apt-get update \
|
|
||||||
&& apt-get install -y \
|
|
||||||
vn-mariadb \
|
|
||||||
&& curl -sL https://deb.nodesource.com/setup_14.x | bash - \
|
&& curl -sL https://deb.nodesource.com/setup_14.x | bash - \
|
||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
@ -51,7 +43,6 @@ COPY \
|
||||||
server/docker-start.sh \
|
server/docker-start.sh \
|
||||||
/usr/local/bin/
|
/usr/local/bin/
|
||||||
|
|
||||||
USER mysql
|
|
||||||
ENTRYPOINT ["docker-start.sh"]
|
ENTRYPOINT ["docker-start.sh"]
|
||||||
|
|
||||||
CMD ["mysqld"]
|
CMD ["mysqld"]
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
FROM myvc/server-base
|
||||||
|
|
||||||
|
USER mysql
|
|
@ -8,6 +8,6 @@
|
||||||
"type": "git"
|
"type": "git"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"myvc": "^1.4.9"
|
"myvc": "^1.4.10"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue