forked from automazeio/ccpm
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
epic:vscode-extensionTasks for vscode-extensionTasks for vscode-extensiontaskIndividual taskIndividual task
Description
Task: Configure VSCE packaging and publishing workflow
Description
Set up the VSCode Extension (VSCE) packaging and publishing workflow to enable automated building and publishing of the extension to the VSCode marketplace. This includes configuring VSCE, creating build scripts, and setting up CI/CD automation for releases.
Acceptance Criteria
- VSCE tool installed and configured in project
- Package script creates valid .vsix file
- Publish script configured with proper authentication
- Pre-publish validation runs (tests, linting, type checking)
- CI/CD workflow configured for automated publishing
- Version bumping workflow documented
- .vscodeignore configured to exclude unnecessary files
- Extension successfully packages without errors or warnings
Technical Details
- Install vsce as dev dependency:
npm install -D @vscode/vsce - Update
extensions/vscode/package.jsonscripts:"vscode:prepublish": "npm run compile": Pre-publish hook"package": "vsce package": Create .vsix package"publish": "vsce publish": Publish to marketplace"publish:patch": "vsce publish patch": Bump patch version and publish"publish:minor": "vsce publish minor": Bump minor version and publish"publish:major": "vsce publish major": Bump major version and publish
- Create
.vscodeignorefile to exclude:- Source files (*.ts, tsconfig.json)
- Test files
- Development dependencies
- Git files (.git, .github, .gitignore)
- Build artifacts (node_modules from bundling)
- Documentation sources
- CI/CD configs
- Create GitHub Actions workflow
.github/workflows/publish-vscode-extension.yml:- Trigger on tag push (v*..)
- Run tests and build
- Package extension
- Publish to marketplace using VSCE_PAT secret
- Create GitHub release with .vsix artifact
- Configure publisher account:
- Create Personal Access Token (PAT) in Azure DevOps
- Add VSCE_PAT as GitHub secret
- Register publisher on VSCode marketplace
- Add publishing documentation to
extensions/vscode/PUBLISHING.md:- How to create releases
- Version bumping guidelines
- Pre-publish checklist
- Rollback procedures
- Files affected:
extensions/vscode/package.json(updated)extensions/vscode/.vscodeignore(new file).github/workflows/publish-vscode-extension.yml(new file)extensions/vscode/PUBLISHING.md(new file)
Dependencies
- Task 2: Extension scaffolding complete
- Task 64: Marketplace listing metadata configured
- All core features implemented and tested
- Publisher account created on VSCode marketplace
- Azure DevOps PAT token generated
Effort Estimate
- Size: M
- Hours: 6
- Parallel: false
Definition of Done
- Code implemented
- Tests written and passing
- Documentation updated
- Code reviewed
Metadata
Metadata
Assignees
Labels
epic:vscode-extensionTasks for vscode-extensionTasks for vscode-extensiontaskIndividual taskIndividual task