This repository provides reusable GitHub Actions workflows for building, testing, and packaging TypeScript VS Code extensions across multiple platforms. The repository itself serves as a self-testing infrastructure to validate the workflows.
- Reusable GitHub Actions workflows for TypeScript VS Code extensions
- Self-test infrastructure to validate workflow functionality
For detailed usage instructions, see WORKFLOWS.md.
If you're contributing to or testing the workflows themselves, use these commands:
# Install dependencies
npm install
# Build the project
npm run build
# Run tests with coverage
npm test
# Lint code
npm run lint
# Clean build artifacts
npm run clean
# Package as VSIX
npm run package
# Update TPIP license tracking
npm run tpip:update
# Generate TPIP license report
npm run tpip.github/
├── workflows/
│ ├── build-and-verify.yml # Main reusable workflow
│ └── self-test.yml # Self-testing workflow
├── platform-matrix.json # Example platform configuration
└── WORKFLOWS.md # Comprehensive workflow documentation.
├── src/
│ └── index.ts # Test extension entry point
├── dist/ # Build output
├── scripts/
│ ├── update-tpip.ts # TPIP license tracking updater
│ └── tpip-reporter.ts # TPIP license report generator
├── docs/
│ ├── third-party-licenses.json # TPIP license database
│ └── tpip-header.md # TPIP report header template
├── package.json # Self-test project configuration
├── tsconfig.json # TypeScript configuration
├── jest.config.js # Jest testing configuration
└── tpip.md # Generated TPIP license reportThe self-test infrastructure includes TPIP (Third-Party Intellectual Property) license tracking for testing purposes:
scripts/update-tpip.ts- License tracking updaterscripts/tpip-reporter.ts- Report generatordocs/third-party-licenses.json- License database
Contributions are welcome! This repository serves dual purposes:
- Workflow Improvements: Enhance the reusable
build-and-verify.ymlworkflow - Testing Infrastructure: Improve the self-test setup to validate workflow features
- Workflow Documentation - Complete workflow usage guide
- GitHub Actions Reusable Workflows
This project is licensed under the MIT License, see LICENSE.