Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[@aws-cdk/pipelines] Pipeline always re runs after self mutate #9117

Closed
seawatts opened this issue Jul 16, 2020 · 2 comments
Closed

[@aws-cdk/pipelines] Pipeline always re runs after self mutate #9117

seawatts opened this issue Jul 16, 2020 · 2 comments
Assignees
Labels
@aws-cdk/pipelines CDK Pipelines library bug This issue is a bug. p1

Comments

@seawatts
Copy link

Even when I don't change anything in the pipeline, it always restarts after releasing changes to the pipeline.

Reproduction Steps

Create a aws-cdk/pipeline construct and add a ECS Fargate asset

Output

CDK Diff

[
  {
    "resourceChange": {
      "logicalResourceId": "Pipeline9850B417",
      "action": "Modify",
      "physicalResourceId": "ShufflPipeline",
      "resourceType": "AWS::CodePipeline::Pipeline",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsDockerAsset24C8664DB",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssets495a802808a0d662a605ff7ba9978581e86f81df7211651594bfb9f5e2dd9722CodePipelineActionRoleCB6AADF6.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Dynamic",
          "changeSource": "DirectModification"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsbab1aa5c489d7b92e3482774c68e42fb32bb74eba21a204ccfcbfc8a89afb1b1CodePipelineActionRoleF2B23666.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsFileAsset3FE71B523",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsDockerAsset1D66D1104",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsFileAsset474303B7D",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssets265723e82313fa5725da89aa6feda33e355ebbaa7d0a8230450bfe25341100d0CodePipelineActionRole876921F4.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "Stages",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetse3c524a7ace4e0091c0eaed0074349922a86bfc8809c5929dbdeb19fa293a29aCodePipelineActionRole9153A062.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets265723e82313fa5725da89aa6feda33e355ebbaa7d0a8230450bfe25341100d0CodePipelineActionRole876921F4",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets265723e82313fa5725da89aa6feda33e355ebbaa7d0a8230450bfe25341100d0CodePipelineActionRoleDefaultPolicy4CB013E8",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets495a802808a0d662a605ff7ba9978581e86f81df7211651594bfb9f5e2dd9722CodePipelineActionRoleCB6AADF6",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets495a802808a0d662a605ff7ba9978581e86f81df7211651594bfb9f5e2dd9722CodePipelineActionRoleDefaultPolicy647C74EA",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets5c63b3c2bde5026ea38a9da26cbb6513570a4223696d9ee74e5b6632b9210aa6CodePipelineActionRoleDefaultPolicy86A2E038",
      "action": "Remove",
      "physicalResourceId": "Pipel-Pipe-M320A62V2R3E",
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets5c63b3c2bde5026ea38a9da26cbb6513570a4223696d9ee74e5b6632b9210aa6CodePipelineActionRoleF85EE779",
      "action": "Remove",
      "physicalResourceId": "PipelineStack-PipelineAssets5c63b3c2bde5026ea38a9d-XE10LZLANEMI",
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets90601077711945915a5877537898aaf2f991048a6a138ed3b73463a94c6556dcCodePipelineActionRoleB9FE9604",
      "action": "Remove",
      "physicalResourceId": "PipelineStack-PipelineAssets90601077711945915a5877-1L5ZORSYGGYMK",
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssets90601077711945915a5877537898aaf2f991048a6a138ed3b73463a94c6556dcCodePipelineActionRoleDefaultPolicy04E0AA1B",
      "action": "Remove",
      "physicalResourceId": "Pipel-Pipe-1DGS37ZEI92T",
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsDockerAsset1D66D1104",
      "action": "Modify",
      "physicalResourceId": "PipelineAssetsDockerAsset1D-pbz1jsX5noqG",
      "resourceType": "AWS::CodeBuild::Project",
      "replacement": "Conditional",
      "details": [
        {
          "target": {
            "name": "Source",
            "requiresRecreation": "Conditionally",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Static",
          "changeSource": "DirectModification"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsDockerAsset1RoleDefaultPolicyFB41D40A",
      "action": "Modify",
      "physicalResourceId": "Pipel-Pipe-AEPRKYGZYCWS",
      "resourceType": "AWS::IAM::Policy",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsDockerAsset1D66D1104",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsDockerAsset24C8664DB",
      "action": "Modify",
      "physicalResourceId": "PipelineAssetsDockerAsset24-Ket4Eejl50KT",
      "resourceType": "AWS::CodeBuild::Project",
      "replacement": "Conditional",
      "details": [
        {
          "target": {
            "name": "Source",
            "requiresRecreation": "Conditionally",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Static",
          "changeSource": "DirectModification"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsDockerAsset2RoleDefaultPolicyC12ACFF1",
      "action": "Modify",
      "physicalResourceId": "Pipel-Pipe-1U02L4FWK3DFO",
      "resourceType": "AWS::IAM::Policy",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsDockerAsset24C8664DB",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsFileAsset3FE71B523",
      "action": "Modify",
      "physicalResourceId": "PipelineAssetsFileAsset3FE7-VLg0AHRj7jUK",
      "resourceType": "AWS::CodeBuild::Project",
      "replacement": "Conditional",
      "details": [
        {
          "target": {
            "name": "Source",
            "requiresRecreation": "Conditionally",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Static",
          "changeSource": "DirectModification"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsFileAsset3RoleDefaultPolicy537C3904",
      "action": "Modify",
      "physicalResourceId": "Pipel-Pipe-BNGFA4KCSDNU",
      "resourceType": "AWS::IAM::Policy",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsFileAsset3FE71B523",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsFileAsset474303B7D",
      "action": "Modify",
      "physicalResourceId": "PipelineAssetsFileAsset4743-aU5m7xLj1QJZ",
      "resourceType": "AWS::CodeBuild::Project",
      "replacement": "Conditional",
      "details": [
        {
          "target": {
            "name": "Source",
            "requiresRecreation": "Conditionally",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Static",
          "changeSource": "DirectModification"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsFileAsset4RoleDefaultPolicyBB214FC5",
      "action": "Modify",
      "physicalResourceId": "Pipel-Pipe-1WCA9UJDEC86G",
      "resourceType": "AWS::IAM::Policy",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsFileAsset474303B7D",
          "evaluation": "Dynamic",
          "changeSource": "ResourceReference"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsbab1aa5c489d7b92e3482774c68e42fb32bb74eba21a204ccfcbfc8a89afb1b1CodePipelineActionRoleDefaultPolicy526AF502",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsbab1aa5c489d7b92e3482774c68e42fb32bb74eba21a204ccfcbfc8a89afb1b1CodePipelineActionRoleF2B23666",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetse0dfd73a9c4cec3275839c63786af03c249177e6b45ec23627f9f526d52187b9CodePipelineActionRoleDefaultPolicy7CF62737",
      "action": "Remove",
      "physicalResourceId": "Pipel-Pipe-QQBUHV4AOZ93",
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetse0dfd73a9c4cec3275839c63786af03c249177e6b45ec23627f9f526d52187b9CodePipelineActionRoleE06ADFBE",
      "action": "Remove",
      "physicalResourceId": "PipelineStack-PipelineAssetse0dfd73a9c4cec3275839c-12D0OP18D7ISU",
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetse3c524a7ace4e0091c0eaed0074349922a86bfc8809c5929dbdeb19fa293a29aCodePipelineActionRole9153A062",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetse3c524a7ace4e0091c0eaed0074349922a86bfc8809c5929dbdeb19fa293a29aCodePipelineActionRoleDefaultPolicy7856FF58",
      "action": "Add",
      "physicalResourceId": null,
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsf4cdf201dfc05fbad23401963706389951eb8341cf6cd4d9c50f2c6bdb35ac0fCodePipelineActionRole873CD88B",
      "action": "Remove",
      "physicalResourceId": "PipelineStack-PipelineAssetsf4cdf201dfc05fbad23401-GFRTRTX9QAIV",
      "resourceType": "AWS::IAM::Role",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineAssetsf4cdf201dfc05fbad23401963706389951eb8341cf6cd4d9c50f2c6bdb35ac0fCodePipelineActionRoleDefaultPolicyCD6D3121",
      "action": "Remove",
      "physicalResourceId": "Pipel-Pipe-18YK1ON5TG6HZ",
      "resourceType": "AWS::IAM::Policy",
      "replacement": null,
      "details": [],
      "scope": []
    },
    "type": "Resource"
  },
  {
    "resourceChange": {
      "logicalResourceId": "PipelineRoleDefaultPolicy7BDC1ABB",
      "action": "Modify",
      "physicalResourceId": "Pipel-Pipe-1SHND0AGUR0DT",
      "resourceType": "AWS::IAM::Policy",
      "replacement": "False",
      "details": [
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetsbab1aa5c489d7b92e3482774c68e42fb32bb74eba21a204ccfcbfc8a89afb1b1CodePipelineActionRoleF2B23666.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssetse3c524a7ace4e0091c0eaed0074349922a86bfc8809c5929dbdeb19fa293a29aCodePipelineActionRole9153A062.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssets265723e82313fa5725da89aa6feda33e355ebbaa7d0a8230450bfe25341100d0CodePipelineActionRole876921F4.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        },
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": null,
          "evaluation": "Dynamic",
          "changeSource": "DirectModification"
        },
        {
          "target": {
            "name": "PolicyDocument",
            "requiresRecreation": "Never",
            "attribute": "Properties"
          },
          "causingEntity": "PipelineAssets495a802808a0d662a605ff7ba9978581e86f81df7211651594bfb9f5e2dd9722CodePipelineActionRoleCB6AADF6.Arn",
          "evaluation": "Static",
          "changeSource": "ResourceAttribute"
        }
      ],
      "scope": [
        "Properties"
      ]
    },
    "type": "Resource"
  }
]

Environment

  • **CLI Version :1.51.0
  • **Framework Version:1.51.0
  • Node.js Version: 14.5.0
  • **OS :Mac 10.15.4
  • Language (Version): Typescript (3.9.6)

This is 🐛 Bug Report

@seawatts seawatts added bug This issue is a bug. needs-triage This issue or PR still needs to be triaged. labels Jul 16, 2020
@SomayaB SomayaB changed the title [aws-cdk/pipelines] Pipeline always re runs after self mutate [@aws-cdk/pipelines] Pipeline always re runs after self mutate Jul 16, 2020
@github-actions github-actions bot added the @aws-cdk/pipelines CDK Pipelines library label Jul 16, 2020
@ericzbeard
Copy link
Contributor

Looks like a duplicate of #9080

@ericzbeard ericzbeard added p1 and removed needs-triage This issue or PR still needs to be triaged. labels Jul 16, 2020
@seawatts
Copy link
Author

@ericzbeard I think you're right. I'll close this one out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
@aws-cdk/pipelines CDK Pipelines library bug This issue is a bug. p1
Projects
None yet
Development

No branches or pull requests

3 participants