Skip to content

Commit

Permalink
Use capav1beta2 types and functions
Browse files Browse the repository at this point in the history
  • Loading branch information
gusevda committed Sep 30, 2024
1 parent 9136117 commit 5ea7638
Show file tree
Hide file tree
Showing 23 changed files with 100 additions and 108 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import {
} from 'MAPI/types';
import { extractErrorMessage } from 'MAPI/utils';
import { GenericResponseError } from 'model/clients/GenericResponseError';
import * as capav1beta1 from 'model/services/mapi/capav1beta1';
import * as capav1beta2 from 'model/services/mapi/capav1beta2';
import * as capgv1beta1 from 'model/services/mapi/capgv1beta1';
import * as capzv1beta1 from 'model/services/mapi/capzv1beta1';
Expand Down Expand Up @@ -117,11 +116,11 @@ const ClusterDetailWidgetProvider: React.FC<
>
{isLoading ? (
<ClusterDetailWidgetProviderLoader />
) : kind === capav1beta1.AWSCluster ? (
) : kind === capav1beta2.AWSCluster ? (
<ClusterDetailWidgetProviderAWS
providerCluster={providerCluster as capav1beta1.IAWSCluster}
providerCluster={providerCluster as capav1beta2.IAWSCluster}
providerCredential={
providerCredential as capav1beta1.IAWSClusterRoleIdentity
providerCredential as capav1beta2.IAWSClusterRoleIdentity
}
/>
) : kind === capav1beta2.AWSManagedCluster ? (
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Text } from 'grommet';
import { normalizeColor } from 'grommet/utils';
import { getProviderClusterLocation } from 'MAPI/utils';
import * as capav1beta1 from 'model/services/mapi/capav1beta1';
import * as capav1beta2 from 'model/services/mapi/capav1beta2';
import * as infrav1alpha3 from 'model/services/mapi/infrastructurev1alpha3';
import * as legacyCredentials from 'model/services/mapi/legacy/credentials';
import React from 'react';
Expand All @@ -20,9 +20,9 @@ const StyledLink = styled.a`
`;

interface IClusterDetailWidgetProviderAWSProps {
providerCluster: capav1beta1.IAWSCluster | infrav1alpha3.IAWSCluster;
providerCluster: capav1beta2.IAWSCluster | infrav1alpha3.IAWSCluster;
providerCredential?:
| capav1beta1.IAWSClusterRoleIdentity
| capav1beta2.IAWSClusterRoleIdentity
| legacyCredentials.ICredential;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import { Providers, StatusCodes } from 'model/constants';
import nock from 'nock';
import React from 'react';
import { SWRConfig } from 'swr';
import * as capa1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capg1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
import * as capzv1beta1Mocks from 'test/mockHttpCalls/capzv1beta1';
import * as infrav1alpha3Mocks from 'test/mockHttpCalls/infrastructurev1alpha3';
Expand Down Expand Up @@ -311,7 +311,7 @@ describe('ClusterDetailWidgetControlPlaneNodes on GCP', () => {
)
.reply(
StatusCodes.Ok,
capg1beta1Mocks.randomClusterGCP1GCPMachineTemplateListCP
capgv1beta1Mocks.randomClusterGCP1GCPMachineTemplateListCP
);

render(
Expand All @@ -337,7 +337,7 @@ describe('ClusterDetailWidgetControlPlaneNodes on GCP', () => {
)
.reply(
StatusCodes.Ok,
capg1beta1Mocks.randomClusterGCP1GCPMachineTemplateListCP
capgv1beta1Mocks.randomClusterGCP1GCPMachineTemplateListCP
);

render(
Expand Down Expand Up @@ -379,7 +379,7 @@ describe('ClusterDetailWidgetControlPlaneNodes on CAPA', () => {
)
.reply(
StatusCodes.Ok,
capa1beta1Mocks.randomClusterCAPA1AWSMachineTemplateList
capav1beta2Mocks.randomClusterCAPA1AWSMachineTemplateList
);

render(
Expand All @@ -405,7 +405,7 @@ describe('ClusterDetailWidgetControlPlaneNodes on CAPA', () => {
)
.reply(
StatusCodes.Ok,
capa1beta1Mocks.randomClusterCAPA1AWSMachineTemplateList
capav1beta2Mocks.randomClusterCAPA1AWSMachineTemplateList
);

render(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import nock from 'nock';
import React from 'react';
import { useParams } from 'react-router';
import { SWRConfig } from 'swr';
import * as capav1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
import * as capzv1beta1Mocks from 'test/mockHttpCalls/capzv1beta1';
Expand Down Expand Up @@ -166,7 +166,7 @@ async function setupGCP() {
async function setupCAPA() {
const utils = setup(
capiv1beta1Mocks.randomClusterCAPA1,
capav1beta1Mocks.randomAWSCluster1
capav1beta2Mocks.randomAWSCluster1
);

if (screen.queryAllByText('Loading...').length > 0) {
Expand Down Expand Up @@ -449,7 +449,7 @@ describe('ClusterDetailWidgetProvider when user can get AWSClusterRoleIdentity o
.get(
'/apis/infrastructure.cluster.x-k8s.io/v1beta1/awsclusterroleidentities/default/'
)
.reply(StatusCodes.Ok, capav1beta1Mocks.defaultAWSClusterRoleIdentity);
.reply(StatusCodes.Ok, capav1beta2Mocks.defaultAWSClusterRoleIdentity);
await setupCAPA();
const providerInfo = screen.getByTestId('provider-info');
expect(within(providerInfo).getByText('AWS region')).toBeInTheDocument();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { Providers, StatusCodes } from 'model/constants';
import nock from 'nock';
import React from 'react';
import { SWRConfig } from 'swr';
import * as capav1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
import * as capzv1beta1Mocks from 'test/mockHttpCalls/capzv1beta1';
Expand Down Expand Up @@ -166,7 +166,7 @@ describe('ClusterDetailWidgetVersions on CAPA', () => {
render(
getComponent({
cluster: capiv1beta1Mocks.randomClusterCAPA1,
providerCluster: capav1beta1Mocks.randomAWSCluster1,
providerCluster: capav1beta2Mocks.randomAWSCluster1,
})
);

Expand All @@ -179,7 +179,7 @@ describe('ClusterDetailWidgetVersions on CAPA', () => {
render(
getComponent({
cluster: capiv1beta1Mocks.randomClusterCAPA1,
providerCluster: capav1beta1Mocks.randomAWSCluster1,
providerCluster: capav1beta2Mocks.randomAWSCluster1,
})
);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import nock from 'nock';
import React from 'react';
import { useRouteMatch } from 'react-router';
import { SWRConfig } from 'swr';
import * as capav1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
import * as capzv1beta1Mocks from 'test/mockHttpCalls/capzv1beta1';
Expand Down Expand Up @@ -447,7 +447,7 @@ describe('ClusterDetail', () => {
],
},
};
const providerCluster = capav1beta1Mocks.randomAWSCluster1;
const providerCluster = capav1beta2Mocks.randomAWSCluster1;

(useRouteMatch as jest.Mock).mockReturnValue(
getRouteMatch(cluster.metadata.name)
Expand Down
20 changes: 9 additions & 11 deletions src/components/MAPI/clusters/ClusterDetail/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ import {
import { GenericResponseError } from 'model/clients/GenericResponseError';
import { IHttpClient } from 'model/clients/HttpClient';
import { Constants, Providers } from 'model/constants';
import * as capav1beta1 from 'model/services/mapi/capav1beta1';
import * as capav1beta2 from 'model/services/mapi/capav1beta2';
import * as capgv1beta1 from 'model/services/mapi/capgv1beta1';
import * as capiv1beta1 from 'model/services/mapi/capiv1beta1';
Expand Down Expand Up @@ -334,16 +333,16 @@ export async function fetchProviderCredential(
const apiGroup = getApiGroupFromApiVersion(apiVersion);

switch (true) {
case kind === capav1beta1.AWSCluster &&
apiGroup === capav1beta1.ApiGroup: {
const identityRef = (providerCluster as capav1beta1.IAWSCluster).spec
case kind === capav1beta2.AWSCluster &&
apiGroup === capav1beta2.ApiGroup: {
const identityRef = (providerCluster as capav1beta2.IAWSCluster).spec
?.identityRef;

if (identityRef?.kind !== 'AWSClusterRoleIdentity') {
throw new Error('Unsupported AWS cluster role identity reference.');
}

return capav1beta1.getAWSClusterRoleIdentity(
return capav1beta2.getAWSClusterRoleIdentity(
httpClientFactory(),
auth,
identityRef.name
Expand Down Expand Up @@ -427,15 +426,15 @@ export function fetchProviderCredentialKey(
const apiGroup = getApiGroupFromApiVersion(apiVersion);

switch (true) {
case kind === capav1beta1.AWSCluster && apiGroup === capav1beta1.ApiGroup: {
const identityRef = (providerCluster as capav1beta1.IAWSCluster).spec
case kind === capav1beta2.AWSCluster && apiGroup === capav1beta2.ApiGroup: {
const identityRef = (providerCluster as capav1beta2.IAWSCluster).spec
?.identityRef;

if (identityRef?.kind !== 'AWSClusterRoleIdentity') {
return null;
}

return capav1beta1.getAWSClusterRoleIdentityKey(identityRef.name);
return capav1beta2.getAWSClusterRoleIdentityKey(identityRef.name);
}

case kind === capav1beta2.AWSManagedCluster &&
Expand Down Expand Up @@ -492,17 +491,16 @@ function getMainCredential(credentials: legacyCredentials.ICredential[]) {
export function getAWSCredentialAccountID(
credential?:
| legacyCredentials.ICredential
| capav1beta1.IAWSClusterRoleIdentity
| capav1beta2.IAWSClusterRoleIdentity
) {
if (!credential) return '';

switch (true) {
case credential.hasOwnProperty('kind') &&
(credential as capav1beta1.IAWSClusterRoleIdentity).kind ===
(credential as capav1beta2.IAWSClusterRoleIdentity).kind ===
'AWSClusterRoleIdentity':
return extractIDFromARN(
(credential as capav1beta1.IAWSClusterRoleIdentity).spec?.roleARN
(credential as capav1beta2.IAWSClusterRoleIdentity).spec?.roleARN
);
case credential.hasOwnProperty('awsOperatorRole'):
return (credential as legacyCredentials.ICredential).awsOperatorRole;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import nock from 'nock';
import React from 'react';
import { SWRConfig } from 'swr';
import { withMarkup } from 'test/assertUtils';
import * as capav1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiexpv1alpha3Mocks from 'test/mockHttpCalls/capiv1alpha3/exp';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
Expand Down Expand Up @@ -745,7 +745,7 @@ describe('ClusterListItem on CAPA', () => {
render(
getComponent({
cluster: capiv1beta1Mocks.randomClusterCAPA1,
providerCluster: capav1beta1Mocks.randomAWSCluster1,
providerCluster: capav1beta2Mocks.randomAWSCluster1,
})
);

Expand Down Expand Up @@ -774,7 +774,7 @@ describe('ClusterListItem on CAPA', () => {
],
},
},
providerCluster: capav1beta1Mocks.randomAWSCluster1,
providerCluster: capav1beta2Mocks.randomAWSCluster1,
})
);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import nock from 'nock';
import * as React from 'react';
import { SWRConfig } from 'swr';
import * as authorizationv1Mocks from 'test/mockHttpCalls/authorizationv1';
import * as capav1beta1Mocks from 'test/mockHttpCalls/capav1beta1';
import * as capav1beta2Mocks from 'test/mockHttpCalls/capav1beta2';
import * as capgv1beta1Mocks from 'test/mockHttpCalls/capgv1beta1';
import * as capiexpv1alpha3Mocks from 'test/mockHttpCalls/capiv1alpha3/exp';
import * as capiv1beta1Mocks from 'test/mockHttpCalls/capiv1beta1';
Expand Down Expand Up @@ -966,13 +966,13 @@ describe('OrganizationDetailGeneral on CAPA', () => {
.get(
`/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/org-org1/awsclusters/${capiv1beta1Mocks.randomClusterListCAPA.items[0].metadata.name}/`
)
.reply(StatusCodes.Ok, capav1beta1Mocks.randomAWSCluster1);
.reply(StatusCodes.Ok, capav1beta2Mocks.randomAWSCluster1);

nock(window.config.mapiEndpoint)
.get(
`/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/org-org1/awsclusters/${capiv1beta1Mocks.randomClusterListCAPA.items[1].metadata.name}/`
)
.reply(StatusCodes.Ok, capav1beta1Mocks.randomAWSCluster2);
.reply(StatusCodes.Ok, capav1beta2Mocks.randomAWSCluster2);

nock(window.config.mapiEndpoint)
.get(
Expand All @@ -987,7 +987,7 @@ describe('OrganizationDetailGeneral on CAPA', () => {
.get(
`/apis/infrastructure.cluster.x-k8s.io/v1beta1/namespaces/org-org1/awsmachinepools/${capiv1beta1Mocks.randomClusterCAPA1MachinePoolList.items[0].spec?.template.spec?.infrastructureRef.name}/`
)
.reply(StatusCodes.Ok, capav1beta1Mocks.randomClusterCAPA1AWSMachinePool);
.reply(StatusCodes.Ok, capav1beta2Mocks.randomClusterCAPA1AWSMachinePool);

render(
getComponent({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import {
mapNodePoolsToProviderNodePools,
} from 'MAPI/workernodes/utils';
import { GenericResponse } from 'model/clients/GenericResponse';
import * as capav1beta1 from 'model/services/mapi/capav1beta1';
import * as capav1beta2 from 'model/services/mapi/capav1beta2';
import * as capgv1beta1 from 'model/services/mapi/capgv1beta1';
import * as capiv1beta1 from 'model/services/mapi/capiv1beta1';
import * as capzv1beta1 from 'model/services/mapi/capzv1beta1';
Expand Down Expand Up @@ -152,7 +152,7 @@ function appendControlPlaneNodeStats(

for (const cpNode of controlPlaneNodes) {
switch (cpNode.kind) {
case capav1beta1.AWSMachineTemplate:
case capav1beta2.AWSMachineTemplate:
case capgv1beta1.GCPMachineTemplate:
if (cpNode.spec?.template?.spec.instanceType) {
instanceTypes.push(cpNode.spec.template.spec.instanceType);
Expand Down
15 changes: 6 additions & 9 deletions src/components/MAPI/types.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import * as capav1beta1 from 'model/services/mapi/capav1beta1';
import * as capav1beta2 from 'model/services/mapi/capav1beta2';
import * as capgv1beta1 from 'model/services/mapi/capgv1beta1';
import * as capiexpv1alpha3 from 'model/services/mapi/capiv1alpha3/exp';
Expand All @@ -12,7 +11,7 @@ import * as legacyCredentials from 'model/services/mapi/legacy/credentials';
export type ControlPlane = capiv1beta1.IKubeadmControlPlane | undefined;

export type ControlPlaneNode =
| capav1beta1.IAWSMachineTemplate
| capav1beta2.IAWSMachineTemplate
| capav1beta2.IAWSManagedControlPlane
| capgv1beta1.IGCPMachineTemplate
| capiv1beta1.IMachine
Expand All @@ -25,7 +24,7 @@ export type ControlPlaneNodeList =
| capzv1beta1.IAzureMachineList
| infrav1alpha3.IAWSControlPlaneList
| infrav1alpha3.IG8sControlPlaneList
| capav1beta1.IAWSMachineTemplateList
| capav1beta2.IAWSMachineTemplateList
| capav1beta2.IAWSManagedControlPlaneList
| capgv1beta1.IGCPMachineTemplateList
| capiv1beta1.IMachineList;
Expand All @@ -37,15 +36,15 @@ export type ClusterList = capiv1beta1.IClusterList;
export type ProviderCluster =
| capzv1beta1.IAzureCluster
| infrav1alpha3.IAWSCluster
| capav1beta1.IAWSCluster
| capav1beta2.IAWSCluster
| capav1beta2.IAWSManagedCluster
| capgv1beta1.IGCPCluster
| undefined;

export type ProviderClusterList =
| capzv1beta1.IAzureClusterList
| infrav1alpha3.IAWSClusterList
| capav1beta1.IAWSClusterList
| capav1beta2.IAWSClusterList
| capav1beta2.IAWSManagedClusterList
| capgv1beta1.IGCPClusterList;

Expand All @@ -60,7 +59,7 @@ export type NodePoolList =
| capiv1beta1.IMachinePoolList;

export type ProviderNodePool =
| capav1beta1.IAWSMachinePool
| capav1beta2.IAWSMachinePool
| capav1beta2.IAWSManagedMachinePool
| capgv1beta1.IGCPMachineTemplate
| capzv1beta1.IAzureMachineTemplate
Expand All @@ -73,20 +72,18 @@ export type ProviderNodePoolList =
| capzexpv1alpha3.IAzureMachinePoolList
| capzv1beta1.IAzureMachinePoolList
| infrav1alpha3.IAWSMachineDeploymentList
| capav1beta1.IAWSMachinePoolList
| capav1beta2.IAWSMachinePoolList
| capav1beta2.IAWSManagedMachinePoolList
| capgv1beta1.IGCPMachineTemplateList;

export type ProviderCredential =
| legacyCredentials.ICredential
| capav1beta1.IAWSClusterRoleIdentity
| capav1beta2.IAWSClusterRoleIdentity
| capzv1beta1.IAzureClusterIdentity
| undefined;

export type ProviderCredentialList =
| legacyCredentials.ICredentialList
| capav1beta1.IAWSClusterRoleIdentityList
| capav1beta2.IAWSClusterRoleIdentityList
| capzv1beta1.IAzureClusterIdentityList;

Expand Down
Loading

0 comments on commit 5ea7638

Please sign in to comment.