fix: Resolve path resolution issues and revert package name #37
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: StrRay Framework CI/CD v1.0.0 | |
| on: | |
| push: | |
| branches: [ main, master, develop ] | |
| pull_request: | |
| branches: [ main, master ] | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node-version: [18.x, 20.x] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Type check | |
| run: npm run typecheck | |
| - name: Lint code | |
| run: npm run lint | |
| - name: Run tests | |
| run: timeout 600 npm test -- --reporter=verbose --run | |
| - name: Run comprehensive path resolution test | |
| run: timeout 30 node scripts/test-comprehensive-path-resolution.mjs | |
| build: | |
| needs: test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js 18.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18.x | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Build application | |
| run: npm run build | |
| - name: Run build validation | |
| run: npm run validate | |
| - name: CI/CD Health Check | |
| run: npm run ci-report | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GITHUB_REPOSITORY: ${{ github.repository }} | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: strray-build-${{ github.sha }} | |
| path: | | |
| dist/ | |
| docs/ | |
| performance-test: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js 18.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18.x | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Run performance tests | |
| run: npm run test:performance | |
| - name: Generate performance report | |
| run: npm run performance:report | |
| - name: Run performance gates | |
| run: npm run performance:gates | |
| continue-on-error: true | |
| architect-test: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js 18.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18.x | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Run architect agent tests | |
| run: npm run test:architect | |
| e2e-test: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js 18.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18.x | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Run E2E integration tests | |
| run: npm run test:e2e | |
| security-scan: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js 18.x | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18.x | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Run npm audit for vulnerabilities | |
| run: | | |
| echo "🔍 Running security vulnerability scan..." | |
| npm audit --audit-level moderate --production || true | |
| echo "📊 Security scan completed - check output above for any issues" | |
| - name: Generate security report | |
| run: | | |
| echo "## Security Audit Report" >> security-report.md | |
| echo "" >> security-report.md | |
| echo "### NPM Audit Results" >> security-report.md | |
| echo "\`\`\`" >> security-report.md | |
| npm audit --audit-level moderate --production --json | jq -r '.vulnerabilities | to_entries[] | "- \(.key): \(.value.severity) severity"' >> security-report.md || echo "No vulnerabilities found or audit failed" >> security-report.md | |
| echo "\`\`\`" >> security-report.md | |
| echo "" >> security-report.md | |
| echo "### Recommendations" >> security-report.md | |
| echo "- Run \`npm audit fix\` to fix available vulnerabilities" >> security-report.md | |
| echo "- Review and update dependencies regularly" >> security-report.md | |
| echo "- Consider security patches for production deployments" >> security-report.md | |
| cat security-report.md |