harness-mcp-v2 3.2.26 → 3.2.27
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/README.md +10 -6
- package/build/data/schemas/v0/pipeline.d.ts.map +1 -1
- package/build/data/schemas/v0/pipeline.js +28 -145
- package/build/data/schemas/v0/pipeline.js.map +1 -1
- package/build/data/schemas/v0/template.d.ts.map +1 -1
- package/build/data/schemas/v0/template.js +28 -145
- package/build/data/schemas/v0/template.js.map +1 -1
- package/build/data/schemas/v1/pipeline.d.ts.map +1 -1
- package/build/data/schemas/v1/pipeline.js +71 -0
- package/build/data/schemas/v1/pipeline.js.map +1 -1
- package/build/data/schemas/v1/template.d.ts.map +1 -1
- package/build/data/schemas/v1/template.js +76 -7
- package/build/data/schemas/v1/template.js.map +1 -1
- package/build/prompts/business-value-review.d.ts.map +1 -1
- package/build/prompts/business-value-review.js +7 -5
- package/build/prompts/business-value-review.js.map +1 -1
- package/build/prompts/optimize-costs.js +1 -1
- package/build/prompts/rightsizing.js +2 -2
- package/build/registry/index.js +1 -1
- package/build/registry/index.js.map +1 -1
- package/build/registry/toolsets/ccm.d.ts.map +1 -1
- package/build/registry/toolsets/ccm.js +112 -91
- package/build/registry/toolsets/ccm.js.map +1 -1
- package/build/registry/toolsets/chaos-descriptions.d.ts +3 -3
- package/build/registry/toolsets/chaos-descriptions.d.ts.map +1 -1
- package/build/registry/toolsets/chaos-descriptions.js +5 -3
- package/build/registry/toolsets/chaos-descriptions.js.map +1 -1
- package/build/registry/toolsets/chaos.d.ts.map +1 -1
- package/build/registry/toolsets/chaos.js +34 -0
- package/build/registry/toolsets/chaos.js.map +1 -1
- package/build/registry/toolsets/feature-flags.d.ts.map +1 -1
- package/build/registry/toolsets/feature-flags.js +263 -0
- package/build/registry/toolsets/feature-flags.js.map +1 -1
- package/build/registry/toolsets/registries.d.ts.map +1 -1
- package/build/registry/toolsets/registries.js +79 -14
- package/build/registry/toolsets/registries.js.map +1 -1
- package/build/registry/toolsets/repositories.d.ts.map +1 -1
- package/build/registry/toolsets/repositories.js +73 -11
- package/build/registry/toolsets/repositories.js.map +1 -1
- package/build/registry/types.d.ts +1 -1
- package/build/registry/types.d.ts.map +1 -1
- package/build/utils/url-parser.d.ts.map +1 -1
- package/build/utils/url-parser.js +9 -3
- package/build/utils/url-parser.js.map +1 -1
- package/npm-shrinkwrap.json +6 -16
- package/package.json +10 -4
- package/scripts/adm-zip-security-lib.mjs +5 -5
- package/scripts/ensure-secure-adm-zip.mjs +7 -7
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://mcptoplist.com/server/glama%2Fharness%2Fmcp-server)
|
|
4
4
|
|
|
5
|
-
An MCP (Model Context Protocol) server that gives AI agents full access to the Harness.io platform through 11 consolidated tools and
|
|
5
|
+
An MCP (Model Context Protocol) server that gives AI agents full access to the Harness.io platform through 11 consolidated tools and 247 resource types.
|
|
6
6
|
|
|
7
7
|
## Why Use This MCP Server
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Most MCP servers map one tool per API endpoint. For a platform as broad as Harne
|
|
|
10
10
|
|
|
11
11
|
This server is built differently:
|
|
12
12
|
|
|
13
|
-
- **11 tools,
|
|
13
|
+
- **11 tools, 247 resource types.** A registry-based dispatch system routes `harness_list`, `harness_get`, `harness_create`, etc. to any Harness resource — pipelines, services, environments, orgs, projects, feature flags, cost data, and more. The LLM picks from 11 tools instead of hundreds.
|
|
14
14
|
- **Full platform coverage.** 41 default toolsets spanning CI/CD, GitOps, Feature Flags, Cloud Cost Management, Security Testing, Chaos Engineering, Database DevOps, Internal Developer Portal, Software Supply Chain, Infrastructure as Code Management, Release Management, Governance, Service Overrides, Knowledge Graph, and more. Opt-in Ansible coverage is available when you need inventory and playbook data.
|
|
15
15
|
- **Multi-project workflows out of the box.** Agents discover organizations and projects dynamically — no hardcoded env vars needed. Ask "show failed executions across all projects" and the agent can navigate the full account hierarchy.
|
|
16
16
|
- **35 prompt templates.** Pre-built prompts for common workflows: build & deploy apps end-to-end, debug failed pipelines, review DORA metrics, triage vulnerabilities, optimize cloud costs, audit access control, plan feature flag rollouts, review pull requests, approve pending pipelines, and more.
|
|
@@ -1261,7 +1261,7 @@ Harness pipelines can be stored in three ways:
|
|
|
1261
1261
|
|
|
1262
1262
|
## Resource Types
|
|
1263
1263
|
|
|
1264
|
-
|
|
1264
|
+
247 resource types organized across 41 toolsets. Each resource type supports a subset of CRUD operations and optional execute actions.
|
|
1265
1265
|
|
|
1266
1266
|
### Platform
|
|
1267
1267
|
|
|
@@ -1646,9 +1646,11 @@ Read progress with `harness_get(resource_type="vibe_app_lifecycle", resource_id=
|
|
|
1646
1646
|
| `fme_segment_keys` | x | | | x | | |
|
|
1647
1647
|
| `fme_segment` | x | x | x | x | x | |
|
|
1648
1648
|
| `fme_segment_definition` | x | x | x | x | x | `list_keys`, `add_keys`, `remove_keys` |
|
|
1649
|
+
| `fme_metric` | x | x | x | x | x | |
|
|
1650
|
+
| `fme_event_type` | x | x | | | | |
|
|
1649
1651
|
|
|
1650
1652
|
|
|
1651
|
-
**FME (Split.io) resources** — `fme_`* resources support **dual-mode scoping**: legacy calls pass `workspace_id` and hit the Split.io API (`api.split.io`); newer calls pass `org_id`+`project_id` together and hit Harness-native endpoints (standard `HARNESS_API_KEY`/`HARNESS_BASE_URL`, same auth as every other `harness_*` resource) instead. Passing both `workspace_id` and `org_id`/`project_id` on the same call, or mixing `org_id` with `project_id` alone, is an error — pick one mode per call. Every operation below is available in legacy mode, unchanged. Harness-native mode coverage is currently narrower:
|
|
1653
|
+
**FME (Split.io) resources** — `fme_`* resources support **dual-mode scoping**: legacy calls pass `workspace_id` and hit the Split.io API (`api.split.io`); newer calls pass `org_id`+`project_id` together and hit Harness-native endpoints (standard `HARNESS_API_KEY`/`HARNESS_BASE_URL`, same auth as every other `harness_*` resource) instead. Passing both `workspace_id` and `org_id`/`project_id` on the same call, or mixing `org_id` with `project_id` alone, is an error — pick one mode per call. Every operation below is available in legacy mode, unchanged, unless the resource is marked Harness-native only. Harness-native mode coverage is currently narrower:
|
|
1652
1654
|
|
|
1653
1655
|
- **`fme_workspace`** — no Harness-native equivalent; legacy-only (used to discover `workspace_id` values).
|
|
1654
1656
|
- **`fme_environment`** — dual-mode `list` (`workspace_id` or `org_id`+`project_id`). `get`/`create`/`update`/`delete` are Harness-native only (`/fme/api/v4/environments`) — MCP never had a `workspace_id` contract for those ops. Native list uses optional `offset`/`limit` (max 100; `harness_list` `size` maps to `limit`); envelope `{data, limit, offset, totalCount}` is promoted to `items`/`total`. Native create/update use `isProduction` (`production` accepted as an alias). Native update is JSON Merge Patch; `name` and `isProduction` are not clearable. Name max 15 characters.
|
|
@@ -1664,6 +1666,8 @@ Read progress with `harness_get(resource_type="vibe_app_lifecycle", resource_id=
|
|
|
1664
1666
|
- **`fme_segment_keys`** — `list`/`update` remain legacy (`workspace_id` / `environment_id`+`segment_name`). Harness-native (`org_id`+`project_id`) is rejected — use `fme_segment_definition` execute `list_keys`/`add_keys`/`remove_keys`.
|
|
1665
1667
|
- **`fme_segment`** — Native only (`org_id`+`project_id`). CRUD. `list`/`get`/`update`/`delete` require `segment_type`: `STANDARD` | `LARGE` | `RULE_BASED`. Create body: `name`, `trafficType`, `segmentType`; optional `description`, `tags`, `owners`.
|
|
1666
1668
|
- **`fme_segment_definition`** — Native only. CRUD plus execute `list_keys`/`add_keys`/`remove_keys`. Update is description only. Delete fails with `hasDependents` while keys remain.
|
|
1669
|
+
- **`fme_metric`** — Harness-native only (no legacy `workspace_id` support). `list`/`get`/`create`/`update`/`delete` are wired to `/fme/api/v4/metrics` (`list`'s `harness_list` `size` maps to `limit`). `create` requires `spread` even though the backend `CreateMetricRequest` keeps it optional (default `PER`) — an MCP-side-only stricter contract, since omitting it silently changes a `RATE` metric's semantics. `update` is JSON Merge Patch; `name`/`trafficType` are immutable and not accepted. `delete` is a permanent hard delete (no archive/restore) — classified `destructive`.
|
|
1670
|
+
- **`fme_event_type`** — Harness-native only (no legacy `workspace_id` support). Read-only: `list`/`get` are wired to `/fme/api/v4/event-types`; `id` is the event name. Only event types with events in the last 30 days are visible; `get` returns a 404 for an event type outside the requesting workspace's traffic-type scope, or idle longer than 30 days. List filters: `name` (substring), `traffic_type` (by ID or name), `offset`/`limit` (`harness_list` `size` maps to `limit`). Use this to discover real event type IDs before referencing one in `fme_metric`'s `baseEventTypes`/`filterEventType` or `event_type_ids` filter, instead of guessing an ID.
|
|
1667
1671
|
|
|
1668
1672
|
In single-user/self-hosted mode, legacy-mode auth uses a Bearer token from `HARNESS_FME_API_KEY`, falling back to a non-placeholder `HARNESS_API_KEY`. `HARNESS_FME_API_KEY` may be a legacy Split admin key or an FME-entitled Harness PAT/SAT, but it is rejected in `multi-user` mode so shared deployments cannot override each session user's credential. Hosted OAuth/service-routing credentials for Harness platform APIs do not authenticate direct Split.io requests. `fme_feature_flag` supports full lifecycle management in legacy mode: create (requires `traffic_type_id`), list, get, update metadata, delete, and kill/restore/reallocate/archive/unarchive execute actions. Use `fme_traffic_type` to discover traffic type IDs, `fme_identity` to create/update identity attributes, and `fme_standard_segment` / `fme_segment_keys` to inspect standard segments and add member keys. `fme_rule_based_segment` provides CRUD for targeting segments, while `fme_rule_based_segment_definition` manages environment-specific segment rules with enable/disable and change request approval flows.
|
|
1669
1673
|
|
|
@@ -2002,7 +2006,7 @@ Available toolset names:
|
|
|
2002
2006
|
| `dashboards` | dashboard, dashboard_data |
|
|
2003
2007
|
| `idp` | idp_entity, scorecard, scorecard_check, scorecard_stats, scorecard_check_stats, idp_score, idp_workflow, idp_tech_doc |
|
|
2004
2008
|
| `pull-requests` | pull_request, pr_reviewer, pr_comment, pr_check, pr_activity |
|
|
2005
|
-
| `feature-flags` | fme_workspace, fme_environment, fme_feature_flag, fme_feature_flag_definition, fme_rollout_status, fme_rule_based_segment, fme_rule_based_segment_definition, fme_traffic_type, fme_identity, fme_standard_segment, fme_segment_keys, fme_segment, fme_segment_definition |
|
|
2009
|
+
| `feature-flags` | fme_workspace, fme_environment, fme_feature_flag, fme_feature_flag_definition, fme_rollout_status, fme_rule_based_segment, fme_rule_based_segment_definition, fme_traffic_type, fme_identity, fme_standard_segment, fme_segment_keys, fme_segment, fme_segment_definition, fme_metric, fme_event_type |
|
|
2006
2010
|
| `gitops` | gitops_agent, gitops_application, gitops_cluster, gitops_repository, gitops_applicationset, gitops_repo_credential, gitops_app_event, gitops_pod_log, gitops_managed_resource, gitops_resource_action, gitops_dashboard, gitops_app_resource_tree |
|
|
2007
2011
|
| `chaos` | chaos_experiment, chaos_experiment_run, chaos_experiment_variable, chaos_component_variable, chaos_input_set, chaos_experiment_template, chaos_probe, chaos_probe_in_run, chaos_probe_template, chaos_infrastructure, chaos_k8s_infrastructure, chaos_enabled_infrastructure, chaos_environment, chaos_hub, chaos_hub_fault, chaos_fault, chaos_fault_template, chaos_fault_experiment_run, chaos_action, chaos_action_template, chaos_loadtest, chaos_service, chaos_application_map, discovered_agent, discovered_namespace, discovered_service, discovered_network_map, chaos_guard_condition, chaos_guard_rule, chaos_recommendation, chaos_risk, chaos_dr_test, scanned_risk, chaos_risk_rule, chaos_risk_scan |
|
|
2008
2012
|
| `ccm` | cost_perspective, cost_breakdown, cost_timeseries, cost_summary, cost_recommendation, cost_anomaly, cost_anomaly_summary, cost_category, cost_account_overview, cost_filter_value, cost_recommendation_stats, cost_recommendation_detail, cost_commitment |
|
|
@@ -2042,7 +2046,7 @@ Available toolset names:
|
|
|
2042
2046
|
+--------v---------+
|
|
2043
2047
|
| Registry | <-- Declarative resource definitions
|
|
2044
2048
|
| 41 Toolsets | (data files, not code)
|
|
2045
|
-
|
|
|
2049
|
+
| 247 Resource Types|
|
|
2046
2050
|
+--------+---------+
|
|
2047
2051
|
|
|
|
2048
2052
|
+--------v---------+
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/data/schemas/v0/pipeline.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/data/schemas/v0/pipeline.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CA2vzH/B,CAAC;AACF,eAAe,MAAM,CAAC"}
|
|
@@ -30024,7 +30024,9 @@ const schema = {
|
|
|
30024
30024
|
{
|
|
30025
30025
|
"type": "string",
|
|
30026
30026
|
"enum": [
|
|
30027
|
-
"pr_scan"
|
|
30027
|
+
"pr_scan",
|
|
30028
|
+
"full",
|
|
30029
|
+
"incremental"
|
|
30028
30030
|
]
|
|
30029
30031
|
},
|
|
30030
30032
|
{
|
|
@@ -30169,7 +30171,9 @@ const schema = {
|
|
|
30169
30171
|
{
|
|
30170
30172
|
"type": "string",
|
|
30171
30173
|
"enum": [
|
|
30172
|
-
"pr_scan"
|
|
30174
|
+
"pr_scan",
|
|
30175
|
+
"full",
|
|
30176
|
+
"incremental"
|
|
30173
30177
|
]
|
|
30174
30178
|
},
|
|
30175
30179
|
{
|
|
@@ -36926,19 +36930,8 @@ const schema = {
|
|
|
36926
36930
|
]
|
|
36927
36931
|
},
|
|
36928
36932
|
"reuse": {
|
|
36929
|
-
"
|
|
36930
|
-
|
|
36931
|
-
"type": "string",
|
|
36932
|
-
"not": {
|
|
36933
|
-
"pattern": "^<\\+.*>.*$"
|
|
36934
|
-
}
|
|
36935
|
-
},
|
|
36936
|
-
{
|
|
36937
|
-
"type": "string",
|
|
36938
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|selectManyFrom|default|regex)\\(.+?\\))*$",
|
|
36939
|
-
"minLength": 1
|
|
36940
|
-
}
|
|
36941
|
-
]
|
|
36933
|
+
"type": "string",
|
|
36934
|
+
"minLength": 1
|
|
36942
36935
|
},
|
|
36943
36936
|
"markNextChangeSetRun": {
|
|
36944
36937
|
"type": "boolean"
|
|
@@ -37176,19 +37169,8 @@ const schema = {
|
|
|
37176
37169
|
]
|
|
37177
37170
|
},
|
|
37178
37171
|
"reuse": {
|
|
37179
|
-
"
|
|
37180
|
-
|
|
37181
|
-
"type": "string",
|
|
37182
|
-
"not": {
|
|
37183
|
-
"pattern": "^<\\+.*>.*$"
|
|
37184
|
-
}
|
|
37185
|
-
},
|
|
37186
|
-
{
|
|
37187
|
-
"type": "string",
|
|
37188
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|selectManyFrom|default|regex)\\(.+?\\))*$",
|
|
37189
|
-
"minLength": 1
|
|
37190
|
-
}
|
|
37191
|
-
]
|
|
37172
|
+
"type": "string",
|
|
37173
|
+
"minLength": 1
|
|
37192
37174
|
},
|
|
37193
37175
|
"resources": {
|
|
37194
37176
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -37407,19 +37389,8 @@ const schema = {
|
|
|
37407
37389
|
]
|
|
37408
37390
|
},
|
|
37409
37391
|
"reuse": {
|
|
37410
|
-
"
|
|
37411
|
-
|
|
37412
|
-
"type": "string",
|
|
37413
|
-
"not": {
|
|
37414
|
-
"pattern": "^<\\+.*>.*$"
|
|
37415
|
-
}
|
|
37416
|
-
},
|
|
37417
|
-
{
|
|
37418
|
-
"type": "string",
|
|
37419
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|selectManyFrom|default|regex)\\(.+?\\))*$",
|
|
37420
|
-
"minLength": 1
|
|
37421
|
-
}
|
|
37422
|
-
]
|
|
37392
|
+
"type": "string",
|
|
37393
|
+
"minLength": 1
|
|
37423
37394
|
},
|
|
37424
37395
|
"excludeChangeLogFile": {
|
|
37425
37396
|
"type": "boolean"
|
|
@@ -37533,19 +37504,8 @@ const schema = {
|
|
|
37533
37504
|
]
|
|
37534
37505
|
},
|
|
37535
37506
|
"reuse": {
|
|
37536
|
-
"
|
|
37537
|
-
|
|
37538
|
-
"type": "string",
|
|
37539
|
-
"not": {
|
|
37540
|
-
"pattern": "^<\\+.*>.*$"
|
|
37541
|
-
}
|
|
37542
|
-
},
|
|
37543
|
-
{
|
|
37544
|
-
"type": "string",
|
|
37545
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|selectManyFrom|default|regex)\\(.+?\\))*$",
|
|
37546
|
-
"minLength": 1
|
|
37547
|
-
}
|
|
37548
|
-
]
|
|
37507
|
+
"type": "string",
|
|
37508
|
+
"minLength": 1
|
|
37549
37509
|
},
|
|
37550
37510
|
"excludeChangeLogFile": {
|
|
37551
37511
|
"type": "boolean"
|
|
@@ -38049,19 +38009,8 @@ const schema = {
|
|
|
38049
38009
|
]
|
|
38050
38010
|
},
|
|
38051
38011
|
"reuse": {
|
|
38052
|
-
"
|
|
38053
|
-
|
|
38054
|
-
"type": "string",
|
|
38055
|
-
"not": {
|
|
38056
|
-
"pattern": "^<\\+.*>.*$"
|
|
38057
|
-
}
|
|
38058
|
-
},
|
|
38059
|
-
{
|
|
38060
|
-
"type": "string",
|
|
38061
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38062
|
-
"minLength": 1
|
|
38063
|
-
}
|
|
38064
|
-
]
|
|
38012
|
+
"type": "string",
|
|
38013
|
+
"minLength": 1
|
|
38065
38014
|
},
|
|
38066
38015
|
"resources": {
|
|
38067
38016
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -38174,19 +38123,8 @@ const schema = {
|
|
|
38174
38123
|
]
|
|
38175
38124
|
},
|
|
38176
38125
|
"reuse": {
|
|
38177
|
-
"
|
|
38178
|
-
|
|
38179
|
-
"type": "string",
|
|
38180
|
-
"not": {
|
|
38181
|
-
"pattern": "^<\\+.*>.*$"
|
|
38182
|
-
}
|
|
38183
|
-
},
|
|
38184
|
-
{
|
|
38185
|
-
"type": "string",
|
|
38186
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38187
|
-
"minLength": 1
|
|
38188
|
-
}
|
|
38189
|
-
]
|
|
38126
|
+
"type": "string",
|
|
38127
|
+
"minLength": 1
|
|
38190
38128
|
},
|
|
38191
38129
|
"resources": {
|
|
38192
38130
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -38404,19 +38342,8 @@ const schema = {
|
|
|
38404
38342
|
]
|
|
38405
38343
|
},
|
|
38406
38344
|
"reuse": {
|
|
38407
|
-
"
|
|
38408
|
-
|
|
38409
|
-
"type": "string",
|
|
38410
|
-
"not": {
|
|
38411
|
-
"pattern": "^<\\+.*>.*$"
|
|
38412
|
-
}
|
|
38413
|
-
},
|
|
38414
|
-
{
|
|
38415
|
-
"type": "string",
|
|
38416
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38417
|
-
"minLength": 1
|
|
38418
|
-
}
|
|
38419
|
-
]
|
|
38345
|
+
"type": "string",
|
|
38346
|
+
"minLength": 1
|
|
38420
38347
|
},
|
|
38421
38348
|
"resources": {
|
|
38422
38349
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -38523,19 +38450,8 @@ const schema = {
|
|
|
38523
38450
|
]
|
|
38524
38451
|
},
|
|
38525
38452
|
"reuse": {
|
|
38526
|
-
"
|
|
38527
|
-
|
|
38528
|
-
"type": "string",
|
|
38529
|
-
"not": {
|
|
38530
|
-
"pattern": "^<\\+.*>.*$"
|
|
38531
|
-
}
|
|
38532
|
-
},
|
|
38533
|
-
{
|
|
38534
|
-
"type": "string",
|
|
38535
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38536
|
-
"minLength": 1
|
|
38537
|
-
}
|
|
38538
|
-
]
|
|
38453
|
+
"type": "string",
|
|
38454
|
+
"minLength": 1
|
|
38539
38455
|
},
|
|
38540
38456
|
"resources": {
|
|
38541
38457
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -38783,19 +38699,8 @@ const schema = {
|
|
|
38783
38699
|
]
|
|
38784
38700
|
},
|
|
38785
38701
|
"reuse": {
|
|
38786
|
-
"
|
|
38787
|
-
|
|
38788
|
-
"type": "string",
|
|
38789
|
-
"not": {
|
|
38790
|
-
"pattern": "^<\\+.*>.*$"
|
|
38791
|
-
}
|
|
38792
|
-
},
|
|
38793
|
-
{
|
|
38794
|
-
"type": "string",
|
|
38795
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38796
|
-
"minLength": 1
|
|
38797
|
-
}
|
|
38798
|
-
]
|
|
38702
|
+
"type": "string",
|
|
38703
|
+
"minLength": 1
|
|
38799
38704
|
},
|
|
38800
38705
|
"resources": {
|
|
38801
38706
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -38932,19 +38837,8 @@ const schema = {
|
|
|
38932
38837
|
]
|
|
38933
38838
|
},
|
|
38934
38839
|
"reuse": {
|
|
38935
|
-
"
|
|
38936
|
-
|
|
38937
|
-
"type": "string",
|
|
38938
|
-
"not": {
|
|
38939
|
-
"pattern": "^<\\+.*>.*$"
|
|
38940
|
-
}
|
|
38941
|
-
},
|
|
38942
|
-
{
|
|
38943
|
-
"type": "string",
|
|
38944
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|default|regex)\\(.+?\\))*$",
|
|
38945
|
-
"minLength": 1
|
|
38946
|
-
}
|
|
38947
|
-
]
|
|
38840
|
+
"type": "string",
|
|
38841
|
+
"minLength": 1
|
|
38948
38842
|
},
|
|
38949
38843
|
"resources": {
|
|
38950
38844
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|
|
@@ -39166,19 +39060,8 @@ const schema = {
|
|
|
39166
39060
|
]
|
|
39167
39061
|
},
|
|
39168
39062
|
"reuse": {
|
|
39169
|
-
"
|
|
39170
|
-
|
|
39171
|
-
"type": "string",
|
|
39172
|
-
"not": {
|
|
39173
|
-
"pattern": "^<\\+.*>.*$"
|
|
39174
|
-
}
|
|
39175
|
-
},
|
|
39176
|
-
{
|
|
39177
|
-
"type": "string",
|
|
39178
|
-
"pattern": "^<\\+input>((\\.)(allowedValues|selectOneFrom|selectManyFrom|default|regex)\\(.+?\\))*$",
|
|
39179
|
-
"minLength": 1
|
|
39180
|
-
}
|
|
39181
|
-
]
|
|
39063
|
+
"type": "string",
|
|
39064
|
+
"minLength": 1
|
|
39182
39065
|
},
|
|
39183
39066
|
"resources": {
|
|
39184
39067
|
"$ref": "#/definitions/pipeline/common/ContainerResource"
|