Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    How to prevent concurrent releases for a single application

    Scheduled Pinned Locked Moved Support
    releasesbuildmaster
    6 Posts 2 Posters 11 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D Offline
      dwynn_6489
      last edited by

      We have multiple releases configured for an application. If one release is in progress, and a second release is triggered, the second release will run and possibly interfere with the first release.

      Is there a way to prevent this, so only one release can run at a time for a single application?

      Product: BuildMaster
      Version: 5.5.1

      1 Reply Last reply Reply Quote 0
      • ? This user is from outside of this forum
        Guest
        last edited by

        Are you referring to Legacy Release Package URL Triggers? If so, there is an option to let you select the latest release instead of all releases.

        The new Release & Package Deployment will give you much more control, so we suggest to transition to that when possible.

        1 Reply Last reply Reply Quote 0
        • D Offline
          dwynn_6489
          last edited by

          We don't use URL triggers. This behavior occurs when the jobs are run manually (by clicking "Create Package"). It also occurs when we use Schedule Triggers.

          1 Reply Last reply Reply Quote 0
          • ? This user is from outside of this forum
            Guest
            last edited by

            I see, so you mean, deployment executions? In other words, you don't want two deployment executions (regardless of release) running on the same application?

            Generally speaking, this is safe to do; it's just certain parts of the deployment plan will have problems. For this situation, you can use a lock execution directive (with a global specifier). This ensures only that block is run at a time.

            For example...

            with lock=!sharedrive
            {
               ... operations that access a share drive exclusively go here ...
            }
            
            1 Reply Last reply Reply Quote 0
            • D Offline
              dwynn_6489
              last edited by

              In 4.9, BuildMaster handled this automatically and queued up any executions if there was one already running for an application. Was this behavior deprecated in 5.x?

              1 Reply Last reply Reply Quote 0
              • ? This user is from outside of this forum
                Guest
                last edited by

                Yes; that behavior was added in v3 because there were a lot of execution collisions (the default working directory used the ApplicationId). This was undesired by nearly all users.

                The v5 engine uses ExecutionId for the default working directory,, and any collisions outside of working directories should be resolvable with a global lock.

                1 Reply Last reply Reply Quote 0

                Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                With your input, this post could be even better 💗

                Register Login
                • 1 / 1
                • First post
                  Last post
                Inedo Website Home • Support Home • Code of Conduct • Forums Guide • Documentation