2019-08-29 18:26:23 +00:00
|
|
|
import * as plugins from '../npmci.plugins';
|
|
|
|
|
2019-09-01 11:51:11 +00:00
|
|
|
import { Npmci } from '../npmci.classes.npmci';
|
2019-08-29 18:56:02 +00:00
|
|
|
import { logger } from '../npmci.logging';
|
|
|
|
|
2019-08-29 18:26:23 +00:00
|
|
|
/**
|
2019-08-29 18:56:02 +00:00
|
|
|
* connects to cloudly
|
2019-08-29 18:26:23 +00:00
|
|
|
*/
|
|
|
|
export class CloudlyConnector {
|
2019-08-29 18:56:02 +00:00
|
|
|
public npmciRef: Npmci;
|
|
|
|
|
|
|
|
constructor(npmciRefArg: Npmci) {
|
|
|
|
this.npmciRef = npmciRefArg;
|
|
|
|
}
|
|
|
|
|
2019-10-02 09:33:52 +00:00
|
|
|
public async announceDockerContainer(optionsArg: plugins.servezoneInterfaces.version.IVersionData) {
|
2019-08-29 18:56:02 +00:00
|
|
|
const cloudlyUrl = this.npmciRef.npmciConfig.getConfig().urlCloudly;
|
|
|
|
if (!cloudlyUrl) {
|
2019-09-01 11:51:11 +00:00
|
|
|
logger.log(
|
|
|
|
'warn',
|
|
|
|
'no cloudly url provided. Thus we cannot announce the newly built Dockerimage!'
|
|
|
|
);
|
2019-08-29 18:56:02 +00:00
|
|
|
return;
|
|
|
|
}
|
2019-09-01 11:51:11 +00:00
|
|
|
|
2019-08-29 18:56:02 +00:00
|
|
|
const typedrequest = new plugins.typedrequest.TypedRequest<
|
2019-10-02 09:33:52 +00:00
|
|
|
plugins.servezoneInterfaces.request.version.IRequest_Any_Cloudly_VersionManager_Update
|
2019-08-29 18:56:02 +00:00
|
|
|
>(`https://${cloudlyUrl}/versionmanager`, 'update');
|
|
|
|
|
2019-09-01 11:51:11 +00:00
|
|
|
const response = await typedrequest.fire(optionsArg);
|
2019-08-29 18:56:02 +00:00
|
|
|
}
|
2019-08-29 18:38:44 +00:00
|
|
|
}
|