Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
32f5ead4f4 | |||
c29a261cb6 | |||
de57d45947 | |||
00bf1532ca | |||
38fc672bf6 | |||
83771df11d | |||
822e480bdf | |||
77c6ef99c1 | |||
8e3991c121 | |||
77477587b8 | |||
c7e32d6990 |
@ -1,4 +1,4 @@
|
|||||||
image: hosttoday/ht-docker-dbase:npmts
|
image: hosttoday/ht-docker-dbase:npmci
|
||||||
services:
|
services:
|
||||||
- docker:dind
|
- docker:dind
|
||||||
|
|
||||||
@ -6,19 +6,18 @@ stages:
|
|||||||
- test
|
- test
|
||||||
- release
|
- release
|
||||||
- trigger
|
- trigger
|
||||||
|
- pages
|
||||||
|
|
||||||
test:
|
test:
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- npm install
|
- npmci test stable
|
||||||
- npm test
|
|
||||||
tags:
|
tags:
|
||||||
- docker
|
- docker
|
||||||
- lossless
|
- lossless
|
||||||
- priv
|
- priv
|
||||||
|
|
||||||
release:
|
release:
|
||||||
image: hosttoday/ht-docker-node:npmts
|
|
||||||
stage: release
|
stage: release
|
||||||
environment: npmjs-com_registry
|
environment: npmjs-com_registry
|
||||||
script:
|
script:
|
||||||
@ -31,7 +30,6 @@ release:
|
|||||||
- priv
|
- priv
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
image: hosttoday/ht-docker-node:npmts
|
|
||||||
stage: trigger
|
stage: trigger
|
||||||
script:
|
script:
|
||||||
- npmci trigger
|
- npmci trigger
|
||||||
@ -41,3 +39,18 @@ trigger:
|
|||||||
- docker
|
- docker
|
||||||
- lossless
|
- lossless
|
||||||
- priv
|
- priv
|
||||||
|
|
||||||
|
pages:
|
||||||
|
image: hosttoday/ht-docker-node:npmci
|
||||||
|
stage: pages
|
||||||
|
script:
|
||||||
|
- npmci command yarn global add npmpage
|
||||||
|
- npmci command npmpage
|
||||||
|
only:
|
||||||
|
- tags
|
||||||
|
tags:
|
||||||
|
- docker
|
||||||
|
artifacts:
|
||||||
|
expire_in: 1 week
|
||||||
|
paths:
|
||||||
|
- public
|
||||||
|
@ -55,5 +55,6 @@ dockersSock | wether or not the testcontainer will have access to the docker.soc
|
|||||||
For further information read the linked docs at the top of this README.
|
For further information read the linked docs at the top of this README.
|
||||||
|
|
||||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
||||||
|
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
|
||||||
|
|
||||||
[](https://git.zone)
|
[](https://git.zone)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
FROM hosttoday/ht-docker-node:npmci
|
FROM hosttoday/ht-docker-node:npmci
|
||||||
|
RUN yarn global add npmdocker
|
||||||
COPY ./buildContextDir /workspace
|
COPY ./buildContextDir /workspace
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
ENV CI=true
|
ENV CI=true
|
||||||
CMD ["npmci","test","stable"];
|
CMD ["npmdocker","runinside"];
|
||||||
|
14
dist/npmdocker.cli.js
vendored
14
dist/npmdocker.cli.js
vendored
@ -21,10 +21,20 @@ exports.run = () => {
|
|||||||
plugins.beautylog.success('container ended all right!');
|
plugins.beautylog.success('container ended all right!');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
plugins.beautylog.error('container ended with error!');
|
plugins.beautylog.error(`container ended with error! Exit Code is ${configArg.exitCode}`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
|
npmdockerCli.addCommand('runinside').then((argvArg) => __awaiter(this, void 0, void 0, function* () {
|
||||||
|
plugins.beautylog.ok('Allright. We are now in Docker!');
|
||||||
|
plugins.beautylog.log('now trying to run your specified command');
|
||||||
|
let configArg = yield ConfigModule.run();
|
||||||
|
yield plugins.smartshell.exec(configArg.command).then(response => {
|
||||||
|
if (response.exitCode !== 0) {
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}));
|
||||||
npmdockerCli.addCommand('clean').then((argvArg) => __awaiter(this, void 0, void 0, function* () {
|
npmdockerCli.addCommand('clean').then((argvArg) => __awaiter(this, void 0, void 0, function* () {
|
||||||
plugins.beautylog.ora.start();
|
plugins.beautylog.ora.start();
|
||||||
plugins.beautylog.ora.text('cleaning up docker env...');
|
plugins.beautylog.ora.text('cleaning up docker env...');
|
||||||
@ -48,4 +58,4 @@ exports.run = () => {
|
|||||||
}));
|
}));
|
||||||
npmdockerCli.startParse();
|
npmdockerCli.startParse();
|
||||||
};
|
};
|
||||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLmNsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL25wbWRvY2tlci5jbGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLCtDQUE4QztBQUc5QyxVQUFVO0FBQ1YsbURBQWtEO0FBQ2xELG1EQUFrRDtBQUVsRCxJQUFJLFlBQVksR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7QUFFdkMsUUFBQSxHQUFHLEdBQUc7SUFDZixZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQU8sT0FBTztRQUM3QyxJQUFJLFNBQVMsR0FBRyxNQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUU7YUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN6QixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtRQUN6RCxDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1lBQ3RELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDakIsQ0FBQztJQUNILENBQUMsQ0FBQSxDQUFDLENBQUE7SUFFRixZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFPLE9BQU87UUFDbEQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFDdkQsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDaEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUE7WUFDdEUsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1lBRTVELE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFBO1lBQzVELE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQTtZQUU3RCxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtZQUNoRCxNQUFNLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUE7WUFFaEYsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUE7WUFDMUQsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFBO1lBRWxFLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO1lBQ3JELE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsMERBQTBELENBQUMsQ0FBQTtRQUMzRixDQUFDO1FBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUE7SUFDakUsQ0FBQyxDQUFBLENBQUMsQ0FBQTtJQUVGLFlBQVksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQU8sT0FBTztRQUN0RCxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBQzFDLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsa0VBQWtFLENBQUMsQ0FBQTtJQUNuRyxDQUFDLENBQUEsQ0FBQyxDQUFBO0lBRUYsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFBO0FBQzNCLENBQUMsQ0FBQSJ9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLmNsaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL25wbWRvY2tlci5jbGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLCtDQUE4QztBQUc5QyxVQUFVO0FBQ1YsbURBQWtEO0FBQ2xELG1EQUFrRDtBQUVsRCxJQUFJLFlBQVksR0FBRyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUE7QUFFdkMsUUFBQSxHQUFHLEdBQUc7SUFDZixZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQU8sT0FBTztRQUM3QyxJQUFJLFNBQVMsR0FBRyxNQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUU7YUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN6QixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtRQUN6RCxDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyw0Q0FBNEMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7WUFDekYsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNqQixDQUFDO0lBQ0gsQ0FBQyxDQUFBLENBQUMsQ0FBQTtJQUVGLFlBQVksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQU8sT0FBTztRQUN0RCxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUE7UUFDakUsSUFBSSxTQUFTLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDeEMsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDNUQsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ2pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQSxDQUFDLENBQUE7SUFFRixZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFPLE9BQU87UUFDbEQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFDdkQsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDaEIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxDQUFDLENBQUE7WUFDdEUsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1lBRTVELE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFBO1lBQzVELE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQTtZQUU3RCxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtZQUNoRCxNQUFNLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUE7WUFFaEYsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUE7WUFDMUQsTUFBTSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFBO1lBRWxFLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFBO1lBQ3JELE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsMERBQTBELENBQUMsQ0FBQTtRQUMzRixDQUFDO1FBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUE7SUFDakUsQ0FBQyxDQUFBLENBQUMsQ0FBQTtJQUVGLFlBQVksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQU8sT0FBTztRQUN0RCxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO1FBQzFDLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsa0VBQWtFLENBQUMsQ0FBQTtJQUNuRyxDQUFDLENBQUEsQ0FBQyxDQUFBO0lBRUYsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFBO0FBQzNCLENBQUMsQ0FBQSJ9
|
6
dist/npmdocker.config.js
vendored
6
dist/npmdocker.config.js
vendored
@ -25,8 +25,8 @@ let getQenvKeyValueObject = () => __awaiter(this, void 0, void 0, function* () {
|
|||||||
let buildConfig = (qenvKeyValueObjectArrayArg) => __awaiter(this, void 0, void 0, function* () {
|
let buildConfig = (qenvKeyValueObjectArrayArg) => __awaiter(this, void 0, void 0, function* () {
|
||||||
let npmextra = new plugins.npmextra.Npmextra(paths.cwd);
|
let npmextra = new plugins.npmextra.Npmextra(paths.cwd);
|
||||||
let config = npmextra.dataFor('npmdocker', {
|
let config = npmextra.dataFor('npmdocker', {
|
||||||
baseImage: 'hosttoday/ht-docker-node:npmts',
|
baseImage: 'hosttoday/ht-docker-node:npmci',
|
||||||
command: 'npm test',
|
command: 'npmci test stable',
|
||||||
dockerSock: false,
|
dockerSock: false,
|
||||||
keyValueObjectArray: qenvKeyValueObjectArrayArg
|
keyValueObjectArray: qenvKeyValueObjectArrayArg
|
||||||
});
|
});
|
||||||
@ -36,4 +36,4 @@ exports.run = () => __awaiter(this, void 0, void 0, function* () {
|
|||||||
let config = yield getQenvKeyValueObject().then(buildConfig);
|
let config = yield getQenvKeyValueObject().then(buildConfig);
|
||||||
return config;
|
return config;
|
||||||
});
|
});
|
||||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL25wbWRvY2tlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLCtDQUE4QztBQUM5QywyQ0FBMEM7QUFXekMsQ0FBQztBQUVGLElBQUkscUJBQXFCLEdBQUc7SUFDMUIsSUFBSSx1QkFBMEMsQ0FBQTtJQUM5QyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRix1QkFBdUIsR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUMsbUJBQW1CLENBQUE7SUFDM0YsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ04sdUJBQXVCLEdBQUcsRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFBQSxDQUFDO0lBQ0YsTUFBTSxDQUFDLHVCQUF1QixDQUFBO0FBQ2hDLENBQUMsQ0FBQSxDQUFBO0FBRUQsSUFBSSxXQUFXLEdBQUcsQ0FBTywwQkFBNkM7SUFDcEUsSUFBSSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdkQsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FDM0IsV0FBVyxFQUNYO1FBQ0UsU0FBUyxFQUFFLGdDQUFnQztRQUMzQyxPQUFPLEVBQUUsVUFBVTtRQUNuQixVQUFVLEVBQUUsS0FBSztRQUNqQixtQkFBbUIsRUFBRSwwQkFBMEI7S0FDaEQsQ0FDRixDQUFBO0lBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQSxDQUFBO0FBRVUsUUFBQSxHQUFHLEdBQUc7SUFDZixJQUFJLE1BQU0sR0FBRyxNQUFNLHFCQUFxQixFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQzVELE1BQU0sQ0FBQyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUEsQ0FBQSJ9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL25wbWRvY2tlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLCtDQUE4QztBQUM5QywyQ0FBMEM7QUFXekMsQ0FBQztBQUVGLElBQUkscUJBQXFCLEdBQUc7SUFDMUIsSUFBSSx1QkFBMEMsQ0FBQTtJQUM5QyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRix1QkFBdUIsR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUMsbUJBQW1CLENBQUE7SUFDM0YsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ04sdUJBQXVCLEdBQUcsRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFBQSxDQUFDO0lBQ0YsTUFBTSxDQUFDLHVCQUF1QixDQUFBO0FBQ2hDLENBQUMsQ0FBQSxDQUFBO0FBRUQsSUFBSSxXQUFXLEdBQUcsQ0FBTywwQkFBNkM7SUFDcEUsSUFBSSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdkQsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FDM0IsV0FBVyxFQUNYO1FBQ0UsU0FBUyxFQUFFLGdDQUFnQztRQUMzQyxPQUFPLEVBQUUsbUJBQW1CO1FBQzVCLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLG1CQUFtQixFQUFFLDBCQUEwQjtLQUNoRCxDQUNGLENBQUE7SUFDRCxNQUFNLENBQUMsTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFBLENBQUE7QUFFVSxRQUFBLEdBQUcsR0FBRztJQUNmLElBQUksTUFBTSxHQUFHLE1BQU0scUJBQXFCLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDNUQsTUFBTSxDQUFDLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQSxDQUFBIn0=
|
14
dist/npmdocker.docker.js
vendored
14
dist/npmdocker.docker.js
vendored
File diff suppressed because one or more lines are too long
14
dist/npmdocker.snippets.js
vendored
14
dist/npmdocker.snippets.js
vendored
@ -2,21 +2,13 @@
|
|||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
const plugins = require("./npmdocker.plugins");
|
const plugins = require("./npmdocker.plugins");
|
||||||
exports.dockerfileSnippet = (optionsArg) => {
|
exports.dockerfileSnippet = (optionsArg) => {
|
||||||
let commandArray = optionsArg.command.split(/\s/);
|
|
||||||
let commandString = "";
|
|
||||||
for (let stringItem of commandArray) {
|
|
||||||
if (!(commandString == "")) {
|
|
||||||
commandString = commandString + ",";
|
|
||||||
}
|
|
||||||
commandString = commandString + '"' + stringItem + '"';
|
|
||||||
}
|
|
||||||
;
|
|
||||||
return plugins.smartstring.indent.normalize(`
|
return plugins.smartstring.indent.normalize(`
|
||||||
FROM ${optionsArg.baseImage}
|
FROM ${optionsArg.baseImage}
|
||||||
|
RUN yarn global add npmdocker
|
||||||
COPY ./buildContextDir /workspace
|
COPY ./buildContextDir /workspace
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
ENV CI=true
|
ENV CI=true
|
||||||
CMD [${commandString}];
|
CMD ["npmdocker","runinside"];
|
||||||
`);
|
`);
|
||||||
};
|
};
|
||||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLnNuaXBwZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvbnBtZG9ja2VyLnNuaXBwZXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0NBQStDO0FBT3BDLFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxVQUE2QjtJQUN6RCxJQUFJLFlBQVksR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxJQUFJLGFBQWEsR0FBVSxFQUFFLENBQUM7SUFDOUIsR0FBRyxDQUFBLENBQUMsSUFBSSxVQUFVLElBQUksWUFBWSxDQUFDLENBQUEsQ0FBQztRQUNoQyxFQUFFLENBQUEsQ0FBQyxDQUFDLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUEsQ0FBQztZQUN2QixhQUFhLEdBQUcsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsYUFBYSxHQUFHLGFBQWEsR0FBRyxHQUFHLEdBQUcsVUFBVSxHQUFHLEdBQUcsQ0FBQztJQUMzRCxDQUFDO0lBQUEsQ0FBQztJQUNGLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7ZUFDakMsVUFBVSxDQUFDLFNBQVM7Ozs7ZUFJcEIsYUFBYTtLQUN2QixDQUFDLENBQUM7QUFDUCxDQUFDLENBQUEifQ==
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtZG9ja2VyLnNuaXBwZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvbnBtZG9ja2VyLnNuaXBwZXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0NBQStDO0FBT3BDLFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxVQUE4QjtJQUM1RCxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO2VBQy9CLFVBQVUsQ0FBQyxTQUFTOzs7Ozs7S0FNOUIsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFBIn0=
|
1
docs/index.md
Normal file
1
docs/index.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
Docs for npmpage coming soon.
|
@ -3,5 +3,10 @@
|
|||||||
"mode":"default",
|
"mode":"default",
|
||||||
"cli":true,
|
"cli":true,
|
||||||
"dockerSock":true
|
"dockerSock":true
|
||||||
|
},
|
||||||
|
"npmci": {
|
||||||
|
"globalNpmTools": [
|
||||||
|
"npmts"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "npmdocker",
|
"name": "npmdocker",
|
||||||
"version": "1.2.5",
|
"version": "1.2.10",
|
||||||
"description": "develop npm modules cross platform with docker",
|
"description": "develop npm modules cross platform with docker",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"typings": "dist/index.d.ts",
|
"typings": "dist/index.d.ts",
|
||||||
|
@ -14,11 +14,22 @@ export let run = () => {
|
|||||||
if (configArg.exitCode === 0) {
|
if (configArg.exitCode === 0) {
|
||||||
plugins.beautylog.success('container ended all right!')
|
plugins.beautylog.success('container ended all right!')
|
||||||
} else {
|
} else {
|
||||||
plugins.beautylog.error('container ended with error!')
|
plugins.beautylog.error(`container ended with error! Exit Code is ${configArg.exitCode}`)
|
||||||
process.exit(1)
|
process.exit(1)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
npmdockerCli.addCommand('runinside').then(async (argvArg) => {
|
||||||
|
plugins.beautylog.ok('Allright. We are now in Docker!')
|
||||||
|
plugins.beautylog.log('now trying to run your specified command')
|
||||||
|
let configArg = await ConfigModule.run()
|
||||||
|
await plugins.smartshell.exec(configArg.command).then(response => {
|
||||||
|
if (response.exitCode !== 0) {
|
||||||
|
process.exit(1)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
npmdockerCli.addCommand('clean').then(async (argvArg) => {
|
npmdockerCli.addCommand('clean').then(async (argvArg) => {
|
||||||
plugins.beautylog.ora.start()
|
plugins.beautylog.ora.start()
|
||||||
plugins.beautylog.ora.text('cleaning up docker env...')
|
plugins.beautylog.ora.text('cleaning up docker env...')
|
||||||
|
@ -27,8 +27,8 @@ let buildConfig = async (qenvKeyValueObjectArrayArg: IKeyValueObject[]) => {
|
|||||||
let config = npmextra.dataFor<IConfig>(
|
let config = npmextra.dataFor<IConfig>(
|
||||||
'npmdocker',
|
'npmdocker',
|
||||||
{
|
{
|
||||||
baseImage: 'hosttoday/ht-docker-node:npmts',
|
baseImage: 'hosttoday/ht-docker-node:npmci',
|
||||||
command: 'npm test',
|
command: 'npmci test stable',
|
||||||
dockerSock: false,
|
dockerSock: false,
|
||||||
keyValueObjectArray: qenvKeyValueObjectArrayArg
|
keyValueObjectArray: qenvKeyValueObjectArrayArg
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,11 @@ let buildDockerImage = async () => {
|
|||||||
}
|
}
|
||||||
await plugins.smartshell.execSilent(
|
await plugins.smartshell.execSilent(
|
||||||
`docker build -f ${paths.dockerfile} -t ${dockerData.imageTag} ${paths.assets}`
|
`docker build -f ${paths.dockerfile} -t ${dockerData.imageTag} ${paths.assets}`
|
||||||
).then(async () => {
|
).then(async (response) => {
|
||||||
|
if (response.exitCode !== 0) {
|
||||||
|
console.log(response.stdout)
|
||||||
|
process.exit(1)
|
||||||
|
}
|
||||||
plugins.beautylog.ok('Dockerimage built!')
|
plugins.beautylog.ok('Dockerimage built!')
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@ -119,7 +123,11 @@ let deleteDockerContainer = async () => {
|
|||||||
* cleans up deletes the test image
|
* cleans up deletes the test image
|
||||||
*/
|
*/
|
||||||
let deleteDockerImage = async () => {
|
let deleteDockerImage = async () => {
|
||||||
await plugins.smartshell.exec(`docker rmi ${dockerData.imageTag}`)
|
await plugins.smartshell.execSilent(`docker rmi ${dockerData.imageTag}`).then(async (response) => {
|
||||||
|
if (response.exitCode !== 0) {
|
||||||
|
console.log(response.stdout)
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -162,4 +170,4 @@ export let run = async (configArg: IConfig): Promise<IConfig> => {
|
|||||||
.then(postClean)
|
.then(postClean)
|
||||||
.catch(err => { console.log(err) })
|
.catch(err => { console.log(err) })
|
||||||
return config
|
return config
|
||||||
}
|
}
|
||||||
|
@ -1,24 +1,17 @@
|
|||||||
import * as plugins from "./npmdocker.plugins";
|
import * as plugins from "./npmdocker.plugins";
|
||||||
|
|
||||||
export interface IDockerfileSnippet {
|
export interface IDockerfileSnippet {
|
||||||
baseImage:string;
|
baseImage: string;
|
||||||
command:string;
|
command: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export let dockerfileSnippet = (optionsArg:IDockerfileSnippet):string => {
|
export let dockerfileSnippet = (optionsArg: IDockerfileSnippet): string => {
|
||||||
let commandArray = optionsArg.command.split(/\s/);
|
return plugins.smartstring.indent.normalize(`
|
||||||
let commandString:string = "";
|
|
||||||
for(let stringItem of commandArray){
|
|
||||||
if(!(commandString == "")){
|
|
||||||
commandString = commandString + ",";
|
|
||||||
}
|
|
||||||
commandString = commandString + '"' + stringItem + '"';
|
|
||||||
};
|
|
||||||
return plugins.smartstring.indent.normalize(`
|
|
||||||
FROM ${optionsArg.baseImage}
|
FROM ${optionsArg.baseImage}
|
||||||
|
RUN yarn global add npmdocker
|
||||||
COPY ./buildContextDir /workspace
|
COPY ./buildContextDir /workspace
|
||||||
WORKDIR /workspace
|
WORKDIR /workspace
|
||||||
ENV CI=true
|
ENV CI=true
|
||||||
CMD [${commandString}];
|
CMD ["npmdocker","runinside"];
|
||||||
`);
|
`)
|
||||||
}
|
}
|
Reference in New Issue
Block a user