diff --git a/README.md b/README.md index 17ce07c..de75174 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ Available constructs and helpers include: - `TypescriptLambdaFunction` – A reusable construct for TypeScript Lambda functions - `createApp` – Helper for creating a CDK `App` pre-configured with standard EPS tags and stack props - `deleteUnusedStacks` – Helper functions for cleaning up superseded or PR-based CloudFormation stacks and their Route 53 records +- `checkDestructiveChangeSet` – Describes a CloudFormation change set, filters out replacements and removals (optionally applying time-bound waivers) and throws if anything destructive remains. ### CDK app bootstrap (`createApp`) @@ -63,6 +64,33 @@ These functions are designed to be invoked from scheduled jobs (for example, a n Refer to [packages/cdkConstructs/tests/stacks/deleteUnusedStacks.test.ts](packages/cdkConstructs/tests/stacks/deleteUnusedStacks.test.ts) for example scenarios. +### Check destructive change sets +This is used for stateful stack deployments where we want to make sure we do not automatically deploy potentially destructive changes. +In a CI pipeline for stateful stacks, we should create a changeset initially, then pass the changeset details to checkDestructiveChangeSet, and an optional array of short-lived waivers, for example: + +```ts +import {checkDestructiveChangeSet} from "@nhsdigital/eps-cdk-constructs" + +await checkDestructiveChangeSet( + process.env.CDK_CHANGE_SET_NAME, + process.env.STACK_NAME, + process.env.AWS_REGION, + [ + { + LogicalResourceId: "MyAlarm", + PhysicalResourceId: "monitoring-alarm", + ResourceType: "AWS::CloudWatch::Alarm", + StackName: "monitoring", + ExpiryDate: "2026-03-01T00:00:00Z", + AllowedReason: "Pending rename rollout" + } + ] +) +``` + +Each waiver is effective only when the stack name, logical ID, physical ID, and resource type all match and the waiver’s `ExpiryDate` is later than the change set’s `CreationTime`. When no destructive changes remain, the helper logs a confirmation message; otherwise it prints the problematic resources and throws. + + ## Deployment utilities (`packages/deploymentUtils`) The [packages/deploymentUtils](packages/deploymentUtils) package contains utilities for working with OpenAPI specifications and Proxygen-based API deployments. diff --git a/packages/cdkConstructs/src/changesets/checkDestructiveChanges.ts b/packages/cdkConstructs/src/changesets/checkDestructiveChanges.ts new file mode 100644 index 0000000..0f8807d --- /dev/null +++ b/packages/cdkConstructs/src/changesets/checkDestructiveChanges.ts @@ -0,0 +1,154 @@ +import { + CloudFormationClient, + DescribeChangeSetCommand, + DescribeChangeSetCommandOutput, + Change as CloudFormationChange +} from "@aws-sdk/client-cloudformation" + +export type ChangeRequiringAttention = { + logicalId: string; + physicalId: string; + resourceType: string; + reason: string; +} + +export type AllowedDestructiveChange = { + LogicalResourceId: string; + PhysicalResourceId: string; + ResourceType: string; + ExpiryDate: string | Date; + StackName: string; + AllowedReason: string; +} + +const requiresReplacement = (replacement: unknown): boolean => { + if (replacement === undefined || replacement === null) { + return false + } + + const normalized = String(replacement) + return normalized === "True" || normalized === "Conditional" +} + +const toDate = (value: Date | string | number | undefined | null): Date | undefined => { + if (value === undefined || value === null) { + return undefined + } + + const date = value instanceof Date ? value : new Date(value) + return Number.isNaN(date.getTime()) ? undefined : date +} + +/** + * Extracts the subset of CloudFormation changes that either require replacement or remove resources. + * + * @param changeSet - Raw change-set details returned from `DescribeChangeSet`. + * @returns Array of changes that need operator attention. + */ +export function checkDestructiveChanges( + changeSet: DescribeChangeSetCommandOutput | undefined | null +): Array { + if (!changeSet || typeof changeSet !== "object") { + throw new Error("A change set object must be provided") + } + + const {Changes} = changeSet + const changes = Array.isArray(Changes) ? (Changes as Array) : [] + + return changes + .map((change: CloudFormationChange) => { + const resourceChange = change?.ResourceChange + if (!resourceChange) { + return undefined + } + + const replacementNeeded = requiresReplacement(resourceChange.Replacement) + const action = resourceChange.Action + const isRemoval = action === "Remove" + + if (!replacementNeeded && !isRemoval) { + return undefined + } + + return { + logicalId: resourceChange.LogicalResourceId ?? "", + physicalId: resourceChange.PhysicalResourceId ?? "", + resourceType: resourceChange.ResourceType ?? "", + reason: replacementNeeded + ? `Replacement: ${String(resourceChange.Replacement)}` + : `Action: ${action ?? ""}` + } + }) + .filter((change): change is ChangeRequiringAttention => Boolean(change)) +} + +/** + * Describes a CloudFormation change set, applies waiver logic, and throws if destructive changes remain. + * + * @param changeSetName - Name or ARN of the change set. + * @param stackName - Name or ARN of the stack that owns the change set. + * @param region - AWS region where the stack resides. + * @param allowedChanges - Optional waivers that temporarily allow specific destructive changes. + */ +export async function checkDestructiveChangeSet( + changeSetName: string, + stackName: string, + region: string, + allowedChanges: Array = []): Promise { + if (!changeSetName || !stackName || !region) { + throw new Error("Change set name, stack name, and region are required") + } + + const client = new CloudFormationClient({region}) + const command = new DescribeChangeSetCommand({ + ChangeSetName: changeSetName, + StackName: stackName + }) + + const response: DescribeChangeSetCommandOutput = await client.send(command) + const destructiveChanges = checkDestructiveChanges(response) + const creationTime = toDate(response.CreationTime) + const changeSetStackName = response.StackName + + const remainingChanges = destructiveChanges.filter(change => { + const waiver = allowedChanges.find(allowed => + allowed.LogicalResourceId === change.logicalId && + allowed.PhysicalResourceId === change.physicalId && + allowed.ResourceType === change.resourceType + ) + + if (!waiver || !creationTime || !changeSetStackName || waiver.StackName !== changeSetStackName) { + return true + } + + const expiryDate = toDate(waiver.ExpiryDate) + if (!expiryDate) { + return true + } + + if (expiryDate.getTime() > creationTime.getTime()) { + + console.log( + // eslint-disable-next-line max-len + `Allowing destructive change ${change.logicalId} (${change.resourceType}) until ${expiryDate.toISOString()} - ${waiver.AllowedReason}` + ) + return false + } + + console.error( + `Waiver for ${change.logicalId} (${change.resourceType}) expired on ${expiryDate.toISOString()}` + ) + return true + }) + + if (remainingChanges.length === 0) { + console.log(`Change set ${changeSetName} for stack ${stackName} has no destructive changes that are not waived.`) + return + } + + console.error("Resources that require attention:") + remainingChanges.forEach(({logicalId, physicalId, resourceType, reason}) => { + console.error(`- LogicalId: ${logicalId}, PhysicalId: ${physicalId}, Type: ${resourceType}, Reason: ${reason}`) + }) + throw new Error(`Change set ${changeSetName} contains destructive changes`) +} diff --git a/packages/cdkConstructs/src/index.ts b/packages/cdkConstructs/src/index.ts index 766960c..0c73b90 100644 --- a/packages/cdkConstructs/src/index.ts +++ b/packages/cdkConstructs/src/index.ts @@ -6,3 +6,4 @@ export * from "./config/index.js" export * from "./utils/helpers.js" export * from "./stacks/deleteUnusedStacks.js" export * from "./nag/pack/epsNagPack.js" +export * from "./changesets/checkDestructiveChanges" diff --git a/packages/cdkConstructs/tests/changesets/checkDestructiveChanges.test.ts b/packages/cdkConstructs/tests/changesets/checkDestructiveChanges.test.ts new file mode 100644 index 0000000..7cdb31b --- /dev/null +++ b/packages/cdkConstructs/tests/changesets/checkDestructiveChanges.test.ts @@ -0,0 +1,208 @@ +import {readFileSync} from "node:fs" +import {dirname, join} from "node:path" +import {fileURLToPath} from "node:url" +import { + beforeEach, + describe, + expect, + test, + vi, + afterEach +} from "vitest" +import { + checkDestructiveChanges, + checkDestructiveChangeSet, + AllowedDestructiveChange +} from "../../src/changesets/checkDestructiveChanges" + +const mockCloudFormationSend = vi.fn() + +vi.mock("@aws-sdk/client-cloudformation", () => { + class CloudFormationClient { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + config: any + constructor(config: { region: string }) { + this.config = config + } + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + send(command: any) { + return mockCloudFormationSend(command) + } + } + + class DescribeChangeSetCommand { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + input: any + // eslint-disable-next-line @typescript-eslint/no-explicit-any + constructor(input: any) { + this.input = input + } + } + + return {CloudFormationClient, DescribeChangeSetCommand} +}) + +const __filename = fileURLToPath(import.meta.url) +const __dirname = dirname(__filename) +const fixturesDir = join(__dirname, "examples") + +const loadChangeSet = (filePath: string) => JSON.parse(readFileSync(filePath, "utf-8")) + +const destructiveChangeSet = loadChangeSet(join(fixturesDir, "destructive_changeset.json")) +const safeChangeSet = loadChangeSet(join(fixturesDir, "safe_changeset.json")) + +beforeEach(() => { + mockCloudFormationSend.mockReset() +}) + +describe("checkDestructiveChanges", () => { + test("returns resources that require replacement", () => { + const replacements = checkDestructiveChanges(destructiveChangeSet) + + expect(replacements.length).toBeGreaterThan(0) + expect(replacements).toContainEqual({ + logicalId: "AlarmsAccountLambdaConcurrencyAlarm8AF49AD8", + physicalId: "monitoring-Account_Lambda_Concurrency", + resourceType: "AWS::CloudWatch::Alarm", + reason: "Replacement: True" + }) + }) + + test("returns an empty array when no replacements or removals exist", () => { + const replacements = checkDestructiveChanges(safeChangeSet) + + expect(replacements).toEqual([]) + }) + + test("includes resources marked for removal", () => { + const changeSet = { + Changes: [ + { + ResourceChange: { + LogicalResourceId: "ResourceToRemove", + PhysicalResourceId: "physical-id", + ResourceType: "AWS::S3::Bucket", + Action: "Remove", + Replacement: "False" + } + } + ] + } + const replacements = checkDestructiveChanges(changeSet) + + expect(replacements).toEqual([ + { + logicalId: "ResourceToRemove", + physicalId: "physical-id", + resourceType: "AWS::S3::Bucket", + reason: "Action: Remove" + } + ]) + }) +}) + +describe("checkDestructiveChangeSet", () => { + const logSpy = vi.spyOn(console, "log").mockImplementation(() => undefined) + const errorSpy = vi.spyOn(console, "error").mockImplementation(() => undefined) + afterEach(() => { + logSpy.mockReset() + errorSpy.mockReset() + }) + + test("logs success when no destructive changes are present", async () => { + mockCloudFormationSend.mockResolvedValueOnce(safeChangeSet) + + await expect(checkDestructiveChangeSet("cs", "stack", "eu-west-2")).resolves.toBeUndefined() + + expect(mockCloudFormationSend).toHaveBeenCalledTimes(1) + const command = mockCloudFormationSend.mock.calls[0][0] as { input: { ChangeSetName: string; StackName: string } } + expect(command.input).toEqual({ChangeSetName: "cs", StackName: "stack"}) + expect(logSpy).toHaveBeenCalledWith("Change set cs for stack stack has no destructive changes that are not waived.") + expect(errorSpy).not.toHaveBeenCalled() + }) + + test("logs details and throws when destructive changes exist", async () => { + mockCloudFormationSend.mockResolvedValueOnce(destructiveChangeSet) + + await expect(checkDestructiveChangeSet("cs", "stack", "eu-west-2")) + .rejects.toThrow("Change set cs contains destructive changes") + + expect(mockCloudFormationSend).toHaveBeenCalledTimes(1) + expect(logSpy).not.toHaveBeenCalled() + expect(errorSpy).toHaveBeenCalledWith("Resources that require attention:") + }) + + test("allows matching destructive changes when waiver is active", async () => { + const changeSet = { + CreationTime: "2026-02-20T11:54:17.083Z", + StackName: "stack", + Changes: [ + { + ResourceChange: { + LogicalResourceId: "ResourceToRemove", + PhysicalResourceId: "physical-id", + ResourceType: "AWS::S3::Bucket", + Action: "Remove" + } + } + ] + } + mockCloudFormationSend.mockResolvedValueOnce(changeSet) + + const allowedChanges: Array = [ + { + LogicalResourceId: "ResourceToRemove", + PhysicalResourceId: "physical-id", + ResourceType: "AWS::S3::Bucket", + ExpiryDate: "2026-03-01T00:00:00Z", + StackName: "stack", + AllowedReason: "Pending migration" + } + ] + + await expect(checkDestructiveChangeSet("cs", "stack", "eu-west-2", allowedChanges)) + .resolves.toBeUndefined() + + expect(mockCloudFormationSend).toHaveBeenCalledTimes(1) + expect(logSpy).toHaveBeenCalledWith(expect.stringContaining("Allowing destructive change ResourceToRemove")) + expect(logSpy).toHaveBeenCalledWith("Change set cs for stack stack has no destructive changes that are not waived.") + expect(errorSpy).not.toHaveBeenCalled() + }) + + test("throws when waiver expired before change set creation", async () => { + const changeSet = { + CreationTime: "2026-02-20T11:54:17.083Z", + StackName: "stack", + Changes: [ + { + ResourceChange: { + LogicalResourceId: "ResourceToRemove", + PhysicalResourceId: "physical-id", + ResourceType: "AWS::S3::Bucket", + Action: "Remove" + } + } + ] + } + mockCloudFormationSend.mockResolvedValueOnce(changeSet) + + const allowedChanges: Array = [ + { + LogicalResourceId: "ResourceToRemove", + PhysicalResourceId: "physical-id", + ResourceType: "AWS::S3::Bucket", + ExpiryDate: "2026-02-01T00:00:00Z", + StackName: "stack", + AllowedReason: "Expired waiver" + } + ] + + await expect(checkDestructiveChangeSet("cs", "stack", "eu-west-2", allowedChanges)) + .rejects.toThrow("Change set cs contains destructive changes") + + expect(errorSpy).toHaveBeenCalledWith(expect.stringContaining("Waiver for ResourceToRemove")) + expect(errorSpy).toHaveBeenCalledWith("Resources that require attention:") + expect(logSpy).not.toHaveBeenCalledWith("Change set cs for stack stack has no destructive changes.") + }) +}) diff --git a/packages/cdkConstructs/tests/changesets/examples/destructive_changeset.json b/packages/cdkConstructs/tests/changesets/examples/destructive_changeset.json new file mode 100644 index 0000000..b01fc0f --- /dev/null +++ b/packages/cdkConstructs/tests/changesets/examples/destructive_changeset.json @@ -0,0 +1,1498 @@ +{ + "Changes": [ + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountLambdaConcurrencyAlarm8AF49AD8", + "PhysicalResourceId": "monitoring-Account_Lambda_Concurrency", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Threshold", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountLambdaConcurrencyWARNINGAlarm5C305BA1", + "PhysicalResourceId": "monitoring-Account_Lambda_Concurrency_WARNING", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Threshold", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountLambdaErrorsAlarmC3513C53", + "PhysicalResourceId": "monitoring-Account_Lambda_Errors", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountLambdaThrottlesAlarm12FF5DEF", + "PhysicalResourceId": "monitoring-Account_Lambda_Throttles", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountStepFunctionErrorsAlarm737F0047", + "PhysicalResourceId": "monitoring-Account_StepFunction_Errors", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountStepFunctionExecutionsAbortedAlarmADC4F811", + "PhysicalResourceId": "monitoring-Account_StepFunction_ExecutionsAborted", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountStepFunctionExecutionsThrottledAlarmAFBE1044", + "PhysicalResourceId": "monitoring-Account_StepFunction_ExecutionsThrottled", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "ReplaceAndDelete", + "Action": "Modify", + "LogicalResourceId": "AlarmsAccountStepFunctionExecutionsTimedOutAlarm207042BA", + "PhysicalResourceId": "monitoring-Account_StepFunction_ExecutionsTimedOut", + "ResourceType": "AWS::CloudWatch::Alarm", + "Replacement": "True", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "ActionsEnabled", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "AlarmName", + "RequiresRecreation": "Always" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "AlarmsalertSuppressions80C5A1E6", + "PhysicalResourceId": "monitoring-alertSuppressions", + "ResourceType": "AWS::SSM::Parameter", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "CDKMetadata", + "PhysicalResourceId": "a388b600-9eaa-11f0-949f-0294dec6a941", + "ResourceType": "AWS::CDK::Metadata", + "Replacement": "Conditional", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Analytics", + "RequiresRecreation": "Conditionally" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReadAlertSuppressionsPolicy8AAF0540", + "PhysicalResourceId": "arn:aws:iam::591291862413:policy/monitoring-FunctionsReadAlertSuppressionsPolicy8AAF0540-PrwqQQw8uF1w", + "ResourceType": "AWS::IAM::ManagedPolicy", + "Replacement": "False", + "Scope": [ + "Metadata", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdaExecuteLambdaManagedPolicyDC695E63", + "PhysicalResourceId": "arn:aws:iam::591291862413:policy/monitoring-FunctionsReportAlertSuppressionsLambdaExecuteLambdaManagedPolicyDC695E63-B3ADk82vDRAx", + "ResourceType": "AWS::IAM::ManagedPolicy", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "PolicyDocument", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "FunctionsReportAlertSuppressionsLambdamonitoringsuppressionreporter4CD52F81.Arn" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdaLambdaLogGroup46AB865A", + "PhysicalResourceId": "/aws/lambda/monitoring-suppression-reporter", + "ResourceType": "AWS::Logs::LogGroup", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdaLambdaLogsSplunkSubscriptionFilterE77EBC49", + "PhysicalResourceId": "monitoring-FunctionsReportAlertSuppressionsLambdaLambdaLogsSplunkSubscriptionFilterE77EBC49-0j4ME9nInfhl", + "ResourceType": "AWS::Logs::SubscriptionFilter", + "Replacement": "False", + "Scope": [ + "Metadata", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdaLambdaPutLogsManagedPolicy04D0828F", + "PhysicalResourceId": "arn:aws:iam::591291862413:policy/monitoring-FunctionsReportAlertSuppressionsLambdaLambdaPutLogsManagedPolicy04D0828F-SElFtd0RvV64", + "ResourceType": "AWS::IAM::ManagedPolicy", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "PolicyDocument", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "FunctionsReportAlertSuppressionsLambdaLambdaLogGroup46AB865A.Arn" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdaLambdaRoleD6821958", + "PhysicalResourceId": "monitoring-FunctionsReportAlertSuppressionsLambdaLa-DJLPbMaRc2H6", + "ResourceType": "AWS::IAM::Role", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "FunctionsReportAlertSuppressionsLambdamonitoringsuppressionreporter4CD52F81", + "PhysicalResourceId": "monitoring-suppression-reporter", + "ResourceType": "AWS::Lambda::Function", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Code", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Environment", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Layers", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Role", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "FunctionsReportAlertSuppressionsLambdaLambdaRoleD6821958.Arn" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202135515E3CA4405", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/5ee25a89e4426417", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE20213551679EE0A49", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/26e02d8ae24ed11a", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202135517B0EA5CEE", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/6ec959ea4e072a03", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE20213609057B3EB0F", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/433108e635ed5c29", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE20224288994453378", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/b2f88d44bc8d2f7b", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2023240571EE2F86B", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/55a848a1bcb671b2", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202328465C5880459", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/327106688b971118", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202329764CE608FD", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/0bd529a435103ed4", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2024452940F364610", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/78d391b96733b97f", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202451132A67BF53B", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/2d3bdada1cf70940", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202452007BA433847", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/c19b23172257cef2", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2024558879CA46A81", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/88fe30aebb61eac4", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202521587A8EEC6CA", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/5a749058ef10666a", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202522871D27C72C0", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/229c3c0734e533d7", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2025307494C95FAE8", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/9d7569bc780acd76", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202547907377693AF", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/d9ce69db8e33da00", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202550059DE603B11", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/40f4475b5a36e5fc", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202550106004945A2", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/f52c27b32003ff89", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202558187E821BDAF", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/78351e7452353fe8", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2025581883F0401C5", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/56de086700002631", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2025617237FCAF774", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/54b111738b23a35c", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2025617250E71BB06", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/72ee9313afe4b41a", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE2025617293FC93AFD", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/d0f7179b23ad76aa", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202564756C11EFAD9", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/0b603116ab31c4f5", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202569420101BF792", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/cfc1086ce35bc50a", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE20259230E37B1FB8", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/f5b2682ad28ba254", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202623745A5B68F13", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/ae73a1280ca9a627", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202623950F9799C0B", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/bb51b98b7568d81d", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE20262404986DE9D80", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/0d9f7761cc79eece", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "InspectorFiltersSuppressCVE202624842FB264968", + "PhysicalResourceId": "arn:aws:inspector2:eu-west-2:591291862413:owner/591291862413/filter/093c5e7f8d05a8eb", + "ResourceType": "AWS::InspectorV2::Filter", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "ReportAlertSuppressionsScheduleRoleDefaultPolicy1DDE3593", + "PhysicalResourceId": "monit-Repor-J2fb2PaUKrut", + "ResourceType": "AWS::IAM::Policy", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ReportAlertSuppressionsScheduleRoleED08C397", + "PhysicalResourceId": "monitoring-ReportAlertSuppressionsScheduleRoleED08C-UZSXaZOPlZfK", + "ResourceType": "AWS::IAM::Role", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "WeeklyScheduleRule1CC9B0E6", + "PhysicalResourceId": "monitoring-WeeklyScheduleRule1CC9B0E6-qJw8GFGHLyPe", + "ResourceType": "AWS::Events::Rule", + "Replacement": "False", + "Scope": [ + "Metadata", + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "RoleArn", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "ReportAlertSuppressionsScheduleRoleED08C397.Arn" + }, + { + "Target": { + "Attribute": "Metadata", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Targets", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "FunctionsReportAlertSuppressionsLambdamonitoringsuppressionreporter4CD52F81.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Add", + "LogicalResourceId": "WeeklyScheduleRuleAllowEventRuleMonitoringFunctionsReportAlertSuppressionsLambdamonitoringsuppressionreporter1B7A78C5462BD8DF", + "ResourceType": "AWS::Lambda::Permission", + "Scope": [], + "Details": [] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "PolicyAction": "Delete", + "Action": "Remove", + "LogicalResourceId": "WeeklyScheduleRuleAllowEventRuleMonitoringStackFunctionsReportAlertSuppressionsLambdamonitoringsuppressionreporter4C6D6F0C6068F8CF", + "PhysicalResourceId": "monitoring-WeeklyScheduleRuleAllowEventRuleMonitoringStackFunctionsReportAlertSuppressi-ENFKKYUJ3Cfb", + "ResourceType": "AWS::Lambda::Permission", + "Scope": [], + "Details": [] + } + } + ], + "ChangeSetName": "DESTRUCTIVE-monitoring-changeset-pr-1988-1771588444", + "ChangeSetId": "arn:aws:cloudformation:eu-west-2:591291862413:changeSet/DESTRUCTIVE-monitoring-changeset-pr-1988-1771588444/3ef115a1-a7d6-4e0b-af8a-b97e2aaad7e8", + "StackId": "arn:aws:cloudformation:eu-west-2:591291862413:stack/monitoring/a388b600-9eaa-11f0-949f-0294dec6a941", + "StackName": "monitoring", + "Description": "CDK Changeset for execution a97b7d1e-e1c2-42f3-b04e-1f645853becc", + "Parameters": [ + { + "ParameterKey": "BootstrapVersion", + "ParameterValue": "/cdk-bootstrap/hnb659fds/version", + "ResolvedValue": "30" + } + ], + "CreationTime": "2026-02-20T11:54:17.083000+00:00", + "ExecutionStatus": "AVAILABLE", + "Status": "CREATE_COMPLETE", + "StatusReason": null, + "NotificationARNs": [], + "RollbackConfiguration": {}, + "Capabilities": [ + "CAPABILITY_IAM", + "CAPABILITY_NAMED_IAM", + "CAPABILITY_AUTO_EXPAND" + ], + "Tags": [ + { + "Key": "PublicFacing", + "Value": "Y" + }, + { + "Key": "Owner", + "Value": "england.epssupport@nhs.net" + }, + { + "Key": "ServiceCategory", + "Value": "Platinum" + }, + { + "Key": "Customer", + "Value": "NHS England" + }, + { + "Key": "repo", + "Value": "electronic-prescription-service-account-resources" + }, + { + "Key": "commit", + "Value": "6661fabc0f4b8c79cd7f5e197fe6e57e0756aef0" + }, + { + "Key": "stackName", + "Value": "monitoring" + }, + { + "Key": "DeploymentTool", + "Value": "CDK" + }, + { + "Key": "Product", + "Value": "Account Resources" + }, + { + "Key": "version", + "Value": "pr-1988" + }, + { + "Key": "OnOffPattern", + "Value": "AlwaysOn" + }, + { + "Key": "Programme", + "Value": "EPS" + }, + { + "Key": "data_classification", + "Value": "5" + }, + { + "Key": "TagVersion", + "Value": "1" + }, + { + "Key": "cdkApp", + "Value": "AccountResourcesApp" + }, + { + "Key": "ProjectType", + "Value": "Production" + }, + { + "Key": "DataType", + "Value": "PII" + }, + { + "Key": "Environment", + "Value": "dev-account" + }, + { + "Key": "cfnDriftDetectionGroup", + "Value": "account-resources" + }, + { + "Key": "CostCentre", + "Value": "128997" + } + ], + "ParentChangeSetId": null, + "IncludeNestedStacks": false, + "RootChangeSetId": null, + "OnStackFailure": null, + "ImportExistingResources": false, + "StackDriftStatus": null, + "DeploymentMode": null +} diff --git a/packages/cdkConstructs/tests/changesets/examples/safe_changeset.json b/packages/cdkConstructs/tests/changesets/examples/safe_changeset.json new file mode 100644 index 0000000..b127e07 --- /dev/null +++ b/packages/cdkConstructs/tests/changesets/examples/safe_changeset.json @@ -0,0 +1,5739 @@ +{ + "Changes": [ + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "CDKMetadata", + "PhysicalResourceId": "efbc79b0-cb89-11f0-a7f0-0aa6b3b66477", + "ResourceType": "AWS::CDK::Metadata", + "Replacement": "False", + "Scope": [ + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdeploymentutils229EBC53", + "PhysicalResourceId": "deployment-utils", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontaineraccountresources3E31EF23", + "PhysicalResourceId": "dev-container-account-resources", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontaineractioncfnlint61A98760", + "PhysicalResourceId": "dev-container-action-cfn-lint", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontaineractionsbom6DCEA35B", + "PhysicalResourceId": "dev-container-action-sbom", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerassistmeA5CA1127", + "PhysicalResourceId": "dev-container-assist-me", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerawsdashboardsF36F24FC", + "PhysicalResourceId": "dev-container-aws-dashboards", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainercdkutils53FAA358", + "PhysicalResourceId": "dev-container-cdk-utils", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainercommonworkflowsD8AA3F80", + "PhysicalResourceId": "dev-container-common-workflows", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerdependabot9A650B2F", + "PhysicalResourceId": "dev-container-dependabot", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerfhirfacadeB6DDC88C", + "PhysicalResourceId": "dev-container-fhir-facade", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerfhirmiddyerrorhandler49D06461", + "PhysicalResourceId": "dev-container-fhir-middy-error-handler", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerfhirvalidatordocker439B7452", + "PhysicalResourceId": "dev-container-fhir-validator-docker", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerfhirvalidatorlambdaBBE0557F", + "PhysicalResourceId": "dev-container-fhir-validator-lambda", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainergetsecretsD0B1D936", + "PhysicalResourceId": "dev-container-get-secrets", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerloadtest1C44594D", + "PhysicalResourceId": "dev-container-load-test", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerpfpE3F7865C", + "PhysicalResourceId": "dev-container-pfp", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerprescriptiontrackerapi4616E571", + "PhysicalResourceId": "dev-container-prescription-tracker-api", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerprescriptiontrackeruiB6BF29E9", + "PhysicalResourceId": "dev-container-prescription-tracker-ui", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerpsu671DA173", + "PhysicalResourceId": "dev-container-psu", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerregressiontestsC7BEA5B0", + "PhysicalResourceId": "dev-container-regression-tests", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerreleasenotesDE0ABDDB", + "PhysicalResourceId": "dev-container-release-notes", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainersemanticreleaseEBC1D25A", + "PhysicalResourceId": "dev-container-semantic-release", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerspineclient9EB7BAE1", + "PhysicalResourceId": "dev-container-spine-client", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainerstorageterraformD576531A", + "PhysicalResourceId": "dev-container-storage-terraform", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesdevcontainervpcresources8B3A962C", + "PhysicalResourceId": "dev-container-vpc-resources", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "ECRRepositoriesgitsecretsA75BCFDF", + "PhysicalResourceId": "git-secrets", + "ResourceType": "AWS::ECR::Repository", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTCPTFHIRCLIENTIDStaticSecretstaticSecret6B8027A7", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/CPT_FHIR_CLIENT_ID-ci4yJ0", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTCPTFHIRCLIENTSECRETStaticSecretstaticSecret8A1DA8BD", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/CPT_FHIR_CLIENT_SECRET-YujLtL", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSASSISTMEROLEARNStaticSecretstaticSecret4B2E411E", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_ASSIST_ME_ROLE_ARN-vWno4u", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRCLIENTIDStaticSecretstaticSecretB086791B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_CLIENT_ID-Kjrs6u", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRCLIENTSECRETStaticSecretstaticSecret9D01B02F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_CLIENT_SECRET-LYAtSv", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRDISPENSINGCLIENTIDStaticSecretstaticSecret81AF4099", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_DISPENSING_CLIENT_ID-4CdjHn", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRDISPENSINGCLIENTSECRETStaticSecretstaticSecret2A556163", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_DISPENSING_CLIENT_SECRET-DvrDVf", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRDISPENSINGJWTCLIENTIDStaticSecretstaticSecretC7F0AD68", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_DISPENSING_JWT_CLIENT_ID-GBIZ84", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRDISPENSINGJWTKIDStaticSecretstaticSecret09EEA236", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_DISPENSING_JWT_KID-4kfbGX", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRDISPENSINGJWTPRIVATEKEYStaticSecretstaticSecret53E44B48", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_DISPENSING_JWT_PRIVATE_KEY-1myaHr", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRPRESCRIBINGCLIENTIDStaticSecretstaticSecret9DE1FC7B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_PRESCRIBING_CLIENT_ID-29OTTA", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRPRESCRIBINGCLIENTSECRETStaticSecretstaticSecret08EFD32B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_PRESCRIBING_CLIENT_SECRET-lNoJIu", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRPRESCRIBINGSHA1CLIENTIDStaticSecretstaticSecret84A6ABD2", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_ID-qdMij6", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRPRESCRIBINGSHA1CLIENTSECRETStaticSecretstaticSecret9290C98C", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_SECRET-m5B4ay", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRSHA1CLIENTIDStaticSecretstaticSecretFB1D3CE7", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_SHA1_CLIENT_ID-DMkXRT", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTEPSFHIRSHA1CLIENTSECRETStaticSecretstaticSecret2EE6D950", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/EPS_FHIR_SHA1_CLIENT_SECRET-EvMo1A", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVCPTFHIRCLIENTIDStaticSecretstaticSecret62250EA9", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/CPT_FHIR_CLIENT_ID-3DBblD", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVCPTFHIRCLIENTSECRETStaticSecretstaticSecret50130BEC", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/CPT_FHIR_CLIENT_SECRET-7OvCKo", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSASSISTMEROLEARNStaticSecretstaticSecretF1994A5A", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_ASSIST_ME_ROLE_ARN-7dsxhW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRCLIENTIDStaticSecretstaticSecret5E379877", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_CLIENT_ID-gnWCHw", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRCLIENTSECRETStaticSecretstaticSecret17AB9D81", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_CLIENT_SECRET-2wACKL", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRDISPENSINGCLIENTIDStaticSecretstaticSecretC8A1AD32", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_DISPENSING_CLIENT_ID-vWno4u", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRDISPENSINGCLIENTSECRETStaticSecretstaticSecret549F76DA", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_DISPENSING_CLIENT_SECRET-264IHn", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRDISPENSINGJWTCLIENTIDStaticSecretstaticSecret885A721D", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_DISPENSING_JWT_CLIENT_ID-8kgSJV", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRDISPENSINGJWTKIDStaticSecretstaticSecret5D306E2C", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_DISPENSING_JWT_KID-hLE6my", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRDISPENSINGJWTPRIVATEKEYStaticSecretstaticSecret514B5343", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_DISPENSING_JWT_PRIVATE_KEY-YGjUr8", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRPRESCRIBINGCLIENTIDStaticSecretstaticSecret6501DCD0", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_PRESCRIBING_CLIENT_ID-1Dgqgj", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRPRESCRIBINGCLIENTSECRETStaticSecretstaticSecret7045B96E", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_PRESCRIBING_CLIENT_SECRET-9mLaKX", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRPRESCRIBINGSHA1CLIENTIDStaticSecretstaticSecretBB93CDFD", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_ID-rG1BLj", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRPRESCRIBINGSHA1CLIENTSECRETStaticSecretstaticSecret1233935B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_SECRET-1xn3lL", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRSHA1CLIENTIDStaticSecretstaticSecret35430B5E", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_SHA1_CLIENT_ID-TfkoNr", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVEPSFHIRSHA1CLIENTSECRETStaticSecretstaticSecret0A5BAE16", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/EPS_FHIR_SHA1_CLIENT_SECRET-lsaczK", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVJWTKIDStaticSecretstaticSecret741ED06F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/JWT_KID-KIsAwP", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVJWTPRIVATEKEYStaticSecretstaticSecret9C9FD653", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/JWT_PRIVATE_KEY-abxev6", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVPFPCLIENTIDStaticSecretstaticSecretAFE22955", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/PFP_CLIENT_ID-wSRMfh", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVPFPCLIENTSECRETStaticSecretstaticSecret0D0161F6", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/PFP_CLIENT_SECRET-s4a5JP", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVPSUCLIENTIDStaticSecretstaticSecret923A2ED7", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/PSU_CLIENT_ID-2CtZEj", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVPSUCLIENTSECRETStaticSecretstaticSecretFF813F5F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV/PSU_CLIENT_SECRET-BK2q7o", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXCPTFHIRCLIENTIDStaticSecretstaticSecretA92A6E9A", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/CPT_FHIR_CLIENT_ID-JemuKW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXCPTFHIRCLIENTSECRETStaticSecretstaticSecret4FADA644", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/CPT_FHIR_CLIENT_SECRET-B1XM32", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSASSISTMEROLEARNStaticSecretstaticSecretC8CF2F6B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_ASSIST_ME_ROLE_ARN-Is4GGK", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRCLIENTIDStaticSecretstaticSecretC36E41EA", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_CLIENT_ID-AjJNXt", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRCLIENTSECRETStaticSecretstaticSecret2EB6BBF7", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_CLIENT_SECRET-XpeNae", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRDISPENSINGCLIENTIDStaticSecretstaticSecret209C3E96", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_DISPENSING_CLIENT_ID-zUNSqW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRDISPENSINGCLIENTSECRETStaticSecretstaticSecretDF01EB38", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_DISPENSING_CLIENT_SECRET-aEZLSQ", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRDISPENSINGJWTCLIENTIDStaticSecretstaticSecret80DBA3BC", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_DISPENSING_JWT_CLIENT_ID-BjRiVW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRDISPENSINGJWTKIDStaticSecretstaticSecret2B7E225E", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_DISPENSING_JWT_KID-Sqcl2v", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRDISPENSINGJWTPRIVATEKEYStaticSecretstaticSecretB4C09439", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_DISPENSING_JWT_PRIVATE_KEY-zNkvJb", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRPRESCRIBINGCLIENTIDStaticSecretstaticSecret61D075D3", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_PRESCRIBING_CLIENT_ID-t2nD7Q", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRPRESCRIBINGCLIENTSECRETStaticSecretstaticSecret8C6C5F61", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_PRESCRIBING_CLIENT_SECRET-I4fXPy", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRPRESCRIBINGSHA1CLIENTIDStaticSecretstaticSecretF287FFDD", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_ID-H7UBCq", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRPRESCRIBINGSHA1CLIENTSECRETStaticSecretstaticSecret3062CE5F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_SECRET-wVzXtu", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRSHA1CLIENTIDStaticSecretstaticSecret9AFB2482", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_SHA1_CLIENT_ID-V6S9HW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXEPSFHIRSHA1CLIENTSECRETStaticSecretstaticSecret3F167829", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/EPS_FHIR_SHA1_CLIENT_SECRET-VC7ra7", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXJWTKIDStaticSecretstaticSecret9FCADE0F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/JWT_KID-SSwFXf", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXJWTPRIVATEKEYStaticSecretstaticSecret14CAB9CE", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/JWT_PRIVATE_KEY-nQLGyq", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXPFPCLIENTIDStaticSecretstaticSecretAA206AA3", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/PFP_CLIENT_ID-HOI4vI", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXPFPCLIENTSECRETStaticSecretstaticSecret076AE3AD", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/PFP_CLIENT_SECRET-LlocIH", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXPSUCLIENTIDStaticSecretstaticSecret92546DFB", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/PSU_CLIENT_ID-U6ln5S", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALDEVSANDBOXPSUCLIENTSECRETStaticSecretstaticSecretCDDE2426", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_DEV_SANDBOX/PSU_CLIENT_SECRET-2oZ4D1", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQACPTFHIRCLIENTIDStaticSecretstaticSecretB0D13C54", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/CPT_FHIR_CLIENT_ID-wWI9aM", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQACPTFHIRCLIENTSECRETStaticSecretstaticSecretE4A5B97C", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/CPT_FHIR_CLIENT_SECRET-ZftnTD", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSASSISTMEROLEARNStaticSecretstaticSecret148AF2AF", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_ASSIST_ME_ROLE_ARN-8IRNeT", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRCLIENTIDStaticSecretstaticSecretF79B2A73", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_CLIENT_ID-ghV05E", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRCLIENTSECRETStaticSecretstaticSecretF7754294", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_CLIENT_SECRET-vj97VG", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRDISPENSINGCLIENTIDStaticSecretstaticSecret68744F25", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_DISPENSING_CLIENT_ID-rMBYcq", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRDISPENSINGCLIENTSECRETStaticSecretstaticSecret72B03821", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_DISPENSING_CLIENT_SECRET-V4zYuS", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRDISPENSINGJWTCLIENTIDStaticSecretstaticSecretED2CEF27", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_DISPENSING_JWT_CLIENT_ID-fgTf2U", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRDISPENSINGJWTKIDStaticSecretstaticSecret8AA0D335", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_DISPENSING_JWT_KID-wPfOs1", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRDISPENSINGJWTPRIVATEKEYStaticSecretstaticSecretA2D21F98", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_DISPENSING_JWT_PRIVATE_KEY-YoZAvi", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRPRESCRIBINGCLIENTIDStaticSecretstaticSecretB064955A", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_PRESCRIBING_CLIENT_ID-7rWsid", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRPRESCRIBINGCLIENTSECRETStaticSecretstaticSecretD76CAED0", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_PRESCRIBING_CLIENT_SECRET-nlAZZt", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRPRESCRIBINGSHA1CLIENTIDStaticSecretstaticSecret2F35D0FA", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_ID-omvKCH", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRPRESCRIBINGSHA1CLIENTSECRETStaticSecretstaticSecret94608FE6", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_SECRET-ZgCzAX", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRSHA1CLIENTIDStaticSecretstaticSecret42C8D879", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_SHA1_CLIENT_ID-4xBWgg", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAEPSFHIRSHA1CLIENTSECRETStaticSecretstaticSecret24B81DD6", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/EPS_FHIR_SHA1_CLIENT_SECRET-eDyrUD", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAJWTKIDStaticSecretstaticSecret5040B744", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/JWT_KID-TYjOu0", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAJWTPRIVATEKEYStaticSecretstaticSecretFA0E148A", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/JWT_PRIVATE_KEY-CbHwS7", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAPFPCLIENTIDStaticSecretstaticSecret53867241", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/PFP_CLIENT_ID-5PwheW", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAPFPCLIENTSECRETStaticSecretstaticSecret39587179", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/PFP_CLIENT_SECRET-Ut96W4", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAPSUCLIENTIDStaticSecretstaticSecret4E1FBDA3", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/PSU_CLIENT_ID-8p83Jd", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTERNALQAPSUCLIENTSECRETStaticSecretstaticSecret9EFFBCE0", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INTERNAL_QA/PSU_CLIENT_SECRET-CmcicK", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTJWTKIDStaticSecretstaticSecretBF78999F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/JWT_KID-IWEpJO", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTJWTPRIVATEKEYStaticSecretstaticSecretCF6BFD72", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/JWT_PRIVATE_KEY-eGiB6Q", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTPFPCLIENTIDStaticSecretstaticSecret391BE698", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/PFP_CLIENT_ID-Rc0R3V", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTPFPCLIENTSECRETStaticSecretstaticSecret0CF50E4B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/PFP_CLIENT_SECRET-wLQdDp", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTPSUCLIENTIDStaticSecretstaticSecret761DF456", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/PSU_CLIENT_ID-Q3I5eZ", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsINTPSUCLIENTSECRETStaticSecretstaticSecret1E3145A5", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/INT/PSU_CLIENT_SECRET-B010qP", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFCPTFHIRCLIENTIDStaticSecretstaticSecretB2C7FEEB", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/CPT_FHIR_CLIENT_ID-NBo6yC", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFCPTFHIRCLIENTSECRETStaticSecretstaticSecret0E8884FC", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/CPT_FHIR_CLIENT_SECRET-7l35oF", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSASSISTMEROLEARNStaticSecretstaticSecretC0FD645B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_ASSIST_ME_ROLE_ARN-XhDf3t", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRCLIENTIDStaticSecretstaticSecretE87FD761", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_CLIENT_ID-tIA71h", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRCLIENTSECRETStaticSecretstaticSecret0A4699C2", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_CLIENT_SECRET-vSCdQh", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRDISPENSINGCLIENTIDStaticSecretstaticSecretA6F0E975", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_DISPENSING_CLIENT_ID-x9qFC5", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRDISPENSINGCLIENTSECRETStaticSecretstaticSecretF4E636F4", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_DISPENSING_CLIENT_SECRET-ATZrPX", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRDISPENSINGJWTCLIENTIDStaticSecretstaticSecret8029B4AC", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_DISPENSING_JWT_CLIENT_ID-RkNcvU", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRDISPENSINGJWTKIDStaticSecretstaticSecretFE4C5373", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_DISPENSING_JWT_KID-7L8cma", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRDISPENSINGJWTPRIVATEKEYStaticSecretstaticSecretD9D842EE", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_DISPENSING_JWT_PRIVATE_KEY-Lkj5Uq", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRPRESCRIBINGCLIENTIDStaticSecretstaticSecret99D60D4F", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_PRESCRIBING_CLIENT_ID-EvMo1A", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRPRESCRIBINGCLIENTSECRETStaticSecretstaticSecret040B7487", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_PRESCRIBING_CLIENT_SECRET-sr7M6M", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRPRESCRIBINGSHA1CLIENTIDStaticSecretstaticSecret0A941120", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_ID-0Eqiq9", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRPRESCRIBINGSHA1CLIENTSECRETStaticSecretstaticSecret53679649", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_PRESCRIBING_SHA1_CLIENT_SECRET-P24wPQ", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRSHA1CLIENTIDStaticSecretstaticSecret924922A9", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_SHA1_CLIENT_ID-PoH3YH", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFEPSFHIRSHA1CLIENTSECRETStaticSecretstaticSecret821C6957", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/EPS_FHIR_SHA1_CLIENT_SECRET-jniv8K", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFJWTKIDStaticSecretstaticSecret9CB2E625", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/JWT_KID-OKmrMH", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFJWTPRIVATEKEYStaticSecretstaticSecretE3D04F7A", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/JWT_PRIVATE_KEY-cnmWEH", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFPFPCLIENTIDStaticSecretstaticSecret1748DBCE", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/PFP_CLIENT_ID-P24wPQ", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFPFPCLIENTSECRETStaticSecretstaticSecretA043E20B", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/PFP_CLIENT_SECRET-N7Nnuz", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFPSUCLIENTIDStaticSecretstaticSecretAD54E0C7", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/PSU_CLIENT_ID-ZSSfrr", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsREFPSUCLIENTSECRETStaticSecretstaticSecret788758B6", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/REF/PSU_CLIENT_SECRET-EZzgCg", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA", + "PhysicalResourceId": "f0367481-71dc-437b-9a77-31854c7e04cb", + "ResourceType": "AWS::KMS::Key", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsRegressionTestSecretsKMSKeyAlias3E5FEEF9", + "PhysicalResourceId": "alias/account-resources-cdk-uk-RegressionTestSecretsKMSKey", + "ResourceType": "AWS::KMS::Alias", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "TargetKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsptlPrescriptionSigningPrivateKeyStaticSecretstaticSecretAE253E21", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/ptl-Prescription-SigningPrivateKey-6ATs0O", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + }, + { + "Type": "Resource", + "ResourceChange": { + "Action": "Modify", + "LogicalResourceId": "RegressionTestSecretsptlPrescriptionSigningPublicKeyStaticSecretstaticSecretAC0D3FA6", + "PhysicalResourceId": "arn:aws:secretsmanager:eu-west-2:591291862413:secret:/regression-tests/ptl-Prescription-SigningPublicKey-bN6iNd", + "ResourceType": "AWS::SecretsManager::Secret", + "Replacement": "False", + "Scope": [ + "Properties", + "Tags" + ], + "Details": [ + { + "Target": { + "Attribute": "Properties", + "Name": "KmsKeyId", + "RequiresRecreation": "Never" + }, + "Evaluation": "Dynamic", + "ChangeSource": "ResourceAttribute", + "CausingEntity": "RegressionTestSecretsRegressionTestSecretsKMSKey9D658CAA.Arn" + }, + { + "Target": { + "Attribute": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static" + }, + { + "Target": { + "Attribute": "Properties", + "Name": "Tags", + "RequiresRecreation": "Never" + }, + "Evaluation": "Static", + "ChangeSource": "DirectModification" + } + ] + } + } + ], + "ChangeSetName": "DESTRUCTIVE-account-resources-cdk-uk-changeset-pr-1988-1771588452", + "ChangeSetId": "arn:aws:cloudformation:eu-west-2:591291862413:changeSet/DESTRUCTIVE-account-resources-cdk-uk-changeset-pr-1988-1771588452/c7997f4c-e7a6-4a4a-b4e8-ef6f07db0854", + "StackId": "arn:aws:cloudformation:eu-west-2:591291862413:stack/account-resources-cdk-uk/efbc79b0-cb89-11f0-a7f0-0aa6b3b66477", + "StackName": "account-resources-cdk-uk", + "Description": "CDK Changeset for execution c489aff8-aa64-4b5b-93eb-5a2b79d93d98", + "Parameters": [ + { + "ParameterKey": "BootstrapVersion", + "ParameterValue": "/cdk-bootstrap/hnb659fds/version", + "ResolvedValue": "30" + } + ], + "CreationTime": "2026-02-20T11:54:20.206000+00:00", + "ExecutionStatus": "AVAILABLE", + "Status": "CREATE_COMPLETE", + "StatusReason": null, + "NotificationARNs": [], + "RollbackConfiguration": {}, + "Capabilities": [ + "CAPABILITY_IAM", + "CAPABILITY_NAMED_IAM", + "CAPABILITY_AUTO_EXPAND" + ], + "Tags": [ + { + "Key": "PublicFacing", + "Value": "Y" + }, + { + "Key": "Owner", + "Value": "england.epssupport@nhs.net" + }, + { + "Key": "ServiceCategory", + "Value": "Platinum" + }, + { + "Key": "Customer", + "Value": "NHS England" + }, + { + "Key": "repo", + "Value": "electronic-prescription-service-account-resources" + }, + { + "Key": "commit", + "Value": "6661fabc0f4b8c79cd7f5e197fe6e57e0756aef0" + }, + { + "Key": "stackName", + "Value": "account-resources-cdk-uk" + }, + { + "Key": "DeploymentTool", + "Value": "CDK" + }, + { + "Key": "Product", + "Value": "Account Resources" + }, + { + "Key": "version", + "Value": "pr-1988" + }, + { + "Key": "OnOffPattern", + "Value": "AlwaysOn" + }, + { + "Key": "Programme", + "Value": "EPS" + }, + { + "Key": "data_classification", + "Value": "5" + }, + { + "Key": "TagVersion", + "Value": "1" + }, + { + "Key": "cdkApp", + "Value": "AccountResourcesApp" + }, + { + "Key": "ProjectType", + "Value": "Production" + }, + { + "Key": "DataType", + "Value": "PII" + }, + { + "Key": "Environment", + "Value": "dev-account" + }, + { + "Key": "cfnDriftDetectionGroup", + "Value": "account-resources" + }, + { + "Key": "CostCentre", + "Value": "128997" + } + ], + "ParentChangeSetId": null, + "IncludeNestedStacks": false, + "RootChangeSetId": null, + "OnStackFailure": null, + "ImportExistingResources": false, + "StackDriftStatus": null, + "DeploymentMode": null +}