Skip to content

LLM-Dev-Ops/forge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GitHub Actions Workflows

This directory contains the CI/CD pipeline configuration for LLM-Forge.

πŸ“‹ Workflows Overview

Workflow Status Trigger Purpose
PR Validation - Pull Requests Code quality checks before merge
CI Pipeline - Push to main/develop Continuous integration
Release - Version tags Automated releases
Security Scan - Push, PR, Daily Security analysis
Performance - Push, PR, Weekly Performance monitoring
Dependabot Auto-Merge - Dependabot PRs Auto-merge dependencies
Stale Management - Daily Clean up inactive issues/PRs

πŸš€ Quick Start

For Contributors

  1. Create a branch

    git checkout -b feature/my-feature
  2. Make changes and commit

    git add .
    git commit -m "feat: add new feature"
  3. Push and create PR

    git push origin feature/my-feature
  4. Wait for checks to pass

    • All PR validation checks must pass
    • Code coverage must be maintained
    • No security vulnerabilities

For Maintainers

  1. Creating a Release

    # Update version in package.json
    npm version 1.2.3 --no-git-tag-version
    
    # Commit and tag
    git add package.json package-lock.json
    git commit -m "chore: bump version to 1.2.3"
    git tag v1.2.3
    git push origin main --tags
  2. Manual Workflow Dispatch

    • Go to Actions tab
    • Select workflow
    • Click "Run workflow"
    • Fill in required inputs

πŸ“Š Workflow Details

Pull Request Validation

What it does:

  • βœ… Type checking
  • βœ… Linting
  • βœ… Format checking
  • βœ… Tests on Node 20 & 21
  • βœ… Coverage verification (92%+ target)
  • βœ… Build verification

When it runs:

  • When PR is opened
  • When PR is updated
  • When PR is ready for review

Notes:

  • Draft PRs are skipped
  • Results posted as PR comment

Continuous Integration

What it does:

  • βœ… Quality checks
  • βœ… Multi-OS testing (Ubuntu, macOS, Windows)
  • βœ… Performance benchmarks
  • βœ… Build verification
  • βœ… Package installation test
  • βœ… Coverage reporting
  • βœ… Documentation deployment

When it runs:

  • On push to main or develop
  • Can be manually triggered

Release Pipeline

What it does:

  • βœ… Version validation
  • βœ… Full test suite
  • βœ… Build package
  • βœ… Publish to npm
  • βœ… Publish to GitHub Packages
  • βœ… Create GitHub release
  • βœ… Generate changelog

When it runs:

  • When version tag is pushed (e.g., v1.2.3)
  • Can be manually triggered

Required Secrets:

  • NPM_TOKEN - npm authentication

Security Scanning

What it does:

  • βœ… Dependency vulnerability scan
  • βœ… CodeQL static analysis
  • βœ… Secret detection
  • βœ… License compliance
  • βœ… SAST analysis
  • βœ… OSSF scorecard

When it runs:

  • On push to main/develop
  • On pull requests
  • Daily at 2 AM UTC
  • Can be manually triggered

Performance Monitoring

What it does:

  • βœ… Run benchmarks
  • βœ… Compare with baseline
  • βœ… Track performance over time
  • βœ… Detect regressions

When it runs:

  • On push to main
  • On pull requests
  • Weekly on Sundays at 3 AM UTC
  • Can be manually triggered

πŸ” Security

Secrets Required

Configure these in Settings > Secrets and variables > Actions:

Secret Description Required For
NPM_TOKEN npm registry token Releases
CODECOV_TOKEN Codecov upload token Coverage reporting

Security Best Practices

  • βœ… All secrets stored in GitHub Secrets
  • βœ… No hardcoded credentials
  • βœ… Automated security scanning
  • βœ… Dependency updates via Dependabot
  • βœ… License compliance checking

πŸ“ˆ Monitoring

Viewing Workflow Runs

  1. Go to the Actions tab
  2. Select a workflow from the left sidebar
  3. View run history and logs

Debugging Failed Workflows

  1. Click on the failed run
  2. Expand the failed job
  3. Review the logs
  4. Check for error messages

Common Issues

Tests fail in CI but pass locally:

  • Ensure you're using the same Node version
  • Run npm ci instead of npm install
  • Check for environment-specific issues

Coverage below threshold:

  • Add tests for new code
  • Run npm run test:coverage locally

Build failures:

  • Check TypeScript errors
  • Ensure all dependencies are installed
  • Verify build configuration

πŸ”„ Workflow Updates

Updating Workflows

  1. Edit workflow files in .github/workflows/
  2. Test on a feature branch first
  3. Create PR with changes
  4. Merge after review

Testing Workflows

# Install act (GitHub Actions local runner)
# https://github.com/nektos/act

# Test a workflow locally
act pull_request

πŸ“š Documentation

🀝 Contributing

See CONTRIBUTING.md for guidelines on contributing to this project.

πŸ“ License

This project is licensed under the Apache-2.0 License - see the LICENSE file for details.


Status: βœ… All workflows operational Last Updated: November 8, 2025

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •