feat: build pipeline

This commit is contained in:
yazart
2026-06-15 13:33:36 +03:00
parent de65873e45
commit 8ffd2b6da1
11 changed files with 139 additions and 24 deletions
+19 -4
View File
@@ -1,11 +1,26 @@
# The VSIX manifest points at angular/angular, but the VS Code extension source
# lives in angular/vscode-ng-language-service. There is no v20.3.3 tag there;
# v20.3.0 is the nearest public tag for the 20.3 line.
install_dependencies: "corepack enable && corepack prepare yarn@1.22.22 --activate && yarn install --frozen-lockfile"
install_dependencies: "yarn install --frozen-lockfile"
source_repository: "https://github.com/angular/vscode-ng-language-service.git"
source_ref: "v20.3.0"
build_vsix: "yarn package"
run_tests: "yarn test"
build_vsix:
- "yarn package"
- "mv bazel-bin/ng-template.vsix ./ng-template.vsix"
- unzip -o ng-template.vsix -d ng-template
- tail -n +5 ng-template/extension/CHANGELOG.md > temp.md && mv temp.md ng-template/extension/CHANGELOG.md
- sed 's|bazel-out/k8-fastbuild|bazel-out/darwin_arm64-fastbuild|g' ng-template/extension/index.js > ng-template/extension/indexx.js
- mv ng-template/extension/indexx.js ng-template/extension/index.js
- sed 's|../report/git_package/angular.ng-template|Users/atscott/github/vscode-ng-language-service|g' ng-template/extension/index.js > ng-template/extension/indexx.js
- mv ng-template/extension/indexx.js ng-template/extension/index.js
- sed 's|bazel-out/k8-fastbuild|bazel-out/darwin_arm64-fastbuild|g' ng-template/extension/server/index.js > ng-template/extension/server/indexx.js
- mv ng-template/extension/server/indexx.js ng-template/extension/server/index.js
- sed 's|../report/git_package/angular.ng-template|Users/atscott/github/vscode-ng-language-service|g' ng-template/extension/server/index.js > ng-template/extension/server/indexx.js
- mv ng-template/extension/server/indexx.js ng-template/extension/server/index.js
- cd ng-template && python3 -m zipfile -c ../ng-templateX.vsix . && cd ..
built_vsix_path: "ng-templateX.vsix"
run_tests: "npx nyc yarn compile:test && node_modules/.bin/jasmine --config=jasmine.json"
coverage:
enabled: false
tool: "nyc"
enabled: true
threshold: 80
+40
View File
@@ -0,0 +1,40 @@
c8:
report:
- npx c8 report --reporter=text
check:
- npx c8 check-coverage --branches 80 --functions 80 --lines 80 --statements 80
coverage_report_folder: coverage
vitest:
report:
- npx vitest --coverage --run
check:
- npx vitest --run --coverage --coverage.thresholds.lines=80 --coverage.thresholds.functions=80 --coverage.thresholds.branches=80 --coverage.thresholds.statements=80
coverage_report_folder: coverage
nyc:
report:
- npx nyc report
check:
- npx nyc check-coverage --branches 80 --functions 80 --lines 80
--statements 80
coverage_report_folder: .nyc_output
jest:
report:
- npx istanbul report text
check:
- npx istanbul check-coverage --statements 80 --functions 80 --branches 80 --lines 80
coverage_report_folder: coverage
istanbul:
report:
- npx istanbul report text
check:
- npx istanbul check-coverage --statements 80 --functions 80 --branches 80 --lines 80
coverage_report_folder: coverage
tap:
report:
- npx tap report --coverage-report=text --show-full-coverage
check:
- ""
coverage_report_folder: .tap/coverage
karma:
report:
- exit 2
+1 -1
View File
@@ -1,5 +1,5 @@
# Commands are executed from the cloned repository root.
install_dependencies: "node -e 'const [major, minor] = process.versions.node.split(`.`).map(Number); if (major < 22 || (major === 22 && minor < 18)) { console.error(`GitLens 17.12.1 requires Node >=22.18.0; current=${process.versions.node}`); process.exit(1); }' && corepack enable && corepack prepare pnpm@10.33.0 --activate && pnpm install --frozen-lockfile"
install_dependencies: "npm i -g c8 && node -e 'const [major, minor] = process.versions.node.split(`.`).map(Number); if (major < 22 || (major === 22 && minor < 18)) { console.error(`GitLens 17.12.1 requires Node >=22.18.0; current=${process.versions.node}`); process.exit(1); }' && corepack enable && corepack prepare pnpm@10.33.0 --activate && pnpm install --frozen-lockfile"
build_vsix: "pnpm exec vsce package --no-dependencies --out source.vsix"
run_tests: "npx c8 --clean --temp-directory coverage/tmp node_modules/.bin/vscode-test"
coverage: