Skip to content

Bug: CI/CD pipeline is currently failing #600

@piyushkdas0611

Description

@piyushkdas0611

The GitHub Actions CI/CD pipeline is currently failing due to several configuration issues that prevent proper testing and deployment of the application.

Issues Identified

1. Outdated GitHub Actions Versions

  • Using deprecated actions/checkout@v5.0.0 and actions/setup-node@v5.0.0
  • Using outdated actions/github-script@v6 in automation workflows

2. Node.js Configuration Issues

  • Missing Node.js version specification in CI workflows
  • Inconsistent Node.js versions across different jobs
  • No dependency caching configured

3. Dependency Management Problems

  • Root package.json contains conflicting dependencies (Vite, React)
  • CI attempts to install dependencies in wrong directories
  • Using npm ci without proper package-lock.json handling

4. Health Check Failures

  • Flaky health checks with inadequate wait times
  • Poor process management leading to hanging processes
  • Inconsistent port configurations

5. Workflow Structure Issues

  • Redundant npm install in root directory before switching to subdirectories
  • Missing build validation steps
  • Improper working directory configurations

Proposed Solutions

Immediate Fixes Required:

  1. Update GitHub Actions versions:

    • actions/checkout@v4
    • actions/setup-node@v4
    • actions/github-script@v7
  2. Fix Node.js configuration:

    • Specify Node.js 18 explicitly
    • Use consistent versions across all jobs
    • Add proper dependency caching
  3. Clean up package.json files:

    • Remove conflicting dependencies from root package.json
    • Add useful npm scripts for project management
    • Ensure proper separation between client and server dependencies
  4. Improve CI workflow structure:

    • Use working-directory for better path management
    • Add build validation steps
    • Implement proper process management for health checks
  5. Enhanced error handling:

    • Better process termination
    • More robust health check logic
    • Proper timeout handling

Files to be Modified:

  • .github/workflows/ci.yml - Main CI pipeline
  • .github/workflows/pr-create-automate-message.yml - PR automation
  • .github/workflows/issue-create-automate-message.yml - Issue automation
  • package.json (root) - Clean up dependencies and add scripts
  • Add .github/workflows/test-build.yml - Manual testing workflow
  • Add .github/README.md - Documentation for workflows

Expected Benefits:

✅ Reliable CI/CD pipeline execution
✅ Faster build times with dependency caching
✅ Better error reporting and debugging
✅ Consistent development environment
✅ Reduced maintenance overhead

Implementation Priority:

  • High: Fix CI pipeline (ci.yml)
  • Medium: Update automation workflows
  • Low: Add documentation and test workflows

Testing Plan:

  1. Test frontend build process
  2. Test backend startup and health checks
  3. Verify automation workflows on test PRs/issues
  4. Monitor workflow execution times

This issue addresses critical infrastructure problems that affect all contributors and should be prioritized for immediate resolution.

Metadata

Metadata

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions