Skip to content

feat: Configure CI/CD with GitHub Actions#19

Closed
devin-ai-integration[bot] wants to merge 3 commits into
mainfrom
devin/1770116122-configure-cicd
Closed

feat: Configure CI/CD with GitHub Actions#19
devin-ai-integration[bot] wants to merge 3 commits into
mainfrom
devin/1770116122-configure-cicd

Conversation

@devin-ai-integration
Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration Bot commented Feb 3, 2026

Summary

This PR configures CI/CD using GitHub Actions with two workflows:

New ci.yml workflow - Runs on PRs and pushes to main:

  • Lint job using ESLint on Node 20
  • Build job testing across Node 18, 20, and 22 (runs in parallel with lint)
  • Uploads build artifacts for Node 20 builds with 7-day retention

Updated npm.yml workflow - Now a scheduled build check:

  • Upgraded from EOL Node versions (16.x, 17.x, 18.x) to modern versions (18, 20, 22)
  • Updated to actions/checkout@v4 and actions/setup-node@v4
  • Added lint step
  • Added workflow_dispatch for manual triggers

Note: npm caching is not used because package-lock.json is gitignored in this repository. Uses npm install instead of npm ci.

Updates since last revision

  • Removed npm caching (incompatible with gitignored package-lock.json)
  • Made lint and build jobs run independently (lint failures won't block build)
  • Changed from npm ci to npm install

Review & Testing Checklist for Human

  • Known issue: The lint job will fail due to pre-existing lint errors in the codebase (Math.random() calls during render in Charts.js, MainChart.js, Widgets.js). This is non-blocking but consider fixing these errors separately.
  • Verify the workflow triggers match your branching strategy (currently: push to main, PRs targeting main)
  • Confirm Node 18/20/22 version matrix is appropriate for your deployment targets

Test Plan: After merging, create a test PR to verify the CI workflow runs correctly. Check that the scheduled workflow can be manually triggered via workflow_dispatch.

Notes

- Add new ci.yml workflow for PR and push CI checks
  - Lint job runs ESLint on Node 20
  - Build job tests across Node 18, 20, 22
  - Upload build artifacts for Node 20 builds
  - Use npm ci for faster, reproducible installs
  - Enable npm caching for improved performance

- Update npm.yml for scheduled builds
  - Upgrade to modern Node versions (18, 20, 22)
  - Update to actions/checkout@v4 and actions/setup-node@v4
  - Add lint step to scheduled builds
  - Add workflow_dispatch for manual triggers
  - Use npm ci instead of npm install
@devin-ai-integration
Copy link
Copy Markdown
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

- Remove cache: 'npm' from setup-node steps
- Use npm install instead of npm ci (no lock file available)
- Remove needs: lint dependency from build job
- Lint and build now run in parallel
- Pre-existing lint errors won't block build verification
@devin-ai-integration devin-ai-integration Bot deleted the devin/1770116122-configure-cicd branch April 24, 2026 22:03
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.

0 participants