test(cli): fix Windows path separator issues in npm integration tests #312
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: 🚀 CI Pipeline | |
| # Dependencies: | |
| # - SocketDev/socket-registry/.github/workflows/ci.yml | |
| on: | |
| push: | |
| branches: [main] | |
| tags: ['*'] | |
| paths: | |
| - 'packages/cli/**' | |
| - 'pnpm-lock.yaml' | |
| - 'package.json' | |
| - '.github/workflows/ci.yml' | |
| pull_request: | |
| branches: [main] | |
| paths: | |
| - 'packages/cli/**' | |
| - 'pnpm-lock.yaml' | |
| - 'package.json' | |
| - '.github/workflows/ci.yml' | |
| workflow_dispatch: | |
| inputs: | |
| skip-tests: | |
| description: 'Skip test execution' | |
| required: false | |
| type: boolean | |
| default: false | |
| node-versions: | |
| description: 'Node.js versions to test (JSON array)' | |
| required: false | |
| type: string | |
| default: '[20, 22, 24]' | |
| permissions: | |
| contents: read | |
| jobs: | |
| ci: | |
| name: Run CI Pipeline | |
| uses: SocketDev/socket-registry/.github/workflows/ci.yml@d8ff3b0581d799466cfbf150f715c1a4bf9f84a5 # 2025-10-23 | |
| with: | |
| test-setup-script: 'echo "=== Build Setup Debug ===" && pwd && echo "Before build:" && (ls -la packages/cli/ 2>/dev/null || dir packages\\cli\\ || true) && pnpm --filter @socketsecurity/cli run build && echo "After build:" && (ls -la packages/cli/dist/ 2>/dev/null || dir packages\\cli\\dist\\ || true) && echo "Checking cli.js:" && (ls -la packages/cli/dist/cli.js 2>/dev/null || dir packages\\cli\\dist\\cli.js || true) && echo "=== Build Setup Complete ==="' | |
| lint-script: 'pnpm --filter @socketsecurity/cli run check' | |
| type-check-script: 'pnpm --filter @socketsecurity/cli run type' | |
| test-script: ${{ inputs.skip-tests && 'echo "Tests skipped"' || 'pnpm --filter @socketsecurity/cli run test:unit' }} | |
| node-versions: ${{ inputs.node-versions || '[20, 22, 24]' }} | |
| os-versions: '["ubuntu-latest", "macos-latest", "windows-latest"]' | |
| fail-fast: false |