Skip to content

build: update CI/CD workflows and deployment scripts#94

Merged
vcnainala merged 7 commits intodevelopmentfrom
CI-CD-updates
Feb 16, 2026
Merged

build: update CI/CD workflows and deployment scripts#94
vcnainala merged 7 commits intodevelopmentfrom
CI-CD-updates

Conversation

@NishaSharma14
Copy link
Contributor

No description provided.

Copy link

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

Updates the project’s deployment and CI/CD automation, including a revamped “zero downtime” deploy script, streamlined Docker Compose definitions for dev/prod, and updated GitHub Actions workflows for releases and Docker image publishing.

Changes:

  • Reworked ops/zero-downtime-deployment-script.sh to deploy multiple services with structured logging, health-check gating, and cleanup.
  • Simplified ops/docker-compose-*.yml by focusing on Traefik + core services and introducing a shared volume.
  • Updated GitHub Actions workflows (Release Please + dev/prod Docker builds) with newer actions, caching, manual prod gating, and conditional builds.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 16 comments.

Show a summary per file
File Description
ops/zero-downtime-deployment-script.sh Adds logging, multi-service deploy, health-check wait, and cleanup logic for deployments.
ops/docker-compose-prod.yml Refactors production compose services/images and volumes.
ops/docker-compose-dev.yml Refactors dev compose services/images, Traefik config, and volumes.
env.template Adjusts default database username value.
.github/workflows/release-please.yml Updates Release Please workflow configuration and trigger options.
.github/workflows/prod-build.yml Reworks production Docker build/push workflow with guard, caching, and conditional builds.
.github/workflows/dev-build.yml Reworks dev Docker build/push workflow with caching and conditional builds.

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

Comment on lines 9 to +12
jobs:
test_and_lint:
uses: NFDI4Chem/nmrkit/.github/workflows/test.yml@main

release-please:
runs-on: ubuntu-latest
needs: test_and_lint
permissions:
Copy link

Copilot AI Feb 16, 2026

Choose a reason for hiding this comment

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

The workflow no longer runs the reusable test.yml job before executing release-please. This allows release-please to create release PRs/tags even if the current main build is broken. Consider restoring the test job dependency (or ensure an equivalent required status check/branch protection exists).

Copilot uses AI. Check for mistakes.
Comment on lines +35 to +36
# test_and_lint:
# uses: NFDI4Chem/nmrkit/.github/workflows/test.yml@main
Copy link

Copilot AI Feb 16, 2026

Choose a reason for hiding this comment

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

Tests/linting are commented out (test_and_lint / needs) in the prod image publish workflow. This can push a broken latest image to Docker Hub. Consider re-enabling the reusable test.yml workflow and gating build_and_push_to_registry on it.

Suggested change
# test_and_lint:
# uses: NFDI4Chem/nmrkit/.github/workflows/test.yml@main
test_and_lint:
uses: NFDI4Chem/nmrkit/.github/workflows/test.yml@main

Copilot uses AI. Check for mistakes.
Comment on lines 47 to 51
nmr-respredict:
#build: ./app/scripts/nmr-respredict
image: nfdi4chem/nmr-respredict:dev-latest
entrypoint: /bin/sh
stdin_open: true
Copy link

Copilot AI Feb 16, 2026

Choose a reason for hiding this comment

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

nmr-respredict no longer sets container_name: nmr-respredict, but the API code uses docker exec nmr-respredict .... With default compose naming (project/service/index), those calls will not find the container unless container naming/service discovery is addressed.

Copilot uses AI. Check for mistakes.
@vcnainala vcnainala merged commit 94999b0 into development Feb 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update CI/CD and deployment script

2 participants

Comments