@daghis/teamcity-mcp 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.commitlintrc.js +3 -0
- package/.eslintignore +16 -0
- package/.eslintrc.js +166 -0
- package/.github/settings.yml +7 -0
- package/.github/workflows/ci.yml +111 -0
- package/.github/workflows/codeql.yml +35 -0
- package/.github/workflows/commitlint.yml +20 -0
- package/.github/workflows/publish.yml +47 -0
- package/.github/workflows/release-please.yml +21 -0
- package/.nvmrc +1 -0
- package/.prettierignore +22 -0
- package/.prettierrc +28 -0
- package/AGENTS.md +68 -0
- package/ARCHITECTURE.md +66 -0
- package/CHANGELOG.md +8 -0
- package/CONTRIBUTING.md +68 -0
- package/LICENSE +22 -0
- package/README.md +256 -0
- package/TODO.md +80 -0
- package/dist/index.js +42216 -0
- package/dist/index.js.map +7 -0
- package/dist/src/api-client.d.ts +51 -0
- package/dist/src/api-client.d.ts.map +1 -0
- package/dist/src/config/index.d.ts +41 -0
- package/dist/src/config/index.d.ts.map +1 -0
- package/dist/src/errors/index.d.ts +2 -0
- package/dist/src/errors/index.d.ts.map +1 -0
- package/dist/src/formatters/build-step-formatter.d.ts +5 -0
- package/dist/src/formatters/build-step-formatter.d.ts.map +1 -0
- package/dist/src/formatters/trigger-formatter.d.ts +4 -0
- package/dist/src/formatters/trigger-formatter.d.ts.map +1 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/middleware/error.d.ts +56 -0
- package/dist/src/middleware/error.d.ts.map +1 -0
- package/dist/src/middleware/global-error-handler.d.ts +22 -0
- package/dist/src/middleware/global-error-handler.d.ts.map +1 -0
- package/dist/src/middleware/index.d.ts +2 -0
- package/dist/src/middleware/index.d.ts.map +1 -0
- package/dist/src/server.d.ts +4 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/swagger/index.d.ts +43 -0
- package/dist/src/swagger/index.d.ts.map +1 -0
- package/dist/src/swagger/swagger-cache.d.ts +23 -0
- package/dist/src/swagger/swagger-cache.d.ts.map +1 -0
- package/dist/src/swagger/swagger-fetcher.d.ts +24 -0
- package/dist/src/swagger/swagger-fetcher.d.ts.map +1 -0
- package/dist/src/swagger/swagger-validator.d.ts +17 -0
- package/dist/src/swagger/swagger-validator.d.ts.map +1 -0
- package/dist/src/teamcity/api-types.d.ts +224 -0
- package/dist/src/teamcity/api-types.d.ts.map +1 -0
- package/dist/src/teamcity/artifact-manager.d.ts +52 -0
- package/dist/src/teamcity/artifact-manager.d.ts.map +1 -0
- package/dist/src/teamcity/auth.d.ts +22 -0
- package/dist/src/teamcity/auth.d.ts.map +1 -0
- package/dist/src/teamcity/branch-discovery-manager.d.ts +39 -0
- package/dist/src/teamcity/branch-discovery-manager.d.ts.map +1 -0
- package/dist/src/teamcity/branch-filtering-service.d.ts +62 -0
- package/dist/src/teamcity/branch-filtering-service.d.ts.map +1 -0
- package/dist/src/teamcity/branch-specification-parser.d.ts +33 -0
- package/dist/src/teamcity/branch-specification-parser.d.ts.map +1 -0
- package/dist/src/teamcity/build-config-manager.d.ts +75 -0
- package/dist/src/teamcity/build-config-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-config-navigator.d.ts +89 -0
- package/dist/src/teamcity/build-config-navigator.d.ts.map +1 -0
- package/dist/src/teamcity/build-configuration-clone-manager.d.ts +49 -0
- package/dist/src/teamcity/build-configuration-clone-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-configuration-manager.d.ts +82 -0
- package/dist/src/teamcity/build-configuration-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-configuration-resolver.d.ts +95 -0
- package/dist/src/teamcity/build-configuration-resolver.d.ts.map +1 -0
- package/dist/src/teamcity/build-configuration-update-manager.d.ts +76 -0
- package/dist/src/teamcity/build-configuration-update-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-list-manager.d.ts +62 -0
- package/dist/src/teamcity/build-list-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-parameters-manager.d.ts +143 -0
- package/dist/src/teamcity/build-parameters-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-progress-tracker.d.ts +49 -0
- package/dist/src/teamcity/build-progress-tracker.d.ts.map +1 -0
- package/dist/src/teamcity/build-query-builder.d.ts +27 -0
- package/dist/src/teamcity/build-query-builder.d.ts.map +1 -0
- package/dist/src/teamcity/build-queue-manager.d.ts +102 -0
- package/dist/src/teamcity/build-queue-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-results-manager.d.ts +87 -0
- package/dist/src/teamcity/build-results-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-status-manager.d.ts +65 -0
- package/dist/src/teamcity/build-status-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-step-manager.d.ts +65 -0
- package/dist/src/teamcity/build-step-manager.d.ts.map +1 -0
- package/dist/src/teamcity/build-trigger-manager.d.ts +108 -0
- package/dist/src/teamcity/build-trigger-manager.d.ts.map +1 -0
- package/dist/src/teamcity/circuit-breaker.d.ts +47 -0
- package/dist/src/teamcity/circuit-breaker.d.ts.map +1 -0
- package/dist/src/teamcity/client-adapter.d.ts +12 -0
- package/dist/src/teamcity/client-adapter.d.ts.map +1 -0
- package/dist/src/teamcity/client.d.ts +49 -0
- package/dist/src/teamcity/client.d.ts.map +1 -0
- package/dist/src/teamcity/config.d.ts +41 -0
- package/dist/src/teamcity/config.d.ts.map +1 -0
- package/dist/src/teamcity/configuration-branch-matcher.d.ts +37 -0
- package/dist/src/teamcity/configuration-branch-matcher.d.ts.map +1 -0
- package/dist/src/teamcity/errors.d.ts +79 -0
- package/dist/src/teamcity/errors.d.ts.map +1 -0
- package/dist/src/teamcity/index.d.ts +48 -0
- package/dist/src/teamcity/index.d.ts.map +1 -0
- package/dist/src/teamcity/pagination.d.ts +32 -0
- package/dist/src/teamcity/pagination.d.ts.map +1 -0
- package/dist/src/teamcity/project-list-manager.d.ts +19 -0
- package/dist/src/teamcity/project-list-manager.d.ts.map +1 -0
- package/dist/src/teamcity/project-manager.d.ts +73 -0
- package/dist/src/teamcity/project-manager.d.ts.map +1 -0
- package/dist/src/teamcity/project-navigator.d.ts +100 -0
- package/dist/src/teamcity/project-navigator.d.ts.map +1 -0
- package/dist/src/teamcity/test-problem-reporter.d.ts +60 -0
- package/dist/src/teamcity/test-problem-reporter.d.ts.map +1 -0
- package/dist/src/teamcity/types/api-responses.d.ts +235 -0
- package/dist/src/teamcity/types/api-responses.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/agent-api.d.ts +97 -0
- package/dist/src/teamcity-client/api/agent-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/agent-pool-api.d.ts +92 -0
- package/dist/src/teamcity-client/api/agent-pool-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/agent-type-api.d.ts +20 -0
- package/dist/src/teamcity-client/api/agent-type-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/audit-api.d.ts +26 -0
- package/dist/src/teamcity-client/api/audit-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/avatar-api.d.ts +34 -0
- package/dist/src/teamcity-client/api/avatar-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/build-api.d.ts +315 -0
- package/dist/src/teamcity-client/api/build-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/build-queue-api.d.ts +90 -0
- package/dist/src/teamcity-client/api/build-queue-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/build-type-api.d.ts +585 -0
- package/dist/src/teamcity-client/api/build-type-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/change-api.d.ts +71 -0
- package/dist/src/teamcity-client/api/change-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/cloud-instance-api.d.ts +70 -0
- package/dist/src/teamcity-client/api/cloud-instance-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/deployment-dashboard-api.d.ts +64 -0
- package/dist/src/teamcity-client/api/deployment-dashboard-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/global-server-settings-api.d.ts +25 -0
- package/dist/src/teamcity-client/api/global-server-settings-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/group-api.d.ts +99 -0
- package/dist/src/teamcity-client/api/group-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/health-api.d.ts +38 -0
- package/dist/src/teamcity-client/api/health-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/investigation-api.d.ts +46 -0
- package/dist/src/teamcity-client/api/investigation-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/mute-api.d.ts +46 -0
- package/dist/src/teamcity-client/api/mute-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/node-api.d.ts +49 -0
- package/dist/src/teamcity-client/api/node-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/problem-api.d.ts +26 -0
- package/dist/src/teamcity-client/api/problem-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/problem-occurrence-api.d.ts +26 -0
- package/dist/src/teamcity-client/api/problem-occurrence-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/project-api.d.ts +271 -0
- package/dist/src/teamcity-client/api/project-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/role-api.d.ts +56 -0
- package/dist/src/teamcity-client/api/role-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/root-api.d.ts +35 -0
- package/dist/src/teamcity-client/api/root-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/server-api.d.ts +112 -0
- package/dist/src/teamcity-client/api/server-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/server-authentication-settings-api.d.ts +25 -0
- package/dist/src/teamcity-client/api/server-authentication-settings-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/test-api.d.ts +26 -0
- package/dist/src/teamcity-client/api/test-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/test-occurrence-api.d.ts +26 -0
- package/dist/src/teamcity-client/api/test-occurrence-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/user-api.d.ts +164 -0
- package/dist/src/teamcity-client/api/user-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/vcs-root-api.d.ts +88 -0
- package/dist/src/teamcity-client/api/vcs-root-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/vcs-root-instance-api.d.ts +104 -0
- package/dist/src/teamcity-client/api/vcs-root-instance-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api/versioned-settings-api.d.ts +94 -0
- package/dist/src/teamcity-client/api/versioned-settings-api.d.ts.map +1 -0
- package/dist/src/teamcity-client/api.d.ts +31 -0
- package/dist/src/teamcity-client/api.d.ts.map +1 -0
- package/dist/src/teamcity-client/base.d.ts +32 -0
- package/dist/src/teamcity-client/base.d.ts.map +1 -0
- package/dist/src/teamcity-client/common.d.ts +14 -0
- package/dist/src/teamcity-client/common.d.ts.map +1 -0
- package/dist/src/teamcity-client/configuration.d.ts +23 -0
- package/dist/src/teamcity-client/configuration.d.ts.map +1 -0
- package/dist/src/teamcity-client/index.d.ts +4 -0
- package/dist/src/teamcity-client/index.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-locator.d.ts +34 -0
- package/dist/src/teamcity-client/models/agent-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-pool-locator.d.ts +10 -0
- package/dist/src/teamcity-client/models/agent-pool-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-pool.d.ts +16 -0
- package/dist/src/teamcity-client/models/agent-pool.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-pools.d.ts +9 -0
- package/dist/src/teamcity-client/models/agent-pools.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-requirement.d.ts +11 -0
- package/dist/src/teamcity-client/models/agent-requirement.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-requirements.d.ts +6 -0
- package/dist/src/teamcity-client/models/agent-requirements.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-type-locator.d.ts +8 -0
- package/dist/src/teamcity-client/models/agent-type-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-type.d.ts +14 -0
- package/dist/src/teamcity-client/models/agent-type.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent-types.d.ts +9 -0
- package/dist/src/teamcity-client/models/agent-types.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agent.d.ts +59 -0
- package/dist/src/teamcity-client/models/agent.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/agents.d.ts +9 -0
- package/dist/src/teamcity-client/models/agents.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/approvable-build.d.ts +6 -0
- package/dist/src/teamcity-client/models/approvable-build.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/approval-info.d.ts +24 -0
- package/dist/src/teamcity-client/models/approval-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/artifact-dependencies.d.ts +7 -0
- package/dist/src/teamcity-client/models/artifact-dependencies.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/artifact-dependency.d.ts +13 -0
- package/dist/src/teamcity-client/models/artifact-dependency.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/artifact-download-info.d.ts +5 -0
- package/dist/src/teamcity-client/models/artifact-download-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/audit-action.d.ts +6 -0
- package/dist/src/teamcity-client/models/audit-action.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/audit-event.d.ts +12 -0
- package/dist/src/teamcity-client/models/audit-event.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/audit-events.d.ts +9 -0
- package/dist/src/teamcity-client/models/audit-events.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/audit-locator.d.ts +245 -0
- package/dist/src/teamcity-client/models/audit-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/auth-module.d.ts +6 -0
- package/dist/src/teamcity-client/models/auth-module.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/auth-modules.d.ts +5 -0
- package/dist/src/teamcity-client/models/auth-modules.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/authorization-tokens-requirements.d.ts +5 -0
- package/dist/src/teamcity-client/models/authorization-tokens-requirements.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/authorized-info.d.ts +6 -0
- package/dist/src/teamcity-client/models/authorized-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/branch-locator.d.ts +40 -0
- package/dist/src/teamcity-client/models/branch-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/branch-version.d.ts +13 -0
- package/dist/src/teamcity-client/models/branch-version.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/branch.d.ts +12 -0
- package/dist/src/teamcity-client/models/branch.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/branches.d.ts +7 -0
- package/dist/src/teamcity-client/models/branches.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-cancel-request.d.ts +5 -0
- package/dist/src/teamcity-client/models/build-cancel-request.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-change.d.ts +6 -0
- package/dist/src/teamcity-client/models/build-change.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-changes.d.ts +6 -0
- package/dist/src/teamcity-client/models/build-changes.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-executor.d.ts +4 -0
- package/dist/src/teamcity-client/models/build-executor.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-locator.d.ts +69 -0
- package/dist/src/teamcity-client/models/build-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-queue-locator.d.ts +14 -0
- package/dist/src/teamcity-client/models/build-queue-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-status-update.d.ts +5 -0
- package/dist/src/teamcity-client/models/build-status-update.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-trigger-customization.d.ts +7 -0
- package/dist/src/teamcity-client/models/build-trigger-customization.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-triggering-options.d.ts +12 -0
- package/dist/src/teamcity-client/models/build-triggering-options.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-type-locator.d.ts +18 -0
- package/dist/src/teamcity-client/models/build-type-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-type.d.ts +64 -0
- package/dist/src/teamcity-client/models/build-type.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build-types.d.ts +9 -0
- package/dist/src/teamcity-client/models/build-types.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/build.d.ts +127 -0
- package/dist/src/teamcity-client/models/build.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/builds-with-reason.d.ts +6 -0
- package/dist/src/teamcity-client/models/builds-with-reason.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/builds.d.ts +9 -0
- package/dist/src/teamcity-client/models/builds.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/change-locator.d.ts +21 -0
- package/dist/src/teamcity-client/models/change-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/change-status.d.ts +19 -0
- package/dist/src/teamcity-client/models/change-status.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/change.d.ts +35 -0
- package/dist/src/teamcity-client/models/change.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/changes.d.ts +9 -0
- package/dist/src/teamcity-client/models/changes.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cleanup.d.ts +9 -0
- package/dist/src/teamcity-client/models/cleanup.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-error.d.ts +5 -0
- package/dist/src/teamcity-client/models/cloud-error.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-image-locator.d.ts +17 -0
- package/dist/src/teamcity-client/models/cloud-image-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-image.d.ts +18 -0
- package/dist/src/teamcity-client/models/cloud-image.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-images.d.ts +9 -0
- package/dist/src/teamcity-client/models/cloud-images.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-instance-locator.d.ts +13 -0
- package/dist/src/teamcity-client/models/cloud-instance-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-instance.d.ts +16 -0
- package/dist/src/teamcity-client/models/cloud-instance.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-instances.d.ts +9 -0
- package/dist/src/teamcity-client/models/cloud-instances.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-profile-locator.d.ts +13 -0
- package/dist/src/teamcity-client/models/cloud-profile-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-profile.d.ts +13 -0
- package/dist/src/teamcity-client/models/cloud-profile.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cloud-profiles.d.ts +9 -0
- package/dist/src/teamcity-client/models/cloud-profiles.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/comment.d.ts +7 -0
- package/dist/src/teamcity-client/models/comment.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/commiter.d.ts +6 -0
- package/dist/src/teamcity-client/models/commiter.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/compatibilities.d.ts +6 -0
- package/dist/src/teamcity-client/models/compatibilities.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/compatibility-policy.d.ts +6 -0
- package/dist/src/teamcity-client/models/compatibility-policy.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/compatibility.d.ts +10 -0
- package/dist/src/teamcity-client/models/compatibility.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/composite-approval-rule.d.ts +10 -0
- package/dist/src/teamcity-client/models/composite-approval-rule.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/composite-approvals.d.ts +6 -0
- package/dist/src/teamcity-client/models/composite-approvals.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/cron.d.ts +8 -0
- package/dist/src/teamcity-client/models/cron.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/customizations.d.ts +15 -0
- package/dist/src/teamcity-client/models/customizations.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/daily.d.ts +5 -0
- package/dist/src/teamcity-client/models/daily.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/datas.d.ts +6 -0
- package/dist/src/teamcity-client/models/datas.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-dashboard-locator.d.ts +9 -0
- package/dist/src/teamcity-client/models/deployment-dashboard-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-dashboard.d.ts +9 -0
- package/dist/src/teamcity-client/models/deployment-dashboard.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-dashboards.d.ts +9 -0
- package/dist/src/teamcity-client/models/deployment-dashboards.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-history.d.ts +6 -0
- package/dist/src/teamcity-client/models/deployment-history.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-instance-locator.d.ts +16 -0
- package/dist/src/teamcity-client/models/deployment-instance-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-instance.d.ts +20 -0
- package/dist/src/teamcity-client/models/deployment-instance.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-instances.d.ts +9 -0
- package/dist/src/teamcity-client/models/deployment-instances.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-state-entries.d.ts +8 -0
- package/dist/src/teamcity-client/models/deployment-state-entries.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/deployment-state-entry.d.ts +16 -0
- package/dist/src/teamcity-client/models/deployment-state-entry.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/disabled-responsibilities.d.ts +6 -0
- package/dist/src/teamcity-client/models/disabled-responsibilities.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/download-info.d.ts +8 -0
- package/dist/src/teamcity-client/models/download-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/downloaded-artifacts.d.ts +7 -0
- package/dist/src/teamcity-client/models/downloaded-artifacts.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/effective-responsibilities.d.ts +6 -0
- package/dist/src/teamcity-client/models/effective-responsibilities.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/enabled-info.d.ts +7 -0
- package/dist/src/teamcity-client/models/enabled-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/enabled-responsibilities.d.ts +6 -0
- package/dist/src/teamcity-client/models/enabled-responsibilities.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/entries.d.ts +6 -0
- package/dist/src/teamcity-client/models/entries.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/entry.d.ts +5 -0
- package/dist/src/teamcity-client/models/entry.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/environment.d.ts +5 -0
- package/dist/src/teamcity-client/models/environment.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/feature.d.ts +11 -0
- package/dist/src/teamcity-client/models/feature.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/features.d.ts +6 -0
- package/dist/src/teamcity-client/models/features.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/file-change.d.ts +10 -0
- package/dist/src/teamcity-client/models/file-change.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/file-changes.d.ts +6 -0
- package/dist/src/teamcity-client/models/file-changes.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/files.d.ts +6 -0
- package/dist/src/teamcity-client/models/files.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/group-approval-rule.d.ts +8 -0
- package/dist/src/teamcity-client/models/group-approval-rule.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/group-approvals.d.ts +6 -0
- package/dist/src/teamcity-client/models/group-approvals.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/group.d.ts +16 -0
- package/dist/src/teamcity-client/models/group.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/groups.d.ts +6 -0
- package/dist/src/teamcity-client/models/groups.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/health-categories.d.ts +9 -0
- package/dist/src/teamcity-client/models/health-categories.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/health-category.d.ts +7 -0
- package/dist/src/teamcity-client/models/health-category.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/health-item.d.ts +13 -0
- package/dist/src/teamcity-client/models/health-item.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/health-status-items.d.ts +9 -0
- package/dist/src/teamcity-client/models/health-status-items.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/href.d.ts +4 -0
- package/dist/src/teamcity-client/models/href.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/index.d.ts +230 -0
- package/dist/src/teamcity-client/models/index.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/investigation-locator.d.ts +35 -0
- package/dist/src/teamcity-client/models/investigation-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/investigation.d.ts +24 -0
- package/dist/src/teamcity-client/models/investigation.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/investigations.d.ts +9 -0
- package/dist/src/teamcity-client/models/investigations.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/issue-usage.d.ts +7 -0
- package/dist/src/teamcity-client/models/issue-usage.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/issue.d.ts +5 -0
- package/dist/src/teamcity-client/models/issue.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/issues-usages.d.ts +7 -0
- package/dist/src/teamcity-client/models/issues-usages.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/issues.d.ts +5 -0
- package/dist/src/teamcity-client/models/issues.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/items.d.ts +4 -0
- package/dist/src/teamcity-client/models/items.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/labeled-value.d.ts +5 -0
- package/dist/src/teamcity-client/models/labeled-value.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/license-key.d.ts +29 -0
- package/dist/src/teamcity-client/models/license-key.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/license-keys.d.ts +7 -0
- package/dist/src/teamcity-client/models/license-keys.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/licensing-data.d.ts +26 -0
- package/dist/src/teamcity-client/models/licensing-data.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/link.d.ts +6 -0
- package/dist/src/teamcity-client/models/link.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/links.d.ts +6 -0
- package/dist/src/teamcity-client/models/links.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/matrix-build-feature-descriptor.d.ts +8 -0
- package/dist/src/teamcity-client/models/matrix-build-feature-descriptor.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/matrix-configuration.d.ts +9 -0
- package/dist/src/teamcity-client/models/matrix-configuration.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/matrix-dependencies.d.ts +6 -0
- package/dist/src/teamcity-client/models/matrix-dependencies.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/matrix-dependency.d.ts +7 -0
- package/dist/src/teamcity-client/models/matrix-dependency.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/matrix-parameter-descriptor.d.ts +7 -0
- package/dist/src/teamcity-client/models/matrix-parameter-descriptor.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/meta-data.d.ts +6 -0
- package/dist/src/teamcity-client/models/meta-data.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metric-tag.d.ts +5 -0
- package/dist/src/teamcity-client/models/metric-tag.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metric-tags.d.ts +6 -0
- package/dist/src/teamcity-client/models/metric-tags.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metric-value.d.ts +7 -0
- package/dist/src/teamcity-client/models/metric-value.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metric-values.d.ts +6 -0
- package/dist/src/teamcity-client/models/metric-values.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metric.d.ts +10 -0
- package/dist/src/teamcity-client/models/metric.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/metrics.d.ts +6 -0
- package/dist/src/teamcity-client/models/metrics.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/model-file.d.ts +13 -0
- package/dist/src/teamcity-client/models/model-file.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/multiple-operation-result.d.ts +7 -0
- package/dist/src/teamcity-client/models/multiple-operation-result.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/mute-locator.d.ts +26 -0
- package/dist/src/teamcity-client/models/mute-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/mute.d.ts +13 -0
- package/dist/src/teamcity-client/models/mute.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/mutes.d.ts +9 -0
- package/dist/src/teamcity-client/models/mutes.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/new-build-type-description.d.ts +13 -0
- package/dist/src/teamcity-client/models/new-build-type-description.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/new-project-description.d.ts +15 -0
- package/dist/src/teamcity-client/models/new-project-description.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/node.d.ts +21 -0
- package/dist/src/teamcity-client/models/node.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/nodes.d.ts +6 -0
- package/dist/src/teamcity-client/models/nodes.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/operation-result.d.ts +6 -0
- package/dist/src/teamcity-client/models/operation-result.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/parsed-test-name.d.ts +10 -0
- package/dist/src/teamcity-client/models/parsed-test-name.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permission-assignment.d.ts +8 -0
- package/dist/src/teamcity-client/models/permission-assignment.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permission-assignments.d.ts +6 -0
- package/dist/src/teamcity-client/models/permission-assignments.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permission-restriction.d.ts +8 -0
- package/dist/src/teamcity-client/models/permission-restriction.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permission-restrictions.d.ts +6 -0
- package/dist/src/teamcity-client/models/permission-restrictions.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permission.d.ts +6 -0
- package/dist/src/teamcity-client/models/permission.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/permissions.d.ts +6 -0
- package/dist/src/teamcity-client/models/permissions.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/pin-info.d.ts +6 -0
- package/dist/src/teamcity-client/models/pin-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/plugin.d.ts +9 -0
- package/dist/src/teamcity-client/models/plugin.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/plugins.d.ts +6 -0
- package/dist/src/teamcity-client/models/plugins.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-locator.d.ts +15 -0
- package/dist/src/teamcity-client/models/problem-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-occurrence-locator.d.ts +16 -0
- package/dist/src/teamcity-client/models/problem-occurrence-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-occurrence.d.ts +20 -0
- package/dist/src/teamcity-client/models/problem-occurrence.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-occurrences.d.ts +14 -0
- package/dist/src/teamcity-client/models/problem-occurrences.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-scope.d.ts +9 -0
- package/dist/src/teamcity-client/models/problem-scope.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem-target.d.ts +8 -0
- package/dist/src/teamcity-client/models/problem-target.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problem.d.ts +15 -0
- package/dist/src/teamcity-client/models/problem.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/problems.d.ts +8 -0
- package/dist/src/teamcity-client/models/problems.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/progress-info.d.ts +13 -0
- package/dist/src/teamcity-client/models/progress-info.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/project-feature.d.ts +11 -0
- package/dist/src/teamcity-client/models/project-feature.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/project-features.d.ts +7 -0
- package/dist/src/teamcity-client/models/project-features.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/project-locator.d.ts +20 -0
- package/dist/src/teamcity-client/models/project-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/project.d.ts +39 -0
- package/dist/src/teamcity-client/models/project.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/projects.d.ts +9 -0
- package/dist/src/teamcity-client/models/projects.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/properties.d.ts +7 -0
- package/dist/src/teamcity-client/models/properties.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/property.d.ts +8 -0
- package/dist/src/teamcity-client/models/property.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/related-entities.d.ts +6 -0
- package/dist/src/teamcity-client/models/related-entities.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/related-entity.d.ts +29 -0
- package/dist/src/teamcity-client/models/related-entity.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/related.d.ts +5 -0
- package/dist/src/teamcity-client/models/related.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/repository-state.d.ts +7 -0
- package/dist/src/teamcity-client/models/repository-state.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/requirements.d.ts +4 -0
- package/dist/src/teamcity-client/models/requirements.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/resolution.d.ts +11 -0
- package/dist/src/teamcity-client/models/resolution.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/responsibility.d.ts +5 -0
- package/dist/src/teamcity-client/models/responsibility.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/revision.d.ts +9 -0
- package/dist/src/teamcity-client/models/revision.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/revisions.d.ts +7 -0
- package/dist/src/teamcity-client/models/revisions.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/role.d.ts +6 -0
- package/dist/src/teamcity-client/models/role.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/roles.d.ts +5 -0
- package/dist/src/teamcity-client/models/roles.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/server-auth-settings.d.ts +12 -0
- package/dist/src/teamcity-client/models/server-auth-settings.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/server-global-settings.d.ts +15 -0
- package/dist/src/teamcity-client/models/server-global-settings.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/server.d.ts +26 -0
- package/dist/src/teamcity-client/models/server.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/snapshot-dependencies.d.ts +6 -0
- package/dist/src/teamcity-client/models/snapshot-dependencies.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/snapshot-dependency-link.d.ts +8 -0
- package/dist/src/teamcity-client/models/snapshot-dependency-link.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/snapshot-dependency.d.ts +13 -0
- package/dist/src/teamcity-client/models/snapshot-dependency.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/state-field.d.ts +5 -0
- package/dist/src/teamcity-client/models/state-field.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/step.d.ts +12 -0
- package/dist/src/teamcity-client/models/step.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/steps.d.ts +6 -0
- package/dist/src/teamcity-client/models/steps.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/tag-locator.d.ts +6 -0
- package/dist/src/teamcity-client/models/tag-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/tag.d.ts +7 -0
- package/dist/src/teamcity-client/models/tag.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/tags.d.ts +6 -0
- package/dist/src/teamcity-client/models/tags.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/team-city-node-locator.d.ts +6 -0
- package/dist/src/teamcity-client/models/team-city-node-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-counters.d.ts +10 -0
- package/dist/src/teamcity-client/models/test-counters.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-locator.d.ts +14 -0
- package/dist/src/teamcity-client/models/test-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-occurrence-locator.d.ts +31 -0
- package/dist/src/teamcity-client/models/test-occurrence-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-occurrence.d.ts +37 -0
- package/dist/src/teamcity-client/models/test-occurrence.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-occurrences.d.ts +16 -0
- package/dist/src/teamcity-client/models/test-occurrences.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/test-run-metadata.d.ts +6 -0
- package/dist/src/teamcity-client/models/test-run-metadata.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/tests.d.ts +10 -0
- package/dist/src/teamcity-client/models/tests.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/token.d.ts +9 -0
- package/dist/src/teamcity-client/models/token.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/tokens.d.ts +6 -0
- package/dist/src/teamcity-client/models/tokens.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/trigger.d.ts +13 -0
- package/dist/src/teamcity-client/models/trigger.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/triggered-by.d.ts +16 -0
- package/dist/src/teamcity-client/models/triggered-by.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/triggers.d.ts +6 -0
- package/dist/src/teamcity-client/models/triggers.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/type.d.ts +4 -0
- package/dist/src/teamcity-client/models/type.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/typed-value-set.d.ts +10 -0
- package/dist/src/teamcity-client/models/typed-value-set.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/typed-value-sets.d.ts +6 -0
- package/dist/src/teamcity-client/models/typed-value-sets.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/typed-value.d.ts +6 -0
- package/dist/src/teamcity-client/models/typed-value.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user-approval-rule.d.ts +6 -0
- package/dist/src/teamcity-client/models/user-approval-rule.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user-approvals.d.ts +6 -0
- package/dist/src/teamcity-client/models/user-approvals.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user-avatars.d.ts +10 -0
- package/dist/src/teamcity-client/models/user-avatars.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user-group-locator.d.ts +6 -0
- package/dist/src/teamcity-client/models/user-group-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user-locator.d.ts +15 -0
- package/dist/src/teamcity-client/models/user-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/user.d.ts +22 -0
- package/dist/src/teamcity-client/models/user.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/users.d.ts +6 -0
- package/dist/src/teamcity-client/models/users.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-check-status.d.ts +6 -0
- package/dist/src/teamcity-client/models/vcs-check-status.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-label.d.ts +18 -0
- package/dist/src/teamcity-client/models/vcs-label.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-labels.d.ts +6 -0
- package/dist/src/teamcity-client/models/vcs-labels.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-entries.d.ts +6 -0
- package/dist/src/teamcity-client/models/vcs-root-entries.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-entry.d.ts +8 -0
- package/dist/src/teamcity-client/models/vcs-root-entry.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-instance-locator.d.ts +38 -0
- package/dist/src/teamcity-client/models/vcs-root-instance-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-instance.d.ts +24 -0
- package/dist/src/teamcity-client/models/vcs-root-instance.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-instances.d.ts +9 -0
- package/dist/src/teamcity-client/models/vcs-root-instances.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root-locator.d.ts +37 -0
- package/dist/src/teamcity-client/models/vcs-root-locator.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-root.d.ts +20 -0
- package/dist/src/teamcity-client/models/vcs-root.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-roots.d.ts +9 -0
- package/dist/src/teamcity-client/models/vcs-roots.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/vcs-status.d.ts +6 -0
- package/dist/src/teamcity-client/models/vcs-status.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-config.d.ts +31 -0
- package/dist/src/teamcity-client/models/versioned-settings-config.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-context-parameter.d.ts +5 -0
- package/dist/src/teamcity-client/models/versioned-settings-context-parameter.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-context-parameters.d.ts +5 -0
- package/dist/src/teamcity-client/models/versioned-settings-context-parameters.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-error.d.ts +7 -0
- package/dist/src/teamcity-client/models/versioned-settings-error.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-status.d.ts +15 -0
- package/dist/src/teamcity-client/models/versioned-settings-status.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-token.d.ts +6 -0
- package/dist/src/teamcity-client/models/versioned-settings-token.d.ts.map +1 -0
- package/dist/src/teamcity-client/models/versioned-settings-tokens.d.ts +5 -0
- package/dist/src/teamcity-client/models/versioned-settings-tokens.d.ts.map +1 -0
- package/dist/src/tools/index.d.ts +2 -0
- package/dist/src/tools/index.d.ts.map +1 -0
- package/dist/src/tools.d.ts +22 -0
- package/dist/src/tools.d.ts.map +1 -0
- package/dist/src/types/config.d.ts +129 -0
- package/dist/src/types/config.d.ts.map +1 -0
- package/dist/src/types/index.d.ts +116 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/mcp.d.ts +68 -0
- package/dist/src/types/mcp.d.ts.map +1 -0
- package/dist/src/types/project.d.ts +56 -0
- package/dist/src/types/project.d.ts.map +1 -0
- package/dist/src/types/teamcity.d.ts +258 -0
- package/dist/src/types/teamcity.d.ts.map +1 -0
- package/dist/src/utils/async/index.d.ts +90 -0
- package/dist/src/utils/async/index.d.ts.map +1 -0
- package/dist/src/utils/error-logger.d.ts +34 -0
- package/dist/src/utils/error-logger.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +23 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/logger/index.d.ts +73 -0
- package/dist/src/utils/logger/index.d.ts.map +1 -0
- package/dist/src/utils/logger.d.ts +11 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/lru-cache.d.ts +20 -0
- package/dist/src/utils/lru-cache.d.ts.map +1 -0
- package/dist/src/utils/mcp.d.ts +18 -0
- package/dist/src/utils/mcp.d.ts.map +1 -0
- package/dist/src/utils/validation.d.ts +61 -0
- package/dist/src/utils/validation.d.ts.map +1 -0
- package/docs/TEAMCITY_MCP_TOOLS_GUIDE.md +1076 -0
- package/docs/mcp-tools-mode-matrix.md +68 -0
- package/docs/mcp-tools-reference.md +203 -0
- package/examples/list-build-configs-usage.ts +276 -0
- package/jest.ci.config.js +14 -0
- package/jest.config.js +108 -0
- package/jest.setup.js +24 -0
- package/openapi-generator-config.json +27 -0
- package/openapitools.json +7 -0
- package/package.json +101 -0
- package/scripts/build.cjs +87 -0
- package/scripts/debug-fetch-log.ts +52 -0
- package/scripts/emit-coverage-stats.js +42 -0
- package/scripts/fetch-swagger-spec.ts +140 -0
- package/scripts/interact.sh +23 -0
- package/scripts/print-builds.ts +21 -0
- package/scripts/verify-integration-env.cjs +29 -0
- package/src/api-client.ts +307 -0
- package/src/config/index.ts +286 -0
- package/src/errors/index.ts +25 -0
- package/src/formatters/build-step-formatter.ts +178 -0
- package/src/formatters/trigger-formatter.ts +207 -0
- package/src/index.ts +61 -0
- package/src/middleware/error.test.ts +274 -0
- package/src/middleware/error.ts +314 -0
- package/src/middleware/global-error-handler.test.ts +239 -0
- package/src/middleware/global-error-handler.ts +203 -0
- package/src/middleware/index.ts +5 -0
- package/src/server.ts +126 -0
- package/src/swagger/index.ts +220 -0
- package/src/swagger/swagger-cache.ts +220 -0
- package/src/swagger/swagger-fetcher.ts +126 -0
- package/src/swagger/swagger-validator.ts +212 -0
- package/src/teamcity/api-types.ts +387 -0
- package/src/teamcity/artifact-manager.ts +362 -0
- package/src/teamcity/auth.ts +215 -0
- package/src/teamcity/branch-discovery-manager.ts +311 -0
- package/src/teamcity/branch-filtering-service.ts +369 -0
- package/src/teamcity/branch-specification-parser.ts +238 -0
- package/src/teamcity/build-config-manager.ts +458 -0
- package/src/teamcity/build-config-navigator.ts +589 -0
- package/src/teamcity/build-configuration-clone-manager.ts +501 -0
- package/src/teamcity/build-configuration-manager.ts +447 -0
- package/src/teamcity/build-configuration-resolver.ts +725 -0
- package/src/teamcity/build-configuration-update-manager.ts +610 -0
- package/src/teamcity/build-list-manager.ts +313 -0
- package/src/teamcity/build-parameters-manager.ts +875 -0
- package/src/teamcity/build-progress-tracker.ts +514 -0
- package/src/teamcity/build-query-builder.ts +325 -0
- package/src/teamcity/build-queue-manager.ts +622 -0
- package/src/teamcity/build-results-manager.ts +589 -0
- package/src/teamcity/build-status-manager.ts +564 -0
- package/src/teamcity/build-step-manager.ts +508 -0
- package/src/teamcity/build-trigger-manager.ts +1083 -0
- package/src/teamcity/circuit-breaker.ts +219 -0
- package/src/teamcity/client-adapter.ts +35 -0
- package/src/teamcity/client.ts +269 -0
- package/src/teamcity/config.ts +188 -0
- package/src/teamcity/configuration-branch-matcher.ts +327 -0
- package/src/teamcity/errors.ts +351 -0
- package/src/teamcity/index.ts +266 -0
- package/src/teamcity/pagination.ts +209 -0
- package/src/teamcity/project-list-manager.ts +267 -0
- package/src/teamcity/project-manager.ts +493 -0
- package/src/teamcity/project-navigator.ts +664 -0
- package/src/teamcity/test-problem-reporter.ts +423 -0
- package/src/teamcity/types/api-responses.ts +314 -0
- package/src/teamcity-client/.openapi-generator/FILES +274 -0
- package/src/teamcity-client/.openapi-generator/VERSION +1 -0
- package/src/teamcity-client/.openapi-generator-ignore +23 -0
- package/src/teamcity-client/README.md +50 -0
- package/src/teamcity-client/api/agent-api.ts +2046 -0
- package/src/teamcity-client/api/agent-pool-api.ts +1877 -0
- package/src/teamcity-client/api/agent-type-api.ts +213 -0
- package/src/teamcity-client/api/audit-api.ts +341 -0
- package/src/teamcity-client/api/avatar-api.ts +569 -0
- package/src/teamcity-client/api/build-api.ts +7726 -0
- package/src/teamcity-client/api/build-queue-api.ts +1922 -0
- package/src/teamcity-client/api/build-type-api.ts +15502 -0
- package/src/teamcity-client/api/change-api.ts +1311 -0
- package/src/teamcity-client/api/cloud-instance-api.ts +1289 -0
- package/src/teamcity-client/api/deployment-dashboard-api.ts +1295 -0
- package/src/teamcity-client/api/global-server-settings-api.ts +286 -0
- package/src/teamcity-client/api/group-api.ts +2084 -0
- package/src/teamcity-client/api/health-api.ts +566 -0
- package/src/teamcity-client/api/investigation-api.ts +856 -0
- package/src/teamcity-client/api/mute-api.ts +824 -0
- package/src/teamcity-client/api/node-api.ts +877 -0
- package/src/teamcity-client/api/problem-api.ts +337 -0
- package/src/teamcity-client/api/problem-occurrence-api.ts +349 -0
- package/src/teamcity-client/api/project-api.ts +6511 -0
- package/src/teamcity-client/api/role-api.ts +1062 -0
- package/src/teamcity-client/api/root-api.ts +439 -0
- package/src/teamcity-client/api/server-api.ts +2306 -0
- package/src/teamcity-client/api/server-authentication-settings-api.ts +289 -0
- package/src/teamcity-client/api/test-api.ts +329 -0
- package/src/teamcity-client/api/test-occurrence-api.ts +340 -0
- package/src/teamcity-client/api/user-api.ts +3644 -0
- package/src/teamcity-client/api/vcs-root-api.ts +1837 -0
- package/src/teamcity-client/api/vcs-root-instance-api.ts +2479 -0
- package/src/teamcity-client/api/versioned-settings-api.ts +2025 -0
- package/src/teamcity-client/api.ts +44 -0
- package/src/teamcity-client/base.ts +91 -0
- package/src/teamcity-client/common.ts +197 -0
- package/src/teamcity-client/configuration.ts +130 -0
- package/src/teamcity-client/git_push.sh +57 -0
- package/src/teamcity-client/index.ts +17 -0
- package/src/teamcity-client/models/agent-locator.ts +124 -0
- package/src/teamcity-client/models/agent-pool-locator.ts +63 -0
- package/src/teamcity-client/models/agent-pool.ts +87 -0
- package/src/teamcity-client/models/agent-pools.ts +54 -0
- package/src/teamcity-client/models/agent-requirement.ts +66 -0
- package/src/teamcity-client/models/agent-requirements.ts +36 -0
- package/src/teamcity-client/models/agent-type-locator.ts +51 -0
- package/src/teamcity-client/models/agent-type.ts +81 -0
- package/src/teamcity-client/models/agent-types.ts +54 -0
- package/src/teamcity-client/models/agent.ts +295 -0
- package/src/teamcity-client/models/agents.ts +54 -0
- package/src/teamcity-client/models/approvable-build.ts +39 -0
- package/src/teamcity-client/models/approval-info.ts +100 -0
- package/src/teamcity-client/models/artifact-dependencies.ts +42 -0
- package/src/teamcity-client/models/artifact-dependency.ts +75 -0
- package/src/teamcity-client/models/artifact-download-info.ts +33 -0
- package/src/teamcity-client/models/audit-action.ts +39 -0
- package/src/teamcity-client/models/audit-event.ts +66 -0
- package/src/teamcity-client/models/audit-events.ts +54 -0
- package/src/teamcity-client/models/audit-locator.ts +315 -0
- package/src/teamcity-client/models/auth-module.ts +36 -0
- package/src/teamcity-client/models/auth-modules.ts +30 -0
- package/src/teamcity-client/models/authorization-tokens-requirements.ts +33 -0
- package/src/teamcity-client/models/authorized-info.ts +36 -0
- package/src/teamcity-client/models/branch-locator.ts +117 -0
- package/src/teamcity-client/models/branch-version.ts +78 -0
- package/src/teamcity-client/models/branch.ts +72 -0
- package/src/teamcity-client/models/branches.ts +42 -0
- package/src/teamcity-client/models/build-cancel-request.ts +33 -0
- package/src/teamcity-client/models/build-change.ts +36 -0
- package/src/teamcity-client/models/build-changes.ts +36 -0
- package/src/teamcity-client/models/build-executor.ts +27 -0
- package/src/teamcity-client/models/build-locator.ts +277 -0
- package/src/teamcity-client/models/build-queue-locator.ts +87 -0
- package/src/teamcity-client/models/build-status-update.ts +33 -0
- package/src/teamcity-client/models/build-trigger-customization.ts +42 -0
- package/src/teamcity-client/models/build-triggering-options.ts +72 -0
- package/src/teamcity-client/models/build-type-locator.ts +111 -0
- package/src/teamcity-client/models/build-type.ts +305 -0
- package/src/teamcity-client/models/build-types.ts +54 -0
- package/src/teamcity-client/models/build.ts +631 -0
- package/src/teamcity-client/models/builds-with-reason.ts +36 -0
- package/src/teamcity-client/models/builds.ts +54 -0
- package/src/teamcity-client/models/change-locator.ts +129 -0
- package/src/teamcity-client/models/change-status.ts +114 -0
- package/src/teamcity-client/models/change.ts +186 -0
- package/src/teamcity-client/models/changes.ts +54 -0
- package/src/teamcity-client/models/cleanup.ts +51 -0
- package/src/teamcity-client/models/cloud-error.ts +33 -0
- package/src/teamcity-client/models/cloud-image-locator.ts +105 -0
- package/src/teamcity-client/models/cloud-image.ts +102 -0
- package/src/teamcity-client/models/cloud-images.ts +54 -0
- package/src/teamcity-client/models/cloud-instance-locator.ts +81 -0
- package/src/teamcity-client/models/cloud-instance.ts +90 -0
- package/src/teamcity-client/models/cloud-instances.ts +54 -0
- package/src/teamcity-client/models/cloud-profile-locator.ts +81 -0
- package/src/teamcity-client/models/cloud-profile.ts +72 -0
- package/src/teamcity-client/models/cloud-profiles.ts +54 -0
- package/src/teamcity-client/models/comment.ts +42 -0
- package/src/teamcity-client/models/commiter.ts +36 -0
- package/src/teamcity-client/models/compatibilities.ts +36 -0
- package/src/teamcity-client/models/compatibility-policy.ts +36 -0
- package/src/teamcity-client/models/compatibility.ts +54 -0
- package/src/teamcity-client/models/composite-approval-rule.ts +54 -0
- package/src/teamcity-client/models/composite-approvals.ts +36 -0
- package/src/teamcity-client/models/cron.ts +51 -0
- package/src/teamcity-client/models/customizations.ts +45 -0
- package/src/teamcity-client/models/daily.ts +33 -0
- package/src/teamcity-client/models/datas.ts +36 -0
- package/src/teamcity-client/models/deployment-dashboard-locator.ts +57 -0
- package/src/teamcity-client/models/deployment-dashboard.ts +51 -0
- package/src/teamcity-client/models/deployment-dashboards.ts +54 -0
- package/src/teamcity-client/models/deployment-history.ts +36 -0
- package/src/teamcity-client/models/deployment-instance-locator.ts +62 -0
- package/src/teamcity-client/models/deployment-instance.ts +68 -0
- package/src/teamcity-client/models/deployment-instances.ts +54 -0
- package/src/teamcity-client/models/deployment-state-entries.ts +45 -0
- package/src/teamcity-client/models/deployment-state-entry.ts +59 -0
- package/src/teamcity-client/models/disabled-responsibilities.ts +36 -0
- package/src/teamcity-client/models/download-info.ts +45 -0
- package/src/teamcity-client/models/downloaded-artifacts.ts +42 -0
- package/src/teamcity-client/models/effective-responsibilities.ts +36 -0
- package/src/teamcity-client/models/enabled-info.ts +42 -0
- package/src/teamcity-client/models/enabled-responsibilities.ts +36 -0
- package/src/teamcity-client/models/entries.ts +36 -0
- package/src/teamcity-client/models/entry.ts +33 -0
- package/src/teamcity-client/models/environment.ts +33 -0
- package/src/teamcity-client/models/feature.ts +66 -0
- package/src/teamcity-client/models/features.ts +36 -0
- package/src/teamcity-client/models/file-change.ts +63 -0
- package/src/teamcity-client/models/file-changes.ts +36 -0
- package/src/teamcity-client/models/files.ts +39 -0
- package/src/teamcity-client/models/group-approval-rule.ts +45 -0
- package/src/teamcity-client/models/group-approvals.ts +36 -0
- package/src/teamcity-client/models/group.ts +87 -0
- package/src/teamcity-client/models/groups.ts +36 -0
- package/src/teamcity-client/models/health-categories.ts +54 -0
- package/src/teamcity-client/models/health-category.ts +45 -0
- package/src/teamcity-client/models/health-item.ts +51 -0
- package/src/teamcity-client/models/health-status-items.ts +54 -0
- package/src/teamcity-client/models/href.ts +27 -0
- package/src/teamcity-client/models/index.ts +229 -0
- package/src/teamcity-client/models/investigation-locator.ts +125 -0
- package/src/teamcity-client/models/investigation.ts +100 -0
- package/src/teamcity-client/models/investigations.ts +54 -0
- package/src/teamcity-client/models/issue-usage.ts +39 -0
- package/src/teamcity-client/models/issue.ts +33 -0
- package/src/teamcity-client/models/issues-usages.ts +42 -0
- package/src/teamcity-client/models/issues.ts +30 -0
- package/src/teamcity-client/models/items.ts +27 -0
- package/src/teamcity-client/models/labeled-value.ts +33 -0
- package/src/teamcity-client/models/license-key.ts +134 -0
- package/src/teamcity-client/models/license-keys.ts +42 -0
- package/src/teamcity-client/models/licensing-data.ts +114 -0
- package/src/teamcity-client/models/link.ts +39 -0
- package/src/teamcity-client/models/links.ts +36 -0
- package/src/teamcity-client/models/matrix-build-feature-descriptor.ts +48 -0
- package/src/teamcity-client/models/matrix-configuration.ts +51 -0
- package/src/teamcity-client/models/matrix-dependencies.ts +36 -0
- package/src/teamcity-client/models/matrix-dependency.ts +39 -0
- package/src/teamcity-client/models/matrix-parameter-descriptor.ts +42 -0
- package/src/teamcity-client/models/meta-data.ts +36 -0
- package/src/teamcity-client/models/metric-tag.ts +33 -0
- package/src/teamcity-client/models/metric-tags.ts +36 -0
- package/src/teamcity-client/models/metric-value.ts +42 -0
- package/src/teamcity-client/models/metric-values.ts +36 -0
- package/src/teamcity-client/models/metric.ts +57 -0
- package/src/teamcity-client/models/metrics.ts +36 -0
- package/src/teamcity-client/models/model-file.ts +75 -0
- package/src/teamcity-client/models/multiple-operation-result.ts +42 -0
- package/src/teamcity-client/models/mute-locator.ts +108 -0
- package/src/teamcity-client/models/mute.ts +69 -0
- package/src/teamcity-client/models/mutes.ts +54 -0
- package/src/teamcity-client/models/new-build-type-description.ts +75 -0
- package/src/teamcity-client/models/new-project-description.ts +87 -0
- package/src/teamcity-client/models/node.ts +87 -0
- package/src/teamcity-client/models/nodes.ts +36 -0
- package/src/teamcity-client/models/operation-result.ts +36 -0
- package/src/teamcity-client/models/parsed-test-name.ts +63 -0
- package/src/teamcity-client/models/permission-assignment.ts +45 -0
- package/src/teamcity-client/models/permission-assignments.ts +36 -0
- package/src/teamcity-client/models/permission-restriction.ts +45 -0
- package/src/teamcity-client/models/permission-restrictions.ts +36 -0
- package/src/teamcity-client/models/permission.ts +39 -0
- package/src/teamcity-client/models/permissions.ts +36 -0
- package/src/teamcity-client/models/pin-info.ts +36 -0
- package/src/teamcity-client/models/plugin.ts +54 -0
- package/src/teamcity-client/models/plugins.ts +36 -0
- package/src/teamcity-client/models/problem-locator.ts +93 -0
- package/src/teamcity-client/models/problem-occurrence-locator.ts +99 -0
- package/src/teamcity-client/models/problem-occurrence.ts +114 -0
- package/src/teamcity-client/models/problem-occurrences.ts +84 -0
- package/src/teamcity-client/models/problem-scope.ts +48 -0
- package/src/teamcity-client/models/problem-target.ts +45 -0
- package/src/teamcity-client/models/problem.ts +84 -0
- package/src/teamcity-client/models/problems.ts +48 -0
- package/src/teamcity-client/models/progress-info.ts +78 -0
- package/src/teamcity-client/models/project-feature.ts +66 -0
- package/src/teamcity-client/models/project-features.ts +42 -0
- package/src/teamcity-client/models/project-locator.ts +123 -0
- package/src/teamcity-client/models/project.ts +207 -0
- package/src/teamcity-client/models/projects.ts +54 -0
- package/src/teamcity-client/models/properties.ts +42 -0
- package/src/teamcity-client/models/property.ts +48 -0
- package/src/teamcity-client/models/related-entities.ts +36 -0
- package/src/teamcity-client/models/related-entity.ts +144 -0
- package/src/teamcity-client/models/related.ts +30 -0
- package/src/teamcity-client/models/repository-state.ts +42 -0
- package/src/teamcity-client/models/requirements.ts +27 -0
- package/src/teamcity-client/models/resolution.ts +41 -0
- package/src/teamcity-client/models/responsibility.ts +33 -0
- package/src/teamcity-client/models/revision.ts +54 -0
- package/src/teamcity-client/models/revisions.ts +42 -0
- package/src/teamcity-client/models/role.ts +39 -0
- package/src/teamcity-client/models/roles.ts +30 -0
- package/src/teamcity-client/models/server-auth-settings.ts +72 -0
- package/src/teamcity-client/models/server-global-settings.ts +93 -0
- package/src/teamcity-client/models/server.ts +156 -0
- package/src/teamcity-client/models/snapshot-dependencies.ts +36 -0
- package/src/teamcity-client/models/snapshot-dependency-link.ts +45 -0
- package/src/teamcity-client/models/snapshot-dependency.ts +75 -0
- package/src/teamcity-client/models/state-field.ts +33 -0
- package/src/teamcity-client/models/step.ts +72 -0
- package/src/teamcity-client/models/steps.ts +36 -0
- package/src/teamcity-client/models/tag-locator.ts +39 -0
- package/src/teamcity-client/models/tag.ts +42 -0
- package/src/teamcity-client/models/tags.ts +36 -0
- package/src/teamcity-client/models/team-city-node-locator.ts +39 -0
- package/src/teamcity-client/models/test-counters.ts +63 -0
- package/src/teamcity-client/models/test-locator.ts +87 -0
- package/src/teamcity-client/models/test-occurrence-locator.ts +147 -0
- package/src/teamcity-client/models/test-occurrence.ts +173 -0
- package/src/teamcity-client/models/test-occurrences.ts +93 -0
- package/src/teamcity-client/models/test-run-metadata.ts +36 -0
- package/src/teamcity-client/models/tests.ts +57 -0
- package/src/teamcity-client/models/token.ts +54 -0
- package/src/teamcity-client/models/tokens.ts +36 -0
- package/src/teamcity-client/models/trigger.ts +75 -0
- package/src/teamcity-client/models/triggered-by.ts +87 -0
- package/src/teamcity-client/models/triggers.ts +36 -0
- package/src/teamcity-client/models/type.ts +27 -0
- package/src/teamcity-client/models/typed-value-set.ts +60 -0
- package/src/teamcity-client/models/typed-value-sets.ts +36 -0
- package/src/teamcity-client/models/typed-value.ts +39 -0
- package/src/teamcity-client/models/user-approval-rule.ts +36 -0
- package/src/teamcity-client/models/user-approvals.ts +36 -0
- package/src/teamcity-client/models/user-avatars.ts +63 -0
- package/src/teamcity-client/models/user-group-locator.ts +39 -0
- package/src/teamcity-client/models/user-locator.ts +93 -0
- package/src/teamcity-client/models/user.ts +123 -0
- package/src/teamcity-client/models/users.ts +36 -0
- package/src/teamcity-client/models/vcs-check-status.ts +39 -0
- package/src/teamcity-client/models/vcs-label.ts +65 -0
- package/src/teamcity-client/models/vcs-labels.ts +36 -0
- package/src/teamcity-client/models/vcs-root-entries.ts +36 -0
- package/src/teamcity-client/models/vcs-root-entry.ts +48 -0
- package/src/teamcity-client/models/vcs-root-instance-locator.ts +124 -0
- package/src/teamcity-client/models/vcs-root-instance.ts +132 -0
- package/src/teamcity-client/models/vcs-root-instances.ts +54 -0
- package/src/teamcity-client/models/vcs-root-locator.ts +118 -0
- package/src/teamcity-client/models/vcs-root.ts +111 -0
- package/src/teamcity-client/models/vcs-roots.ts +54 -0
- package/src/teamcity-client/models/vcs-status.ts +36 -0
- package/src/teamcity-client/models/versioned-settings-config.ts +111 -0
- package/src/teamcity-client/models/versioned-settings-context-parameter.ts +33 -0
- package/src/teamcity-client/models/versioned-settings-context-parameters.ts +30 -0
- package/src/teamcity-client/models/versioned-settings-error.ts +45 -0
- package/src/teamcity-client/models/versioned-settings-status.ts +68 -0
- package/src/teamcity-client/models/versioned-settings-token.ts +39 -0
- package/src/teamcity-client/models/versioned-settings-tokens.ts +30 -0
- package/src/teamcity-client/package.json +33 -0
- package/src/teamcity-client/tsconfig.esm.json +7 -0
- package/src/teamcity-client/tsconfig.json +13 -0
- package/src/teamcity-client-types.d.ts +27 -0
- package/src/tools/index.ts +2 -0
- package/src/tools.ts +2890 -0
- package/src/types/config.ts +140 -0
- package/src/types/index.ts +171 -0
- package/src/types/mcp.ts +80 -0
- package/src/types/project.ts +128 -0
- package/src/types/teamcity.ts +289 -0
- package/src/utils/async/index.test.ts +664 -0
- package/src/utils/async/index.ts +578 -0
- package/src/utils/error-logger.test.ts +173 -0
- package/src/utils/error-logger.ts +145 -0
- package/src/utils/index.ts +88 -0
- package/src/utils/logger/index.test.ts +271 -0
- package/src/utils/logger/index.ts +441 -0
- package/src/utils/logger.ts +49 -0
- package/src/utils/lru-cache.ts +105 -0
- package/src/utils/mcp.ts +84 -0
- package/src/utils/validation.ts +284 -0
- package/tests/__mocks__/@modelcontextprotocol/sdk/server/index.js +31 -0
- package/tests/__mocks__/@modelcontextprotocol/sdk/server/stdio.js +12 -0
- package/tests/__mocks__/@modelcontextprotocol/sdk/types.js +16 -0
- package/tests/development-tooling.test.ts +207 -0
- package/tests/e2e/cleanup.ts +68 -0
- package/tests/e2e/index.ts +166 -0
- package/tests/e2e/mcp-client.ts +73 -0
- package/tests/e2e/setup-playground.ts +67 -0
- package/tests/integration/branches-and-queue-scenario.test.ts +108 -0
- package/tests/integration/build-config-clone-update-scenario.test.ts +80 -0
- package/tests/integration/build-results-and-logs-scenario.test.ts +136 -0
- package/tests/integration/dev-tools-list.test.ts +103 -0
- package/tests/integration/e2e-scenario.test.ts +147 -0
- package/tests/integration/lib/mcp-runner.ts +59 -0
- package/tests/integration/parameters-scenario.test.ts +85 -0
- package/tests/integration/pause-configs-scenario.test.ts +74 -0
- package/tests/integration/queue-maintenance-scenario.test.ts +132 -0
- package/tests/integration/server-health-scenario.test.ts +59 -0
- package/tests/integration/triggers-scenario.test.ts +80 -0
- package/tests/integration/vcs-scenario.test.ts +78 -0
- package/tests/jest.test.js +122 -0
- package/tests/mcp-server.test.ts +378 -0
- package/tests/setup.test.js +97 -0
- package/tests/setup.ts +88 -0
- package/tests/swagger/swagger-fetcher.test.ts +619 -0
- package/tests/teamcity/auth.test.ts +276 -0
- package/tests/teamcity/circuit-breaker.test.ts +304 -0
- package/tests/teamcity/errors.test.ts +221 -0
- package/tests/test-utils/mock-logger.ts +15 -0
- package/tests/test-utils/mock-teamcity-client.ts +403 -0
- package/tests/testing-infrastructure.test.ts +209 -0
- package/tests/tooling.test.js +118 -0
- package/tests/types/shims.d.ts +20 -0
- package/tests/types/tool-results.ts +68 -0
- package/tests/typescript.test.js +108 -0
- package/tests/unit/mcp/server-lifecycle.test.ts +301 -0
- package/tests/unit/middleware/error.test.ts +283 -0
- package/tests/unit/server.test.ts +102 -0
- package/tests/unit/swagger/swagger-manager.test.ts +89 -0
- package/tests/unit/teamcity/artifact-manager.test.ts +450 -0
- package/tests/unit/teamcity/branch-discovery-manager.test.ts +561 -0
- package/tests/unit/teamcity/branch-filtering-service.test.ts +481 -0
- package/tests/unit/teamcity/branch-specification-parser.test.ts +443 -0
- package/tests/unit/teamcity/build-config-navigator-more.test.ts +245 -0
- package/tests/unit/teamcity/build-config-navigator.test.ts +1452 -0
- package/tests/unit/teamcity/build-configuration-manager.test.ts +750 -0
- package/tests/unit/teamcity/build-configuration-resolver.test.ts +659 -0
- package/tests/unit/teamcity/build-list-manager.test.ts +574 -0
- package/tests/unit/teamcity/build-parameters-manager.test.ts +712 -0
- package/tests/unit/teamcity/build-progress-tracker.test.ts +1030 -0
- package/tests/unit/teamcity/build-query-builder.test.ts +311 -0
- package/tests/unit/teamcity/build-queue-manager.test.ts +879 -0
- package/tests/unit/teamcity/build-results-manager.test.ts +630 -0
- package/tests/unit/teamcity/build-status-manager.test.ts +640 -0
- package/tests/unit/teamcity/build-step-manager.test.ts +886 -0
- package/tests/unit/teamcity/build-trigger-manager.test.ts +1052 -0
- package/tests/unit/teamcity/configuration-branch-matcher.test.ts +692 -0
- package/tests/unit/teamcity/pagination.test.ts +118 -0
- package/tests/unit/teamcity/project-list-manager.test.ts +118 -0
- package/tests/unit/teamcity/project-manager-branches.test.ts +176 -0
- package/tests/unit/teamcity/project-manager-more.test.ts +90 -0
- package/tests/unit/teamcity/project-manager.test.ts +189 -0
- package/tests/unit/teamcity/project-navigator-branches.test.ts +168 -0
- package/tests/unit/teamcity/project-navigator-more.test.ts +58 -0
- package/tests/unit/teamcity/project-navigator.test.ts +791 -0
- package/tests/unit/teamcity/test-problem-reporter-trend-patterns.test.ts +80 -0
- package/tests/unit/teamcity/test-problem-reporter.test.ts +551 -0
- package/tests/unit/tools/agent-vcs-admin.test.ts +121 -0
- package/tests/unit/tools/availability-and-queue.test.ts +118 -0
- package/tests/unit/tools/branches-vcs-agents.test.ts +119 -0
- package/tests/unit/tools/build-actions-and-status.test.ts +125 -0
- package/tests/unit/tools/bulk-surface-coverage.test.ts +116 -0
- package/tests/unit/tools/compatibility-lookups.test.ts +150 -0
- package/tests/unit/tools/fetch-build-log-ambiguity.test.ts +70 -0
- package/tests/unit/tools/fetch-build-log-by-number.test.ts +66 -0
- package/tests/unit/tools/fetch-build-log-pagination.test.ts +73 -0
- package/tests/unit/tools/fetch-build-log-tail.test.ts +33 -0
- package/tests/unit/tools/get-status-and-results.test.ts +67 -0
- package/tests/unit/tools/list-branches-and-parameters.test.ts +36 -0
- package/tests/unit/tools/list-build-configs-pagination.test.ts +39 -0
- package/tests/unit/tools/list-builds-pagination.test.ts +45 -0
- package/tests/unit/tools/list-pagination-all.test.ts +259 -0
- package/tests/unit/tools/list-projects-pagination.test.ts +39 -0
- package/tests/unit/tools/parameters-and-steps-triggers.test.ts +176 -0
- package/tests/unit/tools/project-build-crud.test.ts +110 -0
- package/tests/unit/tools/project-hierarchy.test.ts +46 -0
- package/tests/unit/tools/queue-maintenance.test.ts +130 -0
- package/tests/unit/tools/server-health-and-metrics.test.ts +134 -0
- package/tests/unit/tools/simple-getters.test.ts +88 -0
- package/tests/unit/tools/update_project_settings.test.ts +64 -0
- package/tests/unit/utils/lru-cache.test.ts +77 -0
- package/tests/unit/utils/mcp.test.ts +82 -0
- package/tests/unit/utils/runTool.test.ts +38 -0
- package/tests/unit/utils/validation.test.ts +168 -0
- package/tsconfig.build.json +28 -0
- package/tsconfig.json +60 -0
- package/tsconfig.lint.json +13 -0
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Thanks for contributing! This document highlights conventions and expectations to keep the repository consistent and easy to maintain.
|
|
4
|
+
|
|
5
|
+
## Testing Philosophy
|
|
6
|
+
|
|
7
|
+
We follow a behavior‑first approach for tests:
|
|
8
|
+
|
|
9
|
+
- Prefer asserting observable outcomes over internal implementation details.
|
|
10
|
+
- Validate returned values, state transitions, emitted events, and documented side‑effects.
|
|
11
|
+
- Avoid checking private/underscored fields and exact wire formats (locators, field strings, headers, payload shapes) unless explicitly part of the public contract.
|
|
12
|
+
|
|
13
|
+
### When call‑count assertions are appropriate
|
|
14
|
+
|
|
15
|
+
Only add call‑count assertions when the count itself is the documented behavior:
|
|
16
|
+
|
|
17
|
+
- Caching: second identical call returns the same result and does not invoke the underlying client again. After TTL or with `forceRefresh`, calls increase accordingly.
|
|
18
|
+
- Concurrency/parallelization: where a component guarantees parallel execution, keep minimal assertions that reflect the contract (e.g., not N× sequential time).
|
|
19
|
+
- Circuit breaker: ensuring short‑circuiting behavior with no underlying call in OPEN state.
|
|
20
|
+
|
|
21
|
+
### Logging assertions
|
|
22
|
+
|
|
23
|
+
It’s acceptable to assert logger calls only when logging is part of the public contract (e.g., specific redaction guarantees, structured error logging). Otherwise prefer asserting returned errors/results.
|
|
24
|
+
|
|
25
|
+
### MCP tool responses
|
|
26
|
+
|
|
27
|
+
Tools must return standardized JSON payloads. Tests should assert:
|
|
28
|
+
|
|
29
|
+
- `success`, `action`, and echoed identifiers (e.g., `agentId`, `locator`, `buildId`).
|
|
30
|
+
- Documented optional flags (e.g., `includeQueueTotals`) affecting response shape.
|
|
31
|
+
- Avoid verifying how API clients are invoked.
|
|
32
|
+
|
|
33
|
+
### Examples (good)
|
|
34
|
+
|
|
35
|
+
- “Calling list with `all=true` returns all items and correct pagination metadata.”
|
|
36
|
+
- “Second call within TTL returns same results; client calls remain at 1.”
|
|
37
|
+
- “get_build_status returns `queued` with `queuePosition` and `waitReason` when flags are set.”
|
|
38
|
+
|
|
39
|
+
### Examples (avoid)
|
|
40
|
+
|
|
41
|
+
- Verifying exact TeamCity `locator` strings or `fields` parameter composition.
|
|
42
|
+
- Inspecting axios request headers/payload shapes for managers/tools.
|
|
43
|
+
- Counting calls without a documented behavior that warrants it.
|
|
44
|
+
|
|
45
|
+
## Code Style
|
|
46
|
+
|
|
47
|
+
- TypeScript, strict mode. No `any`. Prefer precise types and generics.
|
|
48
|
+
- Prettier for formatting; ESLint for lint rules. Run `npm run lint` and `npm run format`.
|
|
49
|
+
- Use existing logger utilities; avoid `console.log`.
|
|
50
|
+
- Keep changes minimal and focused; preserve module boundaries.
|
|
51
|
+
|
|
52
|
+
## Commit Messages
|
|
53
|
+
|
|
54
|
+
- Imperative mood: “Add X”, “Fix Y”.
|
|
55
|
+
- Include ticket IDs when applicable: `[TMCP-123] Short summary`.
|
|
56
|
+
- Follow [Conventional Commits](https://www.conventionalcommits.org/):
|
|
57
|
+
- Use lower‑case `type` prefixes like `feat`, `fix`, or `chore`.
|
|
58
|
+
- Keep the summary within 72 characters.
|
|
59
|
+
- PR titles must also follow this format and will become the squash merge commit message.
|
|
60
|
+
- Commit message linting runs in CI to enforce the convention.
|
|
61
|
+
|
|
62
|
+
## Pull Requests
|
|
63
|
+
|
|
64
|
+
- Describe scope, rationale, and testing.
|
|
65
|
+
- Link issues/tickets; include logs or CLI output if relevant.
|
|
66
|
+
- Ensure CI is green and `npm run check` passes locally.
|
|
67
|
+
- Use **Squash and merge** so the merge commit inherits the PR’s conventional title.
|
|
68
|
+
|
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 TeamCity MCP contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
# TeamCity MCP Server
|
|
2
|
+
|
|
3
|
+
[](https://github.com/Daghis/teamcity-mcp/actions/workflows/ci.yml)
|
|
4
|
+
[](https://github.com/Daghis/teamcity-mcp/actions/workflows/codeql.yml)
|
|
5
|
+
[](https://codecov.io/gh/Daghis/teamcity-mcp)
|
|
6
|
+
|
|
7
|
+
A Model Control Protocol (MCP) server that bridges AI coding assistants with JetBrains TeamCity CI/CD server, enabling natural language control of builds, tests, and deployments.
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
The TeamCity MCP Server allows developers using AI-powered coding assistants (Claude Code, Cursor, Windsurf) to interact with TeamCity directly from their development environment using natural language commands.
|
|
12
|
+
|
|
13
|
+
## Features
|
|
14
|
+
|
|
15
|
+
### 🚀 Two Operational Modes
|
|
16
|
+
|
|
17
|
+
- **Dev Mode**: Safe CI/CD operations
|
|
18
|
+
- Trigger builds
|
|
19
|
+
- Monitor build status and progress
|
|
20
|
+
- Fetch and analyze build logs
|
|
21
|
+
- Investigate test failures
|
|
22
|
+
- List projects and configurations
|
|
23
|
+
|
|
24
|
+
- **Full Mode**: Complete infrastructure management
|
|
25
|
+
- All Dev mode features, plus:
|
|
26
|
+
- Create and clone build configurations
|
|
27
|
+
- Manage build steps and triggers
|
|
28
|
+
- Configure VCS roots and agents
|
|
29
|
+
- Set up new projects
|
|
30
|
+
- Modify infrastructure settings
|
|
31
|
+
|
|
32
|
+
### 🎯 Key Capabilities
|
|
33
|
+
|
|
34
|
+
- **Natural Language Control**: Execute CI/CD tasks using conversational commands
|
|
35
|
+
- **Intelligent Analysis**: Automatic test failure summarization and build problem identification
|
|
36
|
+
- **Real-time Monitoring**: Live build status updates via WebSocket/SSE
|
|
37
|
+
- **Enterprise Security**: Token-based authentication with audit logging
|
|
38
|
+
- **Modern Architecture**: Simple, direct implementation with singleton pattern
|
|
39
|
+
- **Performance Optimized**: Fast startup time with minimal overhead
|
|
40
|
+
- **Clean Codebase**: Well-organized modules with clear separation of concerns
|
|
41
|
+
|
|
42
|
+
## Installation
|
|
43
|
+
|
|
44
|
+
### Prerequisites
|
|
45
|
+
|
|
46
|
+
- Node.js >= 20.10.0
|
|
47
|
+
- TeamCity Server 2020.1+ with REST API access
|
|
48
|
+
- TeamCity authentication token
|
|
49
|
+
|
|
50
|
+
### Quick Start
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Clone the repository
|
|
54
|
+
git clone https://github.com/Daghis/teamcity-mcp.git
|
|
55
|
+
cd teamcity-mcp
|
|
56
|
+
|
|
57
|
+
# Install dependencies
|
|
58
|
+
npm install
|
|
59
|
+
|
|
60
|
+
# Configure environment
|
|
61
|
+
cp .env.example .env
|
|
62
|
+
# Edit .env with your TeamCity URL and token
|
|
63
|
+
|
|
64
|
+
# Run in development mode
|
|
65
|
+
npm run dev
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### npm Package (Coming Soon)
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
npx @daghis/teamcity-mcp --mode=dev
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Configuration
|
|
75
|
+
|
|
76
|
+
Environment is validated centrally with Zod. Supported variables and defaults:
|
|
77
|
+
|
|
78
|
+
```env
|
|
79
|
+
# Server Configuration
|
|
80
|
+
PORT=3000
|
|
81
|
+
NODE_ENV=development
|
|
82
|
+
LOG_LEVEL=info
|
|
83
|
+
|
|
84
|
+
# TeamCity Configuration (aliases supported)
|
|
85
|
+
TEAMCITY_URL=https://teamcity.example.com
|
|
86
|
+
TEAMCITY_TOKEN=your-auth-token
|
|
87
|
+
# Optional aliases:
|
|
88
|
+
# TEAMCITY_SERVER_URL=...
|
|
89
|
+
# TEAMCITY_API_TOKEN=...
|
|
90
|
+
|
|
91
|
+
# MCP Mode (dev or full)
|
|
92
|
+
MCP_MODE=dev
|
|
93
|
+
|
|
94
|
+
# Optional advanced TeamCity options (defaults shown)
|
|
95
|
+
# Connection
|
|
96
|
+
# TEAMCITY_TIMEOUT=30000
|
|
97
|
+
# TEAMCITY_MAX_CONCURRENT=10
|
|
98
|
+
# TEAMCITY_KEEP_ALIVE=true
|
|
99
|
+
# TEAMCITY_COMPRESSION=true
|
|
100
|
+
|
|
101
|
+
# Retry
|
|
102
|
+
# TEAMCITY_RETRY_ENABLED=true
|
|
103
|
+
# TEAMCITY_MAX_RETRIES=3
|
|
104
|
+
# TEAMCITY_RETRY_DELAY=1000
|
|
105
|
+
# TEAMCITY_MAX_RETRY_DELAY=30000
|
|
106
|
+
|
|
107
|
+
# Pagination
|
|
108
|
+
# TEAMCITY_PAGE_SIZE=100
|
|
109
|
+
# TEAMCITY_MAX_PAGE_SIZE=1000
|
|
110
|
+
# TEAMCITY_AUTO_FETCH_ALL=false
|
|
111
|
+
|
|
112
|
+
# Circuit Breaker
|
|
113
|
+
# TEAMCITY_CIRCUIT_BREAKER=true
|
|
114
|
+
# TEAMCITY_CB_FAILURE_THRESHOLD=5
|
|
115
|
+
# TEAMCITY_CB_RESET_TIMEOUT=60000
|
|
116
|
+
# TEAMCITY_CB_SUCCESS_THRESHOLD=2
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
These values are normalized in `src/config/index.ts` and consumed by `src/teamcity/config.ts` via helper getters.
|
|
120
|
+
|
|
121
|
+
## Usage Examples
|
|
122
|
+
|
|
123
|
+
Once integrated with your AI coding assistant:
|
|
124
|
+
|
|
125
|
+
```
|
|
126
|
+
"Build the frontend on feature branch"
|
|
127
|
+
"Why did last night's tests fail?"
|
|
128
|
+
"Deploy staging with the latest build"
|
|
129
|
+
"Create a new build config for the mobile app"
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Tool Responses and Pagination
|
|
133
|
+
|
|
134
|
+
- Responses: Tools now return consistent MCP content. For list/get operations, the `content[0].text` contains a JSON string. Example shape:
|
|
135
|
+
`{ "items": [...], "pagination": { "page": 1, "pageSize": 100 } }` or `{ "items": [...], "pagination": { "mode": "all", "pageSize": 100, "fetched": 250 } }`.
|
|
136
|
+
- Pagination: Most list\_\* tools accept `pageSize`, `maxPages`, and `all`:
|
|
137
|
+
- `pageSize` controls items per page.
|
|
138
|
+
- `all: true` fetches multiple pages up to `maxPages`.
|
|
139
|
+
- Legacy `count` on `list_builds` is kept for compatibility but `pageSize` is preferred.
|
|
140
|
+
|
|
141
|
+
### Validation and Errors
|
|
142
|
+
|
|
143
|
+
- Input validation: Tool inputs are validated with Zod schemas; invalid input returns a structured error payload in the response content (JSON string) with `success: false` and `error.code = VALIDATION_ERROR`.
|
|
144
|
+
- Error shaping: Errors are formatted consistently via a global handler. In production, messages may be sanitized; sensitive values (e.g., tokens) are redacted in logs.
|
|
145
|
+
|
|
146
|
+
### API Usage
|
|
147
|
+
|
|
148
|
+
```typescript
|
|
149
|
+
import { TeamCityAPI } from '@/api-client';
|
|
150
|
+
|
|
151
|
+
// Get the API client instance
|
|
152
|
+
const api = TeamCityAPI.getInstance();
|
|
153
|
+
|
|
154
|
+
// List projects
|
|
155
|
+
const projects = await api.listProjects();
|
|
156
|
+
|
|
157
|
+
// Get build status
|
|
158
|
+
const build = await api.getBuild('BuildId123');
|
|
159
|
+
|
|
160
|
+
// Trigger a new build
|
|
161
|
+
const newBuild = await api.triggerBuild('BuildConfigId', {
|
|
162
|
+
branchName: 'main',
|
|
163
|
+
});
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Development
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# Run tests
|
|
170
|
+
npm test
|
|
171
|
+
|
|
172
|
+
# Run tests with coverage
|
|
173
|
+
npm run test:coverage
|
|
174
|
+
|
|
175
|
+
# Lint code
|
|
176
|
+
npm run lint
|
|
177
|
+
|
|
178
|
+
# Format code
|
|
179
|
+
npm run format
|
|
180
|
+
|
|
181
|
+
# Type check
|
|
182
|
+
npm run typecheck
|
|
183
|
+
|
|
184
|
+
# Build for production
|
|
185
|
+
npm run build
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## Project Structure
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
teamcity-mcp/
|
|
192
|
+
├── src/ # Source code
|
|
193
|
+
│ ├── tools/ # MCP tool implementations
|
|
194
|
+
│ ├── utils/ # Utility functions
|
|
195
|
+
│ ├── types/ # TypeScript type definitions
|
|
196
|
+
│ └── config/ # Configuration management
|
|
197
|
+
├── tests/ # Test files
|
|
198
|
+
├── docs/ # Documentation
|
|
199
|
+
└── .agent-os/ # Agent OS specifications
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
## API Documentation
|
|
203
|
+
|
|
204
|
+
The MCP server exposes tools for TeamCity operations. Each tool corresponds to specific TeamCity REST API endpoints:
|
|
205
|
+
|
|
206
|
+
### Build Management
|
|
207
|
+
|
|
208
|
+
- `TriggerBuild` - Queue a new build
|
|
209
|
+
- `GetBuildStatus` - Check build progress
|
|
210
|
+
- `FetchBuildLog` - Retrieve build logs
|
|
211
|
+
- `ListBuilds` - Search builds by criteria
|
|
212
|
+
|
|
213
|
+
### Test Analysis
|
|
214
|
+
|
|
215
|
+
- `ListTestFailures` - Get failing tests
|
|
216
|
+
- `GetTestDetails` - Detailed test information
|
|
217
|
+
- `AnalyzeBuildProblems` - Identify failure reasons
|
|
218
|
+
|
|
219
|
+
### Configuration (Full Mode Only)
|
|
220
|
+
|
|
221
|
+
- `create_build_config` - Create new TeamCity build configurations with full support for:
|
|
222
|
+
- VCS roots (Git, SVN, Perforce) with authentication
|
|
223
|
+
- Build steps (script, Maven, Gradle, npm, Docker, PowerShell)
|
|
224
|
+
- Triggers (VCS, schedule, finish-build, maven-snapshot)
|
|
225
|
+
- Parameters and template-based configurations
|
|
226
|
+
- See the Tool Reference for details: docs/mcp-tools-reference.md
|
|
227
|
+
- `CloneBuildConfig` - Duplicate configurations (coming soon)
|
|
228
|
+
- `ManageBuildSteps` - Add/edit/remove steps (coming soon)
|
|
229
|
+
- `ManageVCS` - Configure version control (coming soon)
|
|
230
|
+
|
|
231
|
+
See also: `docs/TEAMCITY_MCP_TOOLS_GUIDE.md` for an overview. Some advanced sections in that guide describe future enhancements; the behavior above reflects the current implementation.
|
|
232
|
+
|
|
233
|
+
## Contributing
|
|
234
|
+
|
|
235
|
+
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
|
236
|
+
|
|
237
|
+
## Security
|
|
238
|
+
|
|
239
|
+
- Configure `TEAMCITY_TOKEN` via environment (see `.env.example`); never commit real tokens
|
|
240
|
+
- Token-based authentication only
|
|
241
|
+
- Logs redact sensitive values
|
|
242
|
+
|
|
243
|
+
## Support
|
|
244
|
+
|
|
245
|
+
- GitHub Issues: [Report bugs or request features](https://github.com/Daghis/teamcity-mcp/issues)
|
|
246
|
+
- Documentation: See the `docs/` folder in this repository
|
|
247
|
+
|
|
248
|
+
## Acknowledgments
|
|
249
|
+
|
|
250
|
+
- JetBrains TeamCity for the excellent CI/CD platform
|
|
251
|
+
- Anthropic for the Model Control Protocol specification
|
|
252
|
+
- The open-source community for continuous support
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
Built with ❤️ for developers who love efficient CI/CD workflows
|
package/TODO.md
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# OSS Launch TODO
|
|
2
|
+
|
|
3
|
+
High-level checklist to complete before publishing the repository to GitHub.
|
|
4
|
+
|
|
5
|
+
## Legal & Notices
|
|
6
|
+
- Create `THIRD_PARTY_NOTICES.md`:
|
|
7
|
+
- Note use of JetBrains TeamCity name/trademark; clarify no affiliation or endorsement.
|
|
8
|
+
- Mention TeamCity REST API usage and link to relevant terms.
|
|
9
|
+
- Acknowledge project crafting via Anthropic’s Claude Code and OpenAI Codex CLI.
|
|
10
|
+
- List notable third‑party deps/tools: `@modelcontextprotocol/sdk`, `axios`, `zod`, `jest`, `ts-jest`, `prettier`, `eslint`, OpenAPI generator.
|
|
11
|
+
- Verify LICENSE (MIT) is correct and reflected in README.
|
|
12
|
+
|
|
13
|
+
## TeamCity Self‑Integration
|
|
14
|
+
- Create a TeamCity project that builds this repo (self‑hosting example):
|
|
15
|
+
- Steps: install deps, `npm run lint`, `npm run typecheck`, `npm test`, `npm run build`.
|
|
16
|
+
- Parameterize Node version via `.nvmrc` (24.7.0) and agent requirements.
|
|
17
|
+
- Configure secure `TEAMCITY_URL`/`TEAMCITY_TOKEN` (dev‑mode, read‑only) as server/agent parameters.
|
|
18
|
+
- Add triggers on `main` and PR branches; publish build artifacts (e.g., coverage report) for docs.
|
|
19
|
+
- Optional: nightly job to run integration smoke tests against a sandbox TeamCity instance.
|
|
20
|
+
|
|
21
|
+
## GitHub Actions (CI/CD)
|
|
22
|
+
- Add workflows (defer until ready to enable CI):
|
|
23
|
+
- `ci.yml`: Node 24, cache `~/.npm`, run `lint:check`, `format:check`, `typecheck`, and `test:coverage` (enforce thresholds); optionally upload coverage to a badge service.
|
|
24
|
+
- `release.yml`: On tag, build and publish to npm (if publishing), generate changelog and GitHub Release.
|
|
25
|
+
- `codeql.yml`: Code scanning (JavaScript/TypeScript).
|
|
26
|
+
- Optional: `e2e.yml` gated by secrets for TeamCity sandbox.
|
|
27
|
+
- Configure required checks (branch protection) for `main` when CI is enabled.
|
|
28
|
+
|
|
29
|
+
## OSS Best Practices
|
|
30
|
+
- README badges: build status (GH Actions), coverage, npm version (if publishing), license, Node version, Prettier.
|
|
31
|
+
- Add Node 24 badge and update README references to Node 24.
|
|
32
|
+
- Governance docs:
|
|
33
|
+
- `CODE_OF_CONDUCT.md` (Contributor Covenant)
|
|
34
|
+
- `SECURITY.md` (reporting policy)
|
|
35
|
+
- Ensure `CONTRIBUTING.md` aligns with workflows and labels
|
|
36
|
+
- Issue/PR templates and labels (bug, feature, question, good‑first‑issue)
|
|
37
|
+
- Release hygiene:
|
|
38
|
+
- `CHANGELOG.md` (keep a human‑readable log or use release‑please)
|
|
39
|
+
- Semantic versioning policy documented in README
|
|
40
|
+
- Repository hygiene:
|
|
41
|
+
- `CODEOWNERS` for review routing
|
|
42
|
+
- Dependabot or Renovate for deps
|
|
43
|
+
- Stale bot policy (optional)
|
|
44
|
+
|
|
45
|
+
## Packaging & Publishing
|
|
46
|
+
- `package.json` metadata: `repository`, `homepage`, `bugs`, `license`, `engines`, `exports`/`bin` (if CLI), `files` whitelist.
|
|
47
|
+
- Add `.npmignore` (or use `files` field) to exclude tests, local scripts, and docs not needed for package.
|
|
48
|
+
- Verify build output under `dist/` matches exports and type definitions.
|
|
49
|
+
|
|
50
|
+
## Codebase Quality (Housekeeping)
|
|
51
|
+
- ESLint hygiene: keep `no-await-in-loop` disables narrowly scoped around intentional sequential logic (done in current codebase; verify on new contributions).
|
|
52
|
+
- Remove remaining legacy `getTool(...)!` usages by migrating to `getRequiredTool` where applicable.
|
|
53
|
+
- Centralize env var validation (zod) in `src/config` and use consistently.
|
|
54
|
+
- Silence ESLint multi-project hint by using `tsconfig.lint.json` or enabling `noWarnOnMultipleProjects`.
|
|
55
|
+
|
|
56
|
+
## Test Stability
|
|
57
|
+
- Avoid forced Jest exits; rely on natural shutdown. Ensure timers are cleared in `tests/setup.ts` (added) and prefer fake timers in new tests.
|
|
58
|
+
|
|
59
|
+
## Documentation
|
|
60
|
+
- README refinements:
|
|
61
|
+
- Add badges, succinct Quick Start, and a minimal “Dev vs Full mode” table.
|
|
62
|
+
- Link to `docs/` and `THIRD_PARTY_NOTICES.md`.
|
|
63
|
+
- Add a short “Security & Privacy” note about token redaction and not committing secrets.
|
|
64
|
+
- Docs site (optional): publish GitHub Pages or Docusaurus if scope grows.
|
|
65
|
+
- Provide minimal examples in `examples/` to demonstrate common tool calls and MCP client integration.
|
|
66
|
+
|
|
67
|
+
## Security & Compliance
|
|
68
|
+
- Enable GitHub secret scanning and push protection.
|
|
69
|
+
- Validate token redaction in logs; keep `.env.example` minimal and safe.
|
|
70
|
+
- Add threat‑model notes (read‑only defaults in `dev` mode; `full` mode cautions).
|
|
71
|
+
|
|
72
|
+
## Project Setup on GitHub
|
|
73
|
+
- Initialize repo, push baseline, add branch protections, enable Discussions (optional).
|
|
74
|
+
- Configure Actions permissions (workflows can create releases/tags if needed).
|
|
75
|
+
- Configure CI required checks and status badges.
|
|
76
|
+
|
|
77
|
+
## Nice‑to‑Haves (Post‑Launch)
|
|
78
|
+
- Benchmarks and performance notes for large TeamCity instances.
|
|
79
|
+
- Example TeamCity templates for self‑integration (YAML or screenshots).
|
|
80
|
+
- Automated docs generation (OpenAPI → client usage snippets) if we add an API facade.
|