How to ignore AWS CodePipeline Approval automatically in less than 7 days











up vote
1
down vote

favorite












I have been using AWS for more than a year now. Lately, I have been focusing on building a CI/CD Pipeline.



My pipeline has 4 stages:





  • Source (Github)


  • Testing (using CodeBuild)


  • Staging (deploys to Staging)

  • Manual Approval


  • Prod (deploys to Staging)


According to this AWS Doc, If no response is submitted within seven days, the action is marked as "Failed."



The Pipeline is relatively active (several deploys to staging per day) and what I found out is, that the Approvals "queue" and you have to Approve many times before the most recent changes get to Production.



Is there a way to set the expiration time of an Approval to less than 7 days?










share|improve this question







New contributor




Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    up vote
    1
    down vote

    favorite












    I have been using AWS for more than a year now. Lately, I have been focusing on building a CI/CD Pipeline.



    My pipeline has 4 stages:





    • Source (Github)


    • Testing (using CodeBuild)


    • Staging (deploys to Staging)

    • Manual Approval


    • Prod (deploys to Staging)


    According to this AWS Doc, If no response is submitted within seven days, the action is marked as "Failed."



    The Pipeline is relatively active (several deploys to staging per day) and what I found out is, that the Approvals "queue" and you have to Approve many times before the most recent changes get to Production.



    Is there a way to set the expiration time of an Approval to less than 7 days?










    share|improve this question







    New contributor




    Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      I have been using AWS for more than a year now. Lately, I have been focusing on building a CI/CD Pipeline.



      My pipeline has 4 stages:





      • Source (Github)


      • Testing (using CodeBuild)


      • Staging (deploys to Staging)

      • Manual Approval


      • Prod (deploys to Staging)


      According to this AWS Doc, If no response is submitted within seven days, the action is marked as "Failed."



      The Pipeline is relatively active (several deploys to staging per day) and what I found out is, that the Approvals "queue" and you have to Approve many times before the most recent changes get to Production.



      Is there a way to set the expiration time of an Approval to less than 7 days?










      share|improve this question







      New contributor




      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I have been using AWS for more than a year now. Lately, I have been focusing on building a CI/CD Pipeline.



      My pipeline has 4 stages:





      • Source (Github)


      • Testing (using CodeBuild)


      • Staging (deploys to Staging)

      • Manual Approval


      • Prod (deploys to Staging)


      According to this AWS Doc, If no response is submitted within seven days, the action is marked as "Failed."



      The Pipeline is relatively active (several deploys to staging per day) and what I found out is, that the Approvals "queue" and you have to Approve many times before the most recent changes get to Production.



      Is there a way to set the expiration time of an Approval to less than 7 days?







      amazon-web-services devops aws-codepipeline






      share|improve this question







      New contributor




      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked Nov 16 at 12:15









      Asem Hasna

      62




      62




      New contributor




      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Asem Hasna is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          There actually isn't a queue, but while an approval action is in-progress it holds the stage "lock" for that stage so that the change in that stage does not change underneath you while you run manual testing.



          While that stage lock is held, there is a "slot" for the change waiting to be promoted into that stage when the stage lock is released. As newer changes pass the previous stage they will replace the change in the slot. Therefore, when you approve or reject a manual approval action, only the most recent pending change is promoted.



          Rather than a manual approval, you might want to just disable the transition between staging and prod. Disabling the transition won't hold the lock in either stage, so when you enable it again the most recent change will be promoted.



          Transitions are better for when you want to simply control when you deploy to prod, and manual approvals are better when you want to run some manual testing against a consistent version.



          See this documentation on transitions: https://docs.aws.amazon.com/codepipeline/latest/userguide/transitions.html






          share|improve this answer





















          • I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
            – Asem Hasna
            yesterday











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });






          Asem Hasna is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53337737%2fhow-to-ignore-aws-codepipeline-approval-automatically-in-less-than-7-days%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          0
          down vote













          There actually isn't a queue, but while an approval action is in-progress it holds the stage "lock" for that stage so that the change in that stage does not change underneath you while you run manual testing.



          While that stage lock is held, there is a "slot" for the change waiting to be promoted into that stage when the stage lock is released. As newer changes pass the previous stage they will replace the change in the slot. Therefore, when you approve or reject a manual approval action, only the most recent pending change is promoted.



          Rather than a manual approval, you might want to just disable the transition between staging and prod. Disabling the transition won't hold the lock in either stage, so when you enable it again the most recent change will be promoted.



          Transitions are better for when you want to simply control when you deploy to prod, and manual approvals are better when you want to run some manual testing against a consistent version.



          See this documentation on transitions: https://docs.aws.amazon.com/codepipeline/latest/userguide/transitions.html






          share|improve this answer





















          • I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
            – Asem Hasna
            yesterday















          up vote
          0
          down vote













          There actually isn't a queue, but while an approval action is in-progress it holds the stage "lock" for that stage so that the change in that stage does not change underneath you while you run manual testing.



          While that stage lock is held, there is a "slot" for the change waiting to be promoted into that stage when the stage lock is released. As newer changes pass the previous stage they will replace the change in the slot. Therefore, when you approve or reject a manual approval action, only the most recent pending change is promoted.



          Rather than a manual approval, you might want to just disable the transition between staging and prod. Disabling the transition won't hold the lock in either stage, so when you enable it again the most recent change will be promoted.



          Transitions are better for when you want to simply control when you deploy to prod, and manual approvals are better when you want to run some manual testing against a consistent version.



          See this documentation on transitions: https://docs.aws.amazon.com/codepipeline/latest/userguide/transitions.html






          share|improve this answer





















          • I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
            – Asem Hasna
            yesterday













          up vote
          0
          down vote










          up vote
          0
          down vote









          There actually isn't a queue, but while an approval action is in-progress it holds the stage "lock" for that stage so that the change in that stage does not change underneath you while you run manual testing.



          While that stage lock is held, there is a "slot" for the change waiting to be promoted into that stage when the stage lock is released. As newer changes pass the previous stage they will replace the change in the slot. Therefore, when you approve or reject a manual approval action, only the most recent pending change is promoted.



          Rather than a manual approval, you might want to just disable the transition between staging and prod. Disabling the transition won't hold the lock in either stage, so when you enable it again the most recent change will be promoted.



          Transitions are better for when you want to simply control when you deploy to prod, and manual approvals are better when you want to run some manual testing against a consistent version.



          See this documentation on transitions: https://docs.aws.amazon.com/codepipeline/latest/userguide/transitions.html






          share|improve this answer












          There actually isn't a queue, but while an approval action is in-progress it holds the stage "lock" for that stage so that the change in that stage does not change underneath you while you run manual testing.



          While that stage lock is held, there is a "slot" for the change waiting to be promoted into that stage when the stage lock is released. As newer changes pass the previous stage they will replace the change in the slot. Therefore, when you approve or reject a manual approval action, only the most recent pending change is promoted.



          Rather than a manual approval, you might want to just disable the transition between staging and prod. Disabling the transition won't hold the lock in either stage, so when you enable it again the most recent change will be promoted.



          Transitions are better for when you want to simply control when you deploy to prod, and manual approvals are better when you want to run some manual testing against a consistent version.



          See this documentation on transitions: https://docs.aws.amazon.com/codepipeline/latest/userguide/transitions.html







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 16 at 21:23









          TimB

          63124




          63124












          • I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
            – Asem Hasna
            yesterday


















          • I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
            – Asem Hasna
            yesterday
















          I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
          – Asem Hasna
          yesterday




          I never thought about disabling the transition as an "approval" ... good idea! Thanks! @TimB
          – Asem Hasna
          yesterday










          Asem Hasna is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          Asem Hasna is a new contributor. Be nice, and check out our Code of Conduct.













          Asem Hasna is a new contributor. Be nice, and check out our Code of Conduct.












          Asem Hasna is a new contributor. Be nice, and check out our Code of Conduct.















           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53337737%2fhow-to-ignore-aws-codepipeline-approval-automatically-in-less-than-7-days%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

          Alcedinidae

          Origin of the phrase “under your belt”?