Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 21, 2025

Multiple concurrent workflow runs overwrite each other's files in S3. Both dev-deploy.yml and publish.yml now enforce single-deployment concurrency per environment.

Changes

  • Added concurrency blocks to both workflows with cancel-in-progress: false
  • dev-deploy group for dev environment deployments
  • prod-deploy group for production environment deployments
concurrency:
  group: dev-deploy
  cancel-in-progress: false

New deployments queue instead of running concurrently. Each environment has isolated concurrency control.

Original prompt

This section details on the original issue you should resolve

<issue_title>Set maximum concurrency of dev and prod deploy tasks to one</issue_title>
<issue_description># Overview
Multiple builds running at the same time will write over each other in S3. We need to be sure only a single build can run at a time in a given environment or application. We need to modify the publish.yml and dev-deploy.yml github workflows to have a max concurrency of one.</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI changed the title [WIP] Set maximum concurrency for dev and prod deploy tasks to one Add concurrency controls to prevent concurrent S3 deployments Nov 21, 2025
Copilot AI requested a review from NoopDog November 21, 2025 08:10
Copilot finished work on behalf of NoopDog November 21, 2025 08:10
@NoopDog NoopDog force-pushed the copilot/set-max-concurrency-deploy-tasks branch from 5905bbf to cc30841 Compare November 21, 2025 08:17
@NoopDog NoopDog changed the title Add concurrency controls to prevent concurrent S3 deployments fix: add concurrency controls to prevent concurrent S3 deployments (957) Nov 21, 2025
@NoopDog NoopDog requested review from Copilot and hunterckx November 21, 2025 08:26
Copilot finished reviewing on behalf of NoopDog November 21, 2025 08:28
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds concurrency controls to GitHub Actions workflows to prevent race conditions where multiple concurrent workflow runs could overwrite each other's files during S3 deployments. The solution implements environment-specific concurrency groups that queue deployments instead of running them concurrently.

  • Added concurrency blocks with cancel-in-progress: false to ensure deployments queue rather than run simultaneously
  • Separate concurrency groups for dev (dev-deploy) and production (prod-deploy) environments to allow independent deployment pipelines
  • Prevents file corruption and overwrite issues in S3 buckets caused by concurrent aws s3 sync operations

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/dev-deploy.yml Added dev-deploy concurrency group to serialize deployments to the development S3 bucket
.github/workflows/publish.yml Added prod-deploy concurrency group to serialize deployments to the production S3 bucket

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@NoopDog NoopDog marked this pull request as ready for review November 21, 2025 08:31
@hunterckx hunterckx merged commit dcbdd34 into main Nov 21, 2025
9 of 10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Set maximum concurrency of dev and prod deploy tasks to one

3 participants