fix(core): update

This commit is contained in:
Philipp Kunz 2019-08-16 18:21:55 +02:00
parent a28b10ac51
commit 73f8ded3fe
4 changed files with 22 additions and 4 deletions

View File

@ -64,12 +64,16 @@ tap.test('should list all services', async tools => {
}); });
tap.test('should create a service', async () => { tap.test('should create a service', async () => {
const testNetwork = await docker.DockerNetwork.createNetwork(testDockerHost, {
Name: 'testNetwork'
});
await DockerService.createService(testDockerHost, { await DockerService.createService(testDockerHost, {
Image: 'nginx', Image: 'nginx:latest',
Labels: { Labels: {
'testlabel': 'hi' 'testlabel': 'hi'
}, },
Name: 'testService' Name: 'testService',
networks: [testNetwork]
}); });
}); });

View File

@ -47,6 +47,8 @@ export class DockerImage {
} else { } else {
imageUrlObject.imageTag = imageTag; imageUrlObject.imageTag = imageTag;
} }
} else if (!imageUrlObject.imageTag) {
imageUrlObject.imageTag = 'latest';
} }
imageUrlObject.imageOriginTag = `${imageUrlObject.imageUrl}:${imageUrlObject.imageTag}`; imageUrlObject.imageOriginTag = `${imageUrlObject.imageUrl}:${imageUrlObject.imageTag}`;

View File

@ -23,10 +23,19 @@ export class DockerService {
serviceCreationDescriptor: interfaces.IServiceCreationDescriptor serviceCreationDescriptor: interfaces.IServiceCreationDescriptor
) { ) {
// lets get the image // lets get the image
DockerImage.createFromRegistry(dockerHost, { plugins.smartlog.defaultLogger.log('info', `downloading image for service ${serviceCreationDescriptor.Name}`);
const serviceImage = await DockerImage.createFromRegistry(dockerHost, {
imageUrl: serviceCreationDescriptor.Image imageUrl: serviceCreationDescriptor.Image
}); });
const networkArray: any[] = [];
for (const network of serviceCreationDescriptor.networks) {
networkArray.push({
Target: network.Name,
Aliases: []
});
}
dockerHost.request('POST', '/services/create', { dockerHost.request('POST', '/services/create', {
Name: serviceCreationDescriptor.Name, Name: serviceCreationDescriptor.Name,
TaskTemplate: { TaskTemplate: {
@ -35,7 +44,8 @@ export class DockerService {
Labels: serviceCreationDescriptor.Labels Labels: serviceCreationDescriptor.Labels
} }
}, },
Labels: serviceCreationDescriptor.Labels Labels: serviceCreationDescriptor.Labels,
Networks: networkArray
}); });
} }

View File

@ -1,7 +1,9 @@
import * as interfaces from './'; import * as interfaces from './';
import { DockerNetwork } from '../docker.classes.network';
export interface IServiceCreationDescriptor { export interface IServiceCreationDescriptor {
Name: string; Name: string;
Image: string; Image: string;
Labels: interfaces.TLabels; Labels: interfaces.TLabels;
networks: DockerNetwork[];
} }