@spinnaker/cloudfoundry 2026.2.2 → 2026.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/image/image.reader.cf.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/instance/details/CloudFoundryInstanceActions.d.ts +5 -2
- package/dist/loadBalancer/configure/CloudFoundryMapLoadBalancerModal.d.ts +5 -4
- package/dist/loadBalancer/details/CloudFoundryLoadBalancerActions.d.ts +5 -2
- package/dist/loadBalancer/loadBalancer.transformer.d.ts +2 -5
- package/dist/pipeline/stages/cloneServerGroup/CloudFoundryCloneServerGroupStageConfig.d.ts +3 -0
- package/dist/serverGroup/configure/serverGroupCommandBuilderShim.service.cf.d.ts +5 -9
- package/dist/serverGroup/configure/wizard/CreateServerGroupModal.d.ts +5 -3
- package/dist/serverGroup/details/cloudFoundryServerGroupActions.d.ts +8 -2
- package/dist/serverGroup/details/mapLoadBalancers/CloudFoundryMapLoadBalancersModal.d.ts +5 -3
- package/dist/serverGroup/details/mapLoadBalancers/CloudFoundryUnmapLoadBalancersModal.d.ts +5 -3
- package/dist/serverGroup/details/resize/CloudFoundryResizeServerGroupModal.d.ts +5 -3
- package/dist/serverGroup/details/rollback/CloudFoundryRollbackServerGroupModal.d.ts +5 -3
- package/dist/serverGroup/serverGroup.transformer.d.ts +1 -4
- package/package.json +3 -9
- package/src/image/image.reader.cf.ts +1 -1
- package/src/instance/details/CloudFoundryInstanceActions.tsx +11 -6
- package/src/instance/details/CloudFoundryInstanceDetails.tsx +0 -2
- package/src/loadBalancer/configure/CloudFoundryMapLoadBalancerModal.tsx +10 -16
- package/src/loadBalancer/details/CloudFoundryLoadBalancerActions.tsx +10 -7
- package/src/loadBalancer/details/CloudFoundryLoadBalancerDetails.tsx +1 -3
- package/src/loadBalancer/loadBalancer.transformer.ts +3 -6
- package/src/pipeline/stages/cloneServerGroup/CloudFoundryCloneServerGroupStageConfig.tsx +13 -7
- package/src/pipeline/stages/createServiceBindings/CloudFoundryCreateServiceBindingsStageConfigForm.tsx +1 -2
- package/src/pipeline/stages/createServiceBindings/cloudFoundryCreateServiceBindingsStageForm.spec.tsx +25 -21
- package/src/pipeline/stages/deleteServiceBindings/CloudFoundryDeleteServiceBindingsStageConfigForm.tsx +1 -2
- package/src/pipeline/stages/deleteServiceBindings/cloudFoundryDeleteServiceBindingsStageForm.spec.tsx +23 -18
- package/src/pipeline/stages/resizeAsg/CloudFoundryResizeAsgStageConfig.tsx +1 -2
- package/src/pipeline/stages/rollbackCluster/cloudFoundryRollbackClusterStage.module.ts +0 -1
- package/src/pipeline/stages/runJob/CloudFoundryRunJobStageConfig.tsx +1 -2
- package/src/pipeline/stages/unshareService/cloudFoundryUnshareServiceStage.module.ts +0 -1
- package/src/presentation/pipeline/stages/CloudFoundryAsgStageConfig.tsx +1 -2
- package/src/presentation/pipeline/stages/CloudFoundryLoadBalancersStageConfig.tsx +1 -2
- package/src/presentation/widgets/accountRegionClusterSelector/AccountRegionClusterSelector.spec.tsx +41 -43
- package/src/routerActions.spec.tsx +76 -0
- package/src/serverGroup/configure/serverGroupCommandBuilderShim.service.cf.ts +12 -18
- package/src/serverGroup/configure/wizard/CreateServerGroupModal.tsx +13 -7
- package/src/serverGroup/details/cfServerGroupDetailsGetter.ts +1 -1
- package/src/serverGroup/details/cloudFoundryServerGroupActions.tsx +39 -25
- package/src/serverGroup/details/mapLoadBalancers/CloudFoundryMapLoadBalancersModal.tsx +19 -6
- package/src/serverGroup/details/mapLoadBalancers/CloudFoundryUnmapLoadBalancersModal.tsx +19 -6
- package/src/serverGroup/details/resize/CloudFoundryResizeServerGroupModal.tsx +19 -6
- package/src/serverGroup/details/rollback/CloudFoundryRollbackServerGroupModal.tsx +13 -6
- package/src/serverGroup/serverGroup.transformer.ts +2 -5
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application } from '@spinnaker/core';
|
|
2
|
+
import type { Application, IRouterInjectedProps } from '@spinnaker/core';
|
|
3
3
|
import type { ICloudFoundryInstance } from '../../domain';
|
|
4
4
|
export interface ICloudFoundryInstanceActionsProps {
|
|
5
5
|
application: Application;
|
|
6
6
|
instance: ICloudFoundryInstance;
|
|
7
7
|
}
|
|
8
|
-
export declare class
|
|
8
|
+
export declare class CloudFoundryInstanceActionsComponent extends React.Component<ICloudFoundryInstanceActionsProps & IRouterInjectedProps> {
|
|
9
9
|
private terminateInstance;
|
|
10
10
|
render(): JSX.Element;
|
|
11
11
|
}
|
|
12
|
+
export declare const CloudFoundryInstanceActions: React.ForwardRefExoticComponent<Omit<ICloudFoundryInstanceActionsProps & IRouterInjectedProps, keyof IRouterInjectedProps> & {
|
|
13
|
+
children?: React.ReactNode;
|
|
14
|
+
} & React.RefAttributes<any>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, IAccount, ILoadBalancerModalProps, IModalComponentProps } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, IAccount, ILoadBalancerModalProps, IModalComponentProps } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
export interface ICreateCloudFoundryMapLoadBalancerState {
|
|
5
5
|
accounts: IAccount[];
|
|
6
6
|
regions: string[];
|
|
@@ -18,12 +18,13 @@ export interface ICloudFoundryLoadBalancerModalValues {
|
|
|
18
18
|
routes: string[];
|
|
19
19
|
}
|
|
20
20
|
export declare class CloudFoundryMapLoadBalancerModal extends React.Component<ICloudFoundryLoadBalancerModalProps, ICreateCloudFoundryMapLoadBalancerState> {
|
|
21
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
22
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
21
23
|
static defaultProps: Partial<ICloudFoundryLoadBalancerModalProps>;
|
|
22
24
|
private destroy$;
|
|
23
25
|
private formikRef;
|
|
24
|
-
private $uibModalInstanceEmulation;
|
|
25
26
|
constructor(props: ICloudFoundryLoadBalancerModalProps);
|
|
26
|
-
static show(props: ILoadBalancerModalProps): Promise<void>;
|
|
27
|
+
static show(props: ILoadBalancerModalProps, runtimeServices: DeckRuntimeServices): Promise<void>;
|
|
27
28
|
componentDidMount(): void;
|
|
28
29
|
componentWillUnmount(): void;
|
|
29
30
|
private submit;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, ILoadBalancer } from '@spinnaker/core';
|
|
2
|
+
import type { Application, ILoadBalancer, IRouterInjectedProps } from '@spinnaker/core';
|
|
3
3
|
export interface ICloudFoundryLoadBalancerActionsProps {
|
|
4
4
|
application: Application;
|
|
5
5
|
loadBalancer: ILoadBalancer;
|
|
6
6
|
}
|
|
7
|
-
export declare class
|
|
7
|
+
export declare class CloudFoundryLoadBalancerActionsComponent extends React.Component<ICloudFoundryLoadBalancerActionsProps & IRouterInjectedProps> {
|
|
8
8
|
private deleteLoadBalancer;
|
|
9
9
|
render(): JSX.Element;
|
|
10
10
|
}
|
|
11
|
+
export declare const CloudFoundryLoadBalancerActions: React.ForwardRefExoticComponent<Omit<ICloudFoundryLoadBalancerActionsProps & IRouterInjectedProps, keyof IRouterInjectedProps> & {
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
} & React.RefAttributes<any>>;
|
|
@@ -13,12 +13,9 @@ export declare class CloudFoundryLoadBalancerUpsertDescription implements ILoadB
|
|
|
13
13
|
constructor(loadBalancer: ICloudFoundryLoadBalancer);
|
|
14
14
|
}
|
|
15
15
|
export declare class CloudFoundryLoadBalancerTransformer {
|
|
16
|
-
|
|
17
|
-
static $inject: string[];
|
|
18
|
-
constructor($q: ng.IQService);
|
|
19
|
-
normalizeLoadBalancer(loadBalancer: ILoadBalancer): PromiseLike<ILoadBalancer>;
|
|
16
|
+
normalizeLoadBalancer(loadBalancer: ILoadBalancer): Promise<ILoadBalancer>;
|
|
20
17
|
constructNewCloudFoundryLoadBalancerTemplate(application: Application): ICloudFoundryLoadBalancerUpsertCommand;
|
|
21
|
-
convertLoadBalancerForEditing(loadBalancer: ICloudFoundryLoadBalancer, application: Application):
|
|
18
|
+
convertLoadBalancerForEditing(loadBalancer: ICloudFoundryLoadBalancer, application: Application): Promise<ICloudFoundryLoadBalancer>;
|
|
22
19
|
convertLoadBalancerToUpsertDescription(loadBalancer: ICloudFoundryLoadBalancer): CloudFoundryLoadBalancerUpsertDescription;
|
|
23
20
|
private buildInstanceCounts;
|
|
24
21
|
private transformInstance;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { IStageConfigProps } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext } from '@spinnaker/core';
|
|
3
4
|
export interface ICloudFoundryCloneServerGroupStageConfigState {
|
|
4
5
|
buttonText: string;
|
|
5
6
|
}
|
|
6
7
|
export declare class CloudFoundryCloneServerGroupStageConfig extends React.Component<IStageConfigProps, ICloudFoundryCloneServerGroupStageConfigState> {
|
|
8
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
9
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
7
10
|
constructor(props: IStageConfigProps);
|
|
8
11
|
private handleResult;
|
|
9
12
|
private addCluster;
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import type { IQService } from 'angular';
|
|
2
1
|
import type { Application, IPipeline, IStage } from '@spinnaker/core';
|
|
3
2
|
import type { ICloudFoundryApplication, ICloudFoundryServerGroup } from '../../domain';
|
|
4
3
|
import type { ICloudFoundryCreateServerGroupCommand, ICloudFoundryDeployConfiguration } from './serverGroupConfigurationModel.cf';
|
|
5
4
|
export declare class CloudFoundryServerGroupCommandBuilderShim {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
buildNewServerGroupCommandForPipeline(stage: IStage, pipeline: IPipeline): PromiseLike<ICloudFoundryCreateServerGroupCommand>;
|
|
12
|
-
buildServerGroupCommandFromPipeline(application: ICloudFoundryApplication, originalCluster: ICloudFoundryDeployConfiguration, stage: IStage, pipeline: IPipeline): PromiseLike<ICloudFoundryCreateServerGroupCommand>;
|
|
13
|
-
buildCloneServerGroupCommandFromPipeline(stage: IStage, pipeline: IPipeline): PromiseLike<ICloudFoundryCreateServerGroupCommand>;
|
|
5
|
+
buildNewServerGroupCommand(app: Application, defaults: any): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
6
|
+
buildServerGroupCommandFromExisting(app: Application, serverGroup: ICloudFoundryServerGroup, mode?: string): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
7
|
+
buildNewServerGroupCommandForPipeline(stage: IStage, pipeline: IPipeline): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
8
|
+
buildServerGroupCommandFromPipeline(application: ICloudFoundryApplication, originalCluster: ICloudFoundryDeployConfiguration, stage: IStage, pipeline: IPipeline): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
9
|
+
buildCloneServerGroupCommandFromPipeline(stage: IStage, pipeline: IPipeline): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
14
10
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, IModalComponentProps, IPipeline, IStage } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, IModalComponentProps, IPipeline, IStage } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
import type { ICloudFoundryServerGroup } from '../../../domain';
|
|
5
5
|
import type { ICloudFoundryCreateServerGroupCommand } from '../serverGroupConfigurationModel.cf';
|
|
6
6
|
import './serverGroup.less';
|
|
@@ -20,8 +20,10 @@ export interface ICloudFoundryCreateServerGroupState {
|
|
|
20
20
|
taskMonitor: TaskMonitor;
|
|
21
21
|
}
|
|
22
22
|
export declare class CloudFoundryCreateServerGroupModal extends React.Component<ICloudFoundryCreateServerGroupProps, ICloudFoundryCreateServerGroupState> {
|
|
23
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
24
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
23
25
|
static defaultProps: Partial<ICloudFoundryCreateServerGroupProps>;
|
|
24
|
-
static show(props: ICloudFoundryCreateServerGroupProps): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
26
|
+
static show(props: ICloudFoundryCreateServerGroupProps, runtimeServices: DeckRuntimeServices): Promise<ICloudFoundryCreateServerGroupCommand>;
|
|
25
27
|
constructor(props: ICloudFoundryCreateServerGroupProps);
|
|
26
28
|
private templateSelected;
|
|
27
29
|
private initialize;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { IServerGroupActionsProps, IServerGroupJob } from '@spinnaker/core';
|
|
2
|
+
import type { IRouterInjectedProps, IServerGroupActionsProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext } from '@spinnaker/core';
|
|
3
4
|
import type { ICloudFoundryServerGroup } from '../../domain';
|
|
4
5
|
export interface ICloudFoundryServerGroupActionsProps extends IServerGroupActionsProps {
|
|
5
6
|
serverGroup: ICloudFoundryServerGroup;
|
|
@@ -7,7 +8,9 @@ export interface ICloudFoundryServerGroupActionsProps extends IServerGroupAction
|
|
|
7
8
|
export interface ICloudFoundryServerGroupJob extends IServerGroupJob {
|
|
8
9
|
serverGroupId: string;
|
|
9
10
|
}
|
|
10
|
-
export declare class
|
|
11
|
+
export declare class CloudFoundryServerGroupActionsComponent extends React.Component<ICloudFoundryServerGroupActionsProps & IRouterInjectedProps> {
|
|
12
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
13
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
11
14
|
private isEnableLocked;
|
|
12
15
|
private isRollbackEnabled;
|
|
13
16
|
private hasDisabledInstances;
|
|
@@ -22,3 +25,6 @@ export declare class CloudFoundryServerGroupActions extends React.Component<IClo
|
|
|
22
25
|
private cloneServerGroup;
|
|
23
26
|
render(): JSX.Element;
|
|
24
27
|
}
|
|
28
|
+
export declare const CloudFoundryServerGroupActions: React.ForwardRefExoticComponent<Omit<ICloudFoundryServerGroupActionsProps & IRouterInjectedProps, keyof IRouterInjectedProps> & {
|
|
29
|
+
children?: React.ReactNode;
|
|
30
|
+
} & React.RefAttributes<any>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
import type { ICloudFoundryServerGroup } from '../../../domain';
|
|
5
5
|
export interface ICloudFoundryLoadBalancerLinksModalProps extends IModalComponentProps {
|
|
6
6
|
application: Application;
|
|
@@ -18,9 +18,11 @@ export interface ICloudFoundryLoadBalancerLinkJob extends IServerGroupJob {
|
|
|
18
18
|
serverGroupName: string;
|
|
19
19
|
}
|
|
20
20
|
export declare class CloudFoundryMapLoadBalancersModal extends React.Component<ICloudFoundryLoadBalancerLinksModalProps, ICloudFoundryLoadBalancerLinksModalState> {
|
|
21
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
22
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
21
23
|
static defaultProps: Partial<ICloudFoundryLoadBalancerLinksModalProps>;
|
|
22
24
|
private formikRef;
|
|
23
|
-
static show(props: ICloudFoundryLoadBalancerLinksModalProps): Promise<ICloudFoundryLoadBalancerLinkJob>;
|
|
25
|
+
static show(props: ICloudFoundryLoadBalancerLinksModalProps, runtimeServices: DeckRuntimeServices): Promise<ICloudFoundryLoadBalancerLinkJob>;
|
|
24
26
|
constructor(props: ICloudFoundryLoadBalancerLinksModalProps);
|
|
25
27
|
private close;
|
|
26
28
|
private submit;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
import type { ICloudFoundryServerGroup } from '../../../domain';
|
|
5
5
|
export interface ICloudFoundryLoadBalancerLinksModalProps extends IModalComponentProps {
|
|
6
6
|
application: Application;
|
|
@@ -18,9 +18,11 @@ export interface ICloudFoundryLoadBalancerLinkJob extends IServerGroupJob {
|
|
|
18
18
|
serverGroupName: string;
|
|
19
19
|
}
|
|
20
20
|
export declare class CloudFoundryUnmapLoadBalancersModal extends React.Component<ICloudFoundryLoadBalancerLinksModalProps, ICloudFoundryLoadBalancerLinksModalState> {
|
|
21
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
22
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
21
23
|
static defaultProps: Partial<ICloudFoundryLoadBalancerLinksModalProps>;
|
|
22
24
|
private formikRef;
|
|
23
|
-
static show(props: ICloudFoundryLoadBalancerLinksModalProps): Promise<ICloudFoundryLoadBalancerLinkJob>;
|
|
25
|
+
static show(props: ICloudFoundryLoadBalancerLinksModalProps, runtimeServices: DeckRuntimeServices): Promise<ICloudFoundryLoadBalancerLinkJob>;
|
|
24
26
|
constructor(props: ICloudFoundryLoadBalancerLinksModalProps);
|
|
25
27
|
private close;
|
|
26
28
|
private submit;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, ICapacity, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, ICapacity, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
import type { ICloudFoundryServerGroup } from '../../../domain';
|
|
5
5
|
export interface ICloudFoundryResizeServerGroupModalProps extends IModalComponentProps {
|
|
6
6
|
application: Application;
|
|
@@ -25,9 +25,11 @@ export interface ICloudFoundryResizeJob extends IServerGroupJob {
|
|
|
25
25
|
reason?: string;
|
|
26
26
|
}
|
|
27
27
|
export declare class CloudFoundryResizeServerGroupModal extends React.Component<ICloudFoundryResizeServerGroupModalProps, ICloudFoundryResizeServerGroupModalState> {
|
|
28
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
29
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
28
30
|
static defaultProps: Partial<ICloudFoundryResizeServerGroupModalProps>;
|
|
29
31
|
private formikRef;
|
|
30
|
-
static show(props: ICloudFoundryResizeServerGroupModalProps): Promise<ICloudFoundryResizeJob>;
|
|
32
|
+
static show(props: ICloudFoundryResizeServerGroupModalProps, runtimeServices: DeckRuntimeServices): Promise<ICloudFoundryResizeJob>;
|
|
31
33
|
constructor(props: ICloudFoundryResizeServerGroupModalProps);
|
|
32
34
|
private close;
|
|
33
35
|
private submit;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { Application, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
-
import { TaskMonitor } from '@spinnaker/core';
|
|
2
|
+
import type { Application, DeckRuntimeServices, IModalComponentProps, IServerGroupJob } from '@spinnaker/core';
|
|
3
|
+
import { DeckRuntimeContext, TaskMonitor } from '@spinnaker/core';
|
|
4
4
|
import type { ICloudFoundryServerGroup } from '../../../domain';
|
|
5
5
|
export interface ICloudFoundryRollbackServerGroupModalProps extends IModalComponentProps {
|
|
6
6
|
application: Application;
|
|
@@ -26,9 +26,11 @@ export interface ICloudFoundryRollbackJob extends IServerGroupJob {
|
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
28
|
export declare class CloudFoundryRollbackServerGroupModal extends React.Component<ICloudFoundryRollbackServerGroupModalProps, ICloudFoundryRollbackServerGroupModalState> {
|
|
29
|
+
static contextType: React.Context<import("@spinnaker/core").DeckRuntimeContextValue>;
|
|
30
|
+
context: React.ContextType<typeof DeckRuntimeContext>;
|
|
29
31
|
static defaultProps: Partial<ICloudFoundryRollbackServerGroupModalProps>;
|
|
30
32
|
private formikRef;
|
|
31
|
-
static show(props: ICloudFoundryRollbackServerGroupModalProps): Promise<ICloudFoundryRollbackJob>;
|
|
33
|
+
static show(props: ICloudFoundryRollbackServerGroupModalProps, runtimeServices: DeckRuntimeServices): Promise<ICloudFoundryRollbackJob>;
|
|
32
34
|
constructor(props: ICloudFoundryRollbackServerGroupModalProps);
|
|
33
35
|
private close;
|
|
34
36
|
private submit;
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import type { ICloudFoundryServerGroup } from '../domain';
|
|
2
2
|
export declare class CloudFoundryServerGroupTransformer {
|
|
3
|
-
private $q;
|
|
4
|
-
static $inject: string[];
|
|
5
|
-
constructor($q: ng.IQService);
|
|
6
3
|
normalizeServerGroupDetails(serverGroup: ICloudFoundryServerGroup): ICloudFoundryServerGroup;
|
|
7
|
-
normalizeServerGroup(serverGroup: ICloudFoundryServerGroup):
|
|
4
|
+
normalizeServerGroup(serverGroup: ICloudFoundryServerGroup): Promise<ICloudFoundryServerGroup>;
|
|
8
5
|
convertServerGroupCommandToDeployConfiguration(base: any): any;
|
|
9
6
|
private convertManifestEnv;
|
|
10
7
|
}
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"url": "https://github.com/spinnaker/spinnaker.git"
|
|
6
6
|
},
|
|
7
7
|
"license": "Apache-2.0",
|
|
8
|
-
"version": "2026.
|
|
8
|
+
"version": "2026.3.0",
|
|
9
9
|
"module": "dist/index.js",
|
|
10
10
|
"typings": "dist/index.d.ts",
|
|
11
11
|
"publishConfig": {
|
|
@@ -23,14 +23,10 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@spinnaker/core": "^0.29.1",
|
|
25
25
|
"@uirouter/react": "1.0.7",
|
|
26
|
-
"@uirouter/react-hybrid": "1.0.2",
|
|
27
|
-
"angular": "1.8.3",
|
|
28
|
-
"angular-ui-bootstrap": "2.5.0",
|
|
29
26
|
"enzyme": "3.11.0",
|
|
30
27
|
"formik": "1.5.1",
|
|
31
|
-
"js-yaml": "
|
|
28
|
+
"js-yaml": "4.1.1",
|
|
32
29
|
"lodash": "4.18.1",
|
|
33
|
-
"ngimport": "0.6.1",
|
|
34
30
|
"react": "16.14.0",
|
|
35
31
|
"react-bootstrap": "0.32.1",
|
|
36
32
|
"react-select": "1.2.1",
|
|
@@ -41,8 +37,6 @@
|
|
|
41
37
|
"@spinnaker/eslint-plugin": "^3.0.2",
|
|
42
38
|
"@spinnaker/mocks": "1.0.7",
|
|
43
39
|
"@spinnaker/scripts": "^0.4.0",
|
|
44
|
-
"@types/angular": "1.6.26",
|
|
45
|
-
"@types/angular-ui-bootstrap": "0.13.41",
|
|
46
40
|
"@types/enzyme": "3.10.3",
|
|
47
41
|
"@types/js-yaml": "3.5.30",
|
|
48
42
|
"@types/lodash": "4.14.64",
|
|
@@ -52,5 +46,5 @@
|
|
|
52
46
|
"shx": "0.3.3",
|
|
53
47
|
"typescript": "5.0.4"
|
|
54
48
|
},
|
|
55
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "0f7d75f5d4b42c1675e2ecc69a53f8eb73090eb9"
|
|
56
50
|
}
|
|
@@ -2,7 +2,7 @@ import { REST } from '@spinnaker/core';
|
|
|
2
2
|
import type { ICloudFoundryCluster } from '../domain';
|
|
3
3
|
|
|
4
4
|
export class CloudFoundryImageReader {
|
|
5
|
-
public static findImages(account: string):
|
|
5
|
+
public static findImages(account: string): Promise<ICloudFoundryCluster[]> {
|
|
6
6
|
return REST('/images/find')
|
|
7
7
|
.query({
|
|
8
8
|
account,
|
|
@@ -2,8 +2,9 @@ import { cloneDeep } from 'lodash';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { Dropdown } from 'react-bootstrap';
|
|
4
4
|
|
|
5
|
-
import type { Application } from '@spinnaker/core';
|
|
6
|
-
import { ConfirmationModalService, InstanceWriter,
|
|
5
|
+
import type { Application, IRouterInjectedProps } from '@spinnaker/core';
|
|
6
|
+
import { ConfirmationModalService, InstanceWriter, withRouter } from '@spinnaker/core';
|
|
7
|
+
|
|
7
8
|
import type { ICloudFoundryInstance } from '../../domain';
|
|
8
9
|
|
|
9
10
|
export interface ICloudFoundryInstanceActionsProps {
|
|
@@ -11,7 +12,9 @@ export interface ICloudFoundryInstanceActionsProps {
|
|
|
11
12
|
instance: ICloudFoundryInstance;
|
|
12
13
|
}
|
|
13
14
|
|
|
14
|
-
export class
|
|
15
|
+
export class CloudFoundryInstanceActionsComponent extends React.Component<
|
|
16
|
+
ICloudFoundryInstanceActionsProps & IRouterInjectedProps
|
|
17
|
+
> {
|
|
15
18
|
private terminateInstance = () => {
|
|
16
19
|
const { application, instance } = this.props;
|
|
17
20
|
const instanceClone = cloneDeep(instance) as any;
|
|
@@ -20,9 +23,9 @@ export class CloudFoundryInstanceActions extends React.Component<ICloudFoundryIn
|
|
|
20
23
|
const taskMonitor = {
|
|
21
24
|
application: application,
|
|
22
25
|
title: 'Terminating ' + instance.name,
|
|
23
|
-
onTaskComplete() {
|
|
24
|
-
if (
|
|
25
|
-
|
|
26
|
+
onTaskComplete: () => {
|
|
27
|
+
if (this.props.stateService.includes('**.serverGroup', { instanceId: instance.name })) {
|
|
28
|
+
this.props.stateService.go('^');
|
|
26
29
|
}
|
|
27
30
|
},
|
|
28
31
|
};
|
|
@@ -57,3 +60,5 @@ export class CloudFoundryInstanceActions extends React.Component<ICloudFoundryIn
|
|
|
57
60
|
);
|
|
58
61
|
}
|
|
59
62
|
}
|
|
63
|
+
|
|
64
|
+
export const CloudFoundryInstanceActions = withRouter(CloudFoundryInstanceActionsComponent);
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { UISref } from '@uirouter/react';
|
|
2
|
-
import { UIRouterContext } from '@uirouter/react-hybrid';
|
|
3
2
|
import { flattenDeep } from 'lodash';
|
|
4
3
|
import React from 'react';
|
|
5
4
|
|
|
@@ -34,7 +33,6 @@ interface ICloudFoundryInstanceDetailsProps {
|
|
|
34
33
|
loading: boolean;
|
|
35
34
|
}
|
|
36
35
|
|
|
37
|
-
@UIRouterContext
|
|
38
36
|
export class CloudFoundryInstanceDetails extends React.Component<
|
|
39
37
|
ICloudFoundryInstanceDetailsProps,
|
|
40
38
|
ICloudFoundryInstanceDetailsState
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import type { IDeferred } from 'angular';
|
|
2
|
-
import type { IModalServiceInstance } from 'angular-ui-bootstrap';
|
|
3
1
|
import type { Formik } from 'formik';
|
|
4
2
|
import { Form } from 'formik';
|
|
5
|
-
import { $q } from 'ngimport';
|
|
6
3
|
import React from 'react';
|
|
7
4
|
import { Modal, ModalFooter } from 'react-bootstrap';
|
|
8
5
|
import { from as observableFrom, Subject } from 'rxjs';
|
|
@@ -10,6 +7,7 @@ import { takeUntil } from 'rxjs/operators';
|
|
|
10
7
|
|
|
11
8
|
import type {
|
|
12
9
|
Application,
|
|
10
|
+
DeckRuntimeServices,
|
|
13
11
|
IAccount,
|
|
14
12
|
ILoadBalancerModalProps,
|
|
15
13
|
IModalComponentProps,
|
|
@@ -17,14 +15,15 @@ import type {
|
|
|
17
15
|
} from '@spinnaker/core';
|
|
18
16
|
import {
|
|
19
17
|
AccountService,
|
|
18
|
+
DeckRuntimeContext,
|
|
20
19
|
ModalClose,
|
|
21
20
|
noop,
|
|
22
|
-
ReactInjector,
|
|
23
21
|
ReactModal,
|
|
24
22
|
SpinFormik,
|
|
25
23
|
TaskMonitor,
|
|
26
24
|
TaskMonitorWrapper,
|
|
27
25
|
} from '@spinnaker/core';
|
|
26
|
+
|
|
28
27
|
import type { ICloudFoundryServerGroup } from '../../domain';
|
|
29
28
|
import { AccountRegionClusterSelector, Routes } from '../../presentation';
|
|
30
29
|
|
|
@@ -51,6 +50,9 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
51
50
|
ICloudFoundryLoadBalancerModalProps,
|
|
52
51
|
ICreateCloudFoundryMapLoadBalancerState
|
|
53
52
|
> {
|
|
53
|
+
public static contextType = DeckRuntimeContext;
|
|
54
|
+
public declare context: React.ContextType<typeof DeckRuntimeContext>;
|
|
55
|
+
|
|
54
56
|
public static defaultProps: Partial<ICloudFoundryLoadBalancerModalProps> = {
|
|
55
57
|
closeModal: noop,
|
|
56
58
|
dismissModal: noop,
|
|
@@ -58,19 +60,10 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
58
60
|
|
|
59
61
|
private destroy$ = new Subject();
|
|
60
62
|
private formikRef = React.createRef<Formik<ICloudFoundryLoadBalancerModalValues>>();
|
|
61
|
-
private $uibModalInstanceEmulation: IModalServiceInstance & { deferred?: IDeferred<any> };
|
|
62
63
|
|
|
63
64
|
constructor(props: ICloudFoundryLoadBalancerModalProps) {
|
|
64
65
|
super(props);
|
|
65
66
|
|
|
66
|
-
const deferred = $q.defer();
|
|
67
|
-
const promise = deferred.promise;
|
|
68
|
-
this.$uibModalInstanceEmulation = {
|
|
69
|
-
result: promise,
|
|
70
|
-
close: () => this.props.dismissModal(),
|
|
71
|
-
dismiss: () => this.props.dismissModal(),
|
|
72
|
-
} as IModalServiceInstance;
|
|
73
|
-
Object.assign(this.$uibModalInstanceEmulation, { deferred });
|
|
74
67
|
this.state = {
|
|
75
68
|
accounts: [],
|
|
76
69
|
regions: [],
|
|
@@ -84,7 +77,7 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
84
77
|
taskMonitor: new TaskMonitor({
|
|
85
78
|
application: props.application,
|
|
86
79
|
title: 'Mapping a route to your server group',
|
|
87
|
-
|
|
80
|
+
onDismiss: () => this.props.dismissModal(),
|
|
88
81
|
onTaskComplete: () => this.props.application.serverGroups.refresh(),
|
|
89
82
|
}),
|
|
90
83
|
};
|
|
@@ -93,7 +86,7 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
93
86
|
.subscribe((rawAccounts: IAccount[]) => this.setState({ accounts: rawAccounts }));
|
|
94
87
|
}
|
|
95
88
|
|
|
96
|
-
public static show(props: ILoadBalancerModalProps): Promise<void> {
|
|
89
|
+
public static show(props: ILoadBalancerModalProps, runtimeServices: DeckRuntimeServices): Promise<void> {
|
|
97
90
|
const modalProps = { dialogClassName: 'wizard-modal modal-lg' };
|
|
98
91
|
return ReactModal.show(
|
|
99
92
|
CloudFoundryMapLoadBalancerModal,
|
|
@@ -102,6 +95,7 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
102
95
|
// className: 'create-pipeline-modal-overflow-visible',
|
|
103
96
|
},
|
|
104
97
|
modalProps,
|
|
98
|
+
runtimeServices,
|
|
105
99
|
);
|
|
106
100
|
}
|
|
107
101
|
|
|
@@ -137,7 +131,7 @@ export class CloudFoundryMapLoadBalancerModal extends React.Component<
|
|
|
137
131
|
};
|
|
138
132
|
|
|
139
133
|
this.state.taskMonitor.submit(() => {
|
|
140
|
-
return
|
|
134
|
+
return this.context.services.serverGroupWriter.mapLoadBalancers(coreServerGroup, this.props.application, {
|
|
141
135
|
serverGroupName: serverGroup.name,
|
|
142
136
|
});
|
|
143
137
|
});
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
2
|
import { Dropdown } from 'react-bootstrap';
|
|
4
3
|
|
|
5
|
-
import type { Application, ILoadBalancer, ILoadBalancerDeleteCommand } from '@spinnaker/core';
|
|
6
|
-
import { ConfirmationModalService, LoadBalancerWriter,
|
|
4
|
+
import type { Application, ILoadBalancer, ILoadBalancerDeleteCommand, IRouterInjectedProps } from '@spinnaker/core';
|
|
5
|
+
import { ConfirmationModalService, LoadBalancerWriter, withRouter } from '@spinnaker/core';
|
|
7
6
|
|
|
8
7
|
export interface ICloudFoundryLoadBalancerActionsProps {
|
|
9
8
|
application: Application;
|
|
10
9
|
loadBalancer: ILoadBalancer;
|
|
11
10
|
}
|
|
12
11
|
|
|
13
|
-
export class
|
|
12
|
+
export class CloudFoundryLoadBalancerActionsComponent extends React.Component<
|
|
13
|
+
ICloudFoundryLoadBalancerActionsProps & IRouterInjectedProps
|
|
14
|
+
> {
|
|
14
15
|
private deleteLoadBalancer = () => {
|
|
15
16
|
const { application, loadBalancer } = this.props;
|
|
16
17
|
const taskMonitor = {
|
|
17
18
|
application: application,
|
|
18
19
|
title: 'Deleting ' + loadBalancer.name,
|
|
19
|
-
onTaskComplete() {
|
|
20
|
-
if (
|
|
21
|
-
|
|
20
|
+
onTaskComplete: () => {
|
|
21
|
+
if (this.props.stateService.includes('**.serverGroup', { instanceId: loadBalancer.name })) {
|
|
22
|
+
this.props.stateService.go('^');
|
|
22
23
|
}
|
|
23
24
|
},
|
|
24
25
|
};
|
|
@@ -59,3 +60,5 @@ export class CloudFoundryLoadBalancerActions extends React.Component<ICloudFound
|
|
|
59
60
|
);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
63
|
+
|
|
64
|
+
export const CloudFoundryLoadBalancerActions = withRouter(CloudFoundryLoadBalancerActionsComponent);
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { UISref } from '@uirouter/react';
|
|
2
|
-
import { UIRouterContext } from '@uirouter/react-hybrid';
|
|
3
2
|
import React from 'react';
|
|
4
3
|
|
|
5
4
|
import type { Application, LoadBalancerWriter } from '@spinnaker/core';
|
|
@@ -30,7 +29,6 @@ export interface ICloudFoundryLoadBalancerDetailsProps {
|
|
|
30
29
|
loadBalancerWriter: LoadBalancerWriter;
|
|
31
30
|
}
|
|
32
31
|
|
|
33
|
-
@UIRouterContext
|
|
34
32
|
export class CloudFoundryLoadBalancerDetails extends React.Component<
|
|
35
33
|
ICloudFoundryLoadBalancerDetailsProps,
|
|
36
34
|
ICloudFoundryLoadBalancerDetailsState
|
|
@@ -72,7 +70,7 @@ export class CloudFoundryLoadBalancerDetails extends React.Component<
|
|
|
72
70
|
this.setState({
|
|
73
71
|
refreshListenerUnsubscribe: this.props.app
|
|
74
72
|
.getDataSource('loadBalancers')
|
|
75
|
-
.onRefresh(
|
|
73
|
+
.onRefresh(() => this.extractLoadBalancer()),
|
|
76
74
|
});
|
|
77
75
|
} else {
|
|
78
76
|
this.setState({
|
|
@@ -41,10 +41,7 @@ export class CloudFoundryLoadBalancerUpsertDescription
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
export class CloudFoundryLoadBalancerTransformer {
|
|
44
|
-
public
|
|
45
|
-
constructor(private $q: ng.IQService) {}
|
|
46
|
-
|
|
47
|
-
public normalizeLoadBalancer(loadBalancer: ILoadBalancer): PromiseLike<ILoadBalancer> {
|
|
44
|
+
public normalizeLoadBalancer(loadBalancer: ILoadBalancer): Promise<ILoadBalancer> {
|
|
48
45
|
loadBalancer.provider = loadBalancer.type;
|
|
49
46
|
loadBalancer.instanceCounts = this.buildInstanceCounts(loadBalancer.serverGroups);
|
|
50
47
|
loadBalancer.instances = [];
|
|
@@ -63,7 +60,7 @@ export class CloudFoundryLoadBalancerTransformer {
|
|
|
63
60
|
|
|
64
61
|
const activeServerGroups = loadBalancer.serverGroups.filter((sg) => !sg.isDisabled);
|
|
65
62
|
loadBalancer.instances = chain(activeServerGroups).map('instances').flatten().value() as IInstance[];
|
|
66
|
-
return
|
|
63
|
+
return Promise.resolve(loadBalancer);
|
|
67
64
|
}
|
|
68
65
|
|
|
69
66
|
public constructNewCloudFoundryLoadBalancerTemplate(
|
|
@@ -87,7 +84,7 @@ export class CloudFoundryLoadBalancerTransformer {
|
|
|
87
84
|
public convertLoadBalancerForEditing(
|
|
88
85
|
loadBalancer: ICloudFoundryLoadBalancer,
|
|
89
86
|
application: Application,
|
|
90
|
-
):
|
|
87
|
+
): Promise<ICloudFoundryLoadBalancer> {
|
|
91
88
|
return application
|
|
92
89
|
.getDataSource('loadBalancers')
|
|
93
90
|
.ready()
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
import type { IStageConfigProps } from '@spinnaker/core';
|
|
4
|
-
import { StageConstants } from '@spinnaker/core';
|
|
4
|
+
import { DeckRuntimeContext, StageConstants } from '@spinnaker/core';
|
|
5
5
|
import { CloudFoundryServerGroupCommandBuilder } from '../../../serverGroup/configure';
|
|
6
6
|
import { CloudFoundryCreateServerGroupModal } from '../../../serverGroup/configure/wizard/CreateServerGroupModal';
|
|
7
7
|
|
|
@@ -13,6 +13,9 @@ export class CloudFoundryCloneServerGroupStageConfig extends React.Component<
|
|
|
13
13
|
IStageConfigProps,
|
|
14
14
|
ICloudFoundryCloneServerGroupStageConfigState
|
|
15
15
|
> {
|
|
16
|
+
public static contextType = DeckRuntimeContext;
|
|
17
|
+
public declare context: React.ContextType<typeof DeckRuntimeContext>;
|
|
18
|
+
|
|
16
19
|
constructor(props: IStageConfigProps) {
|
|
17
20
|
super(props);
|
|
18
21
|
this.props.updateStageField({
|
|
@@ -48,12 +51,15 @@ export class CloudFoundryCloneServerGroupStageConfig extends React.Component<
|
|
|
48
51
|
const { application, stage, pipeline } = this.props;
|
|
49
52
|
const title = 'Clone Cluster';
|
|
50
53
|
const command = CloudFoundryServerGroupCommandBuilder.buildCloneServerGroupCommandFromPipeline(stage, pipeline);
|
|
51
|
-
CloudFoundryCreateServerGroupModal.show(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
CloudFoundryCreateServerGroupModal.show(
|
|
55
|
+
{
|
|
56
|
+
application,
|
|
57
|
+
command,
|
|
58
|
+
isSourceConstant: false,
|
|
59
|
+
title,
|
|
60
|
+
},
|
|
61
|
+
this.context.services,
|
|
62
|
+
)
|
|
57
63
|
.then(this.handleResult)
|
|
58
64
|
.catch(() => {});
|
|
59
65
|
};
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
AccountService,
|
|
8
8
|
ArtifactTypePatterns,
|
|
9
9
|
excludeAllTypesExcept,
|
|
10
|
-
NgReact,
|
|
11
10
|
StageArtifactSelectorDelegate,
|
|
12
11
|
StageConfigField,
|
|
13
12
|
StageConstants,
|
|
13
|
+
TargetSelect,
|
|
14
14
|
TextInput,
|
|
15
15
|
} from '@spinnaker/core';
|
|
16
16
|
|
|
@@ -141,7 +141,6 @@ export class CloudFoundryCreateServiceBindingsStageConfigForm extends React.Comp
|
|
|
141
141
|
const stage = this.props.formik.values;
|
|
142
142
|
const { accounts, application } = this.state;
|
|
143
143
|
const { target } = stage;
|
|
144
|
-
const { TargetSelect } = NgReact;
|
|
145
144
|
|
|
146
145
|
return (
|
|
147
146
|
<>
|