Skip to content

Commit c668699

Browse files
committed
add changes for sidecar
1 parent 452daf7 commit c668699

File tree

7 files changed

+31
-30
lines changed

7 files changed

+31
-30
lines changed

lib/DeploymentProvider/DeploymentProviderFactory.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@ const BaseWebAppDeploymentProvider_1 = require("./Providers/BaseWebAppDeployment
66
const WebAppContainerDeployment_1 = require("./Providers/WebAppContainerDeployment");
77
const WebAppDeploymentProvider_1 = require("./Providers/WebAppDeploymentProvider");
88
const PublishProfileWebAppContainerDeploymentProvider_1 = require("./Providers/PublishProfileWebAppContainerDeploymentProvider");
9+
const PublishProfileSiteContainersWebAppDeploymentProvider_1 = require("./Providers/PublishProfileSiteContainersWebAppDeploymentProvider");
910
class DeploymentProviderFactory {
1011
static getDeploymentProvider(type) {
1112
if (type === BaseWebAppDeploymentProvider_1.DEPLOYMENT_PROVIDER_TYPES.PUBLISHPROFILE) {
1213
if (!!actionparameters_1.ActionParameters.getActionParams().sidecarConfig) {
13-
return new PublishProfileWebAppContainerDeploymentProvider_1.PublishProfileWebAppContainerDeploymentProvider(type);
14+
return new PublishProfileSiteContainersWebAppDeploymentProvider_1.PublishProfileSiteContainersWebAppDeploymentProvider(type);
1415
}
1516
else if (!!actionparameters_1.ActionParameters.getActionParams().images) {
1617
return new PublishProfileWebAppContainerDeploymentProvider_1.PublishProfileWebAppContainerDeploymentProvider(type);

lib/DeploymentProvider/Providers/PublishProfileSiteContainersWebAppDeploymentProvider.js

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
1111
Object.defineProperty(exports, "__esModule", { value: true });
1212
exports.PublishProfileSiteContainersWebAppDeploymentProvider = void 0;
1313
const BaseWebAppDeploymentProvider_1 = require("./BaseWebAppDeploymentProvider");
14-
const ContainerDeploymentUtility_1 = require("azure-actions-appservice-rest/Utilities/ContainerDeploymentUtility");
14+
const SiteContainerDeploymentUtility_1 = require("azure-actions-appservice-rest/Utilities/SiteContainerDeploymentUtility");
1515
class PublishProfileSiteContainersWebAppDeploymentProvider extends BaseWebAppDeploymentProvider_1.BaseWebAppDeploymentProvider {
1616
DeployWebAppStep() {
1717
return __awaiter(this, void 0, void 0, function* () {
18-
let containerDeploymentUtility = new ContainerDeploymentUtility_1.ContainerDeploymentUtility(this.appService);
19-
let images = this.actionParams.images;
20-
let configFile = this.actionParams.multiContainerConfigFile;
21-
let isLinux = this.actionParams.isLinux;
22-
let isMultiContainer = this.actionParams.isMultiContainer;
23-
let startupCommand = this.actionParams.startupCommand;
24-
yield containerDeploymentUtility.deployWebAppImage(images, configFile, isLinux, isMultiContainer, startupCommand);
18+
let siteContainerDeploymentUtility = new SiteContainerDeploymentUtility_1.SiteContainerDeploymentUtility(this.appService);
19+
let sidecarContainers = this.actionParams.sidecarConfig;
20+
yield siteContainerDeploymentUtility.updateSiteContainers(sidecarContainers);
2521
});
2622
}
2723
}

lib/actionparameters.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@ exports.appKindMap = new Map([
5353
['app,linux', WebAppKind.SiteContainers],
5454
['api', WebAppKind.Windows],
5555
]);
56+
// export interface SidecarContainer {
57+
// name: string;
58+
// image: string;
59+
// targetPort: number;
60+
// isMain: boolean;
61+
// }
5662
class ActionParameters {
5763
constructor(endpoint) {
5864
this._publishProfileContent = core.getInput('publish-profile');

src/ActionInputValidator/Validations.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import * as core from '@actions/core';
33
import { Package, exist } from "azure-actions-utility/packageUtility";
44
import { PublishProfile, ScmCredentials } from "../Utilities/PublishProfile";
55
import RuntimeConstants from '../RuntimeConstants';
6-
import { ActionParameters, SidecarContainer } from "../actionparameters";
6+
import { ActionParameters } from "../actionparameters";
77

88
import fs = require('fs');
9+
import { SiteContainer } from 'azure-actions-appservice-rest/Arm/SiteContainer';
910

1011
// Error is app-name is not provided
1112
export function appNameIsRequired(appname: string) {
@@ -40,7 +41,7 @@ export function validateAppDetails() {
4041

4142
// Error if Sidecar configuration is provided
4243

43-
export function sidecarConfigNotAllowed(sitecontainers: SidecarContainer[]) {
44+
export function sidecarConfigNotAllowed(sitecontainers: SiteContainer[]) {
4445
if(!!sitecontainers) {
4546
throw new Error("Sitecontainer not valid input for this web app.");
4647
}

src/DeploymentProvider/DeploymentProviderFactory.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ import { IWebAppDeploymentProvider } from "./Providers/IWebAppDeploymentProvider
55
import { WebAppContainerDeploymentProvider } from "./Providers/WebAppContainerDeployment";
66
import { WebAppDeploymentProvider } from "./Providers/WebAppDeploymentProvider";
77
import { PublishProfileWebAppContainerDeploymentProvider } from "./Providers/PublishProfileWebAppContainerDeploymentProvider";
8+
import { PublishProfileSiteContainersWebAppDeploymentProvider } from "./Providers/PublishProfileSiteContainersWebAppDeploymentProvider";
89

910
export class DeploymentProviderFactory {
1011

1112
public static getDeploymentProvider(type: DEPLOYMENT_PROVIDER_TYPES) : IWebAppDeploymentProvider {
1213
if (type === DEPLOYMENT_PROVIDER_TYPES.PUBLISHPROFILE) {
1314
if (!!ActionParameters.getActionParams().sidecarConfig) {
14-
return new PublishProfileWebAppContainerDeploymentProvider(type);
15+
return new PublishProfileSiteContainersWebAppDeploymentProvider(type);
1516
}
1617
else
1718
if (!!ActionParameters.getActionParams().images) {
Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
11
import { BaseWebAppDeploymentProvider } from './BaseWebAppDeploymentProvider';
2-
import { ContainerDeploymentUtility } from 'azure-actions-appservice-rest/Utilities/ContainerDeploymentUtility';
2+
import { SiteContainerDeploymentUtility } from 'azure-actions-appservice-rest/Utilities/SiteContainerDeploymentUtility';
33

44
export class PublishProfileSiteContainersWebAppDeploymentProvider extends BaseWebAppDeploymentProvider {
55
public async DeployWebAppStep() {
6-
let containerDeploymentUtility: ContainerDeploymentUtility = new ContainerDeploymentUtility(this.appService);
7-
8-
let images = this.actionParams.images;
9-
let configFile = this.actionParams.multiContainerConfigFile;
10-
let isLinux = this.actionParams.isLinux;
11-
let isMultiContainer = this.actionParams.isMultiContainer;
12-
let startupCommand = this.actionParams.startupCommand;
13-
await containerDeploymentUtility.deployWebAppImage(images, configFile, isLinux, isMultiContainer, startupCommand);
6+
let siteContainerDeploymentUtility = new SiteContainerDeploymentUtility(this.appService);
7+
let sidecarContainers = this.actionParams.sidecarConfig;
8+
await siteContainerDeploymentUtility.updateSiteContainers(sidecarContainers);
149
}
1510
}

src/actionparameters.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import * as core from '@actions/core';
22
import { IAuthorizer } from "azure-actions-webclient/Authorizer/IAuthorizer";
33
import { Package } from 'azure-actions-utility/packageUtility';
4+
import { SiteContainer } from 'azure-actions-appservice-rest/Arm/SiteContainer';
45
const github = require('@actions/github');
56

67
export enum WebAppKind {
@@ -20,12 +21,12 @@ export const appKindMap = new Map([
2021
[ 'api', WebAppKind.Windows ],
2122
]);
2223

23-
export interface SidecarContainer {
24-
name: string;
25-
image: string;
26-
targetPort: number;
27-
isMain: boolean;
28-
}
24+
// export interface SidecarContainer {
25+
// name: string;
26+
// image: string;
27+
// targetPort: number;
28+
// isMain: boolean;
29+
// }
2930

3031
export class ActionParameters {
3132
private static actionparams: ActionParameters;
@@ -44,7 +45,7 @@ export class ActionParameters {
4445
private _isMultiContainer: boolean;
4546
private _isLinux: boolean;
4647
private _commitMessage: string;
47-
private _sidecarConfig: SidecarContainer[];
48+
private _sidecarConfig: SiteContainer[];
4849

4950
// Used only for OneDeploy
5051
private _type: string;
@@ -85,11 +86,11 @@ export class ActionParameters {
8586
return this.actionparams;
8687
}
8788

88-
public get sidecarConfig(): SidecarContainer[] {
89+
public get sidecarConfig(): SiteContainer[] {
8990
return this._sidecarConfig;
9091
}
9192

92-
private parseSidecarConfig(config: string): SidecarContainer[] {
93+
private parseSidecarConfig(config: string): SiteContainer[] {
9394
try {
9495
const parsedConfig = JSON.parse(config);
9596
if (!Array.isArray(parsedConfig)) {

0 commit comments

Comments
 (0)