Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions src/function.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,6 @@ export class Function implements FunctionHandler {
...commonMetadata,
name: serviceAccountConfig.name || name,
annotations: {
'crossplane.io/composition-resource-name': 'serviceaccount',
...(serviceAccountConfig.annotations || {}),
},
},
Expand All @@ -111,9 +110,6 @@ export class Function implements FunctionHandler {
const service = new Service({
metadata: {
...commonMetadata,
annotations: {
'crossplane.io/composition-resource-name': 'service',
},
},
spec: {
type: serviceConfig.type || 'ClusterIP',
Expand Down Expand Up @@ -141,7 +137,6 @@ export class Function implements FunctionHandler {
metadata: {
...commonMetadata,
annotations: {
'crossplane.io/composition-resource-name': 'deployment',
...(deploymentConfig.podAnnotations || {}),
},
},
Expand Down Expand Up @@ -227,7 +222,6 @@ export class Function implements FunctionHandler {
metadata: {
...commonMetadata,
annotations: {
'crossplane.io/composition-resource-name': 'ingress',
...(ingressConfig.annotations || {}),
},
},
Expand Down
22 changes: 0 additions & 22 deletions src/test-helpers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -355,32 +355,10 @@ export function assertResourceTypes(response: RunFunctionResponse, expectedTypes
}
}

/**
* Assert that all resources have the crossplane.io/composition-resource-name annotation
*/
export function assertCompositionResourceNames(response: RunFunctionResponse) {
const desiredResources = response.desired?.resources || {};

for (const [key, resource] of Object.entries(desiredResources)) {
const resourceData = resource?.resource as KubernetesResource | undefined;
const metadata = resourceData?.metadata as KubernetesMetadata | undefined;
const compositionResourceName =
metadata?.annotations?.['crossplane.io/composition-resource-name'];

if (!compositionResourceName) {
throw new Error(
`Resource '${key}' is missing required annotation 'crossplane.io/composition-resource-name'`
);
}
}
}

/**
* Run all assertions for a test case
*/
export function assertTestCase(response: RunFunctionResponse, testCase: TestCase) {
// Always assert that all resources have composition-resource-name annotation
assertCompositionResourceNames(response);

if (testCase.expected.resources) {
assertResources(response, testCase.expected.resources);
Expand Down
2 changes: 0 additions & 2 deletions test-cases/example.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ expected:
app.kubernetes.io/name: hello-app
app.kubernetes.io/instance: hello-app
app.kubernetes.io/managed-by: crossplane
annotations:
crossplane.io/composition-resource-name: serviceaccount
automountServiceAccountToken: true

service:
Expand Down