1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = applyPlan;
|
7 |
|
8 | var _cccfDockerInstructions = require('cccf-docker-instructions');
|
9 |
|
10 | var _cccfDockerInstructions2 = _interopRequireDefault(_cccfDockerInstructions);
|
11 |
|
12 | var _clone = require('clone');
|
13 |
|
14 | var _clone2 = _interopRequireDefault(_clone);
|
15 |
|
16 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17 |
|
18 | function removeOutputFields(s) {
|
19 | var service = (0, _clone2.default)(s);
|
20 | delete service.placement;
|
21 | delete service.driver;
|
22 | service.host = 'tcp://' + service.host.ip + ':4243';
|
23 | service.memory = service.memory + 'b';
|
24 | service['cpu-shares'] = service.cpu;
|
25 | delete service.cpu;
|
26 | return service;
|
27 | }
|
28 |
|
29 | function applyPlan(plan) {
|
30 |
|
31 | var add_cmds = _cccfDockerInstructions2.default.run(plan.add.map(removeOutputFields));
|
32 | var stop_cmds = _cccfDockerInstructions2.default.stop(plan.remove.map(removeOutputFields));
|
33 | var rm_cmds = _cccfDockerInstructions2.default.rm(plan.remove.map(removeOutputFields));
|
34 |
|
35 |
|
36 |
|
37 |
|
38 |
|
39 | return stop_cmds.concat(rm_cmds, add_cmds).join('\n');
|
40 | } |
\ | No newline at end of file |