@pulumi/artifactory 8.10.4 → 8.10.5
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/archivePolicy.d.ts +35 -8
- package/archivePolicy.js +35 -8
- package/archivePolicy.js.map +1 -1
- package/getRemoteVcsRepository.d.ts +3 -3
- package/package.json +2 -2
- package/packageCleanupPolicy.d.ts +36 -8
- package/packageCleanupPolicy.js +36 -8
- package/packageCleanupPolicy.js.map +1 -1
- package/remoteVcsRepository.d.ts +3 -9
- package/remoteVcsRepository.js.map +1 -1
package/archivePolicy.d.ts
CHANGED
|
@@ -86,7 +86,7 @@ import * as outputs from "./types/output";
|
|
|
86
86
|
*
|
|
87
87
|
* ### Using Variables for Condition Fields
|
|
88
88
|
*
|
|
89
|
-
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
89
|
+
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`, `excludedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
90
90
|
*
|
|
91
91
|
* **Example with variables:**
|
|
92
92
|
*
|
|
@@ -128,22 +128,49 @@ import * as outputs from "./types/output";
|
|
|
128
128
|
* - Variables without default values will require values to be provided during `pulumi preview` or `pulumi up`
|
|
129
129
|
* - The validator automatically skips validation when condition field values are unknown (variables), preventing false validation errors during `terraform validate`
|
|
130
130
|
*
|
|
131
|
+
* ### Time-based and properties-based combined
|
|
132
|
+
*
|
|
133
|
+
* You may combine **time-based** fields (e.g. `createdBeforeInDays`, `lastDownloadedBeforeInDays`) with **`includedProperties`** in the same policy. **`keepLastNVersions`** cannot be used together with time-based or properties-based conditions—use version-based logic alone, or time and/or properties without `keepLastNVersions`.
|
|
134
|
+
*
|
|
135
|
+
* ```typescript
|
|
136
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
137
|
+
* import * as artifactory from "@pulumi/artifactory";
|
|
138
|
+
*
|
|
139
|
+
* const time_and_properties = new artifactory.ArchivePolicy("time-and-properties", {
|
|
140
|
+
* key: "time-and-properties",
|
|
141
|
+
* description: "Archive old packages that match a property",
|
|
142
|
+
* cronExpression: "0 0 2 ? * MON-SAT *",
|
|
143
|
+
* durationInMinutes: 60,
|
|
144
|
+
* enabled: true,
|
|
145
|
+
* skipTrashcan: false,
|
|
146
|
+
* searchCriteria: {
|
|
147
|
+
* packageTypes: ["docker"],
|
|
148
|
+
* repos: ["**"],
|
|
149
|
+
* includeAllProjects: true,
|
|
150
|
+
* includedProjects: [],
|
|
151
|
+
* includedPackages: ["**"],
|
|
152
|
+
* excludedPackages: [],
|
|
153
|
+
* lastDownloadedBeforeInDays: 90,
|
|
154
|
+
* includedProperties: {
|
|
155
|
+
* "retention.archive": ["true"],
|
|
156
|
+
* },
|
|
157
|
+
* },
|
|
158
|
+
* });
|
|
159
|
+
* ```
|
|
160
|
+
*
|
|
131
161
|
* ## Validation Rules
|
|
132
162
|
*
|
|
133
163
|
* The archive policy resource enforces the following validation rules:
|
|
134
164
|
*
|
|
135
|
-
* 1. **
|
|
136
|
-
* - Time-based conditions (`days-based`)
|
|
137
|
-
* - Version-based condition (`keepLastNVersions`)
|
|
138
|
-
* - Properties-based condition (`includedProperties`)
|
|
165
|
+
* 1. **At least one condition**: A policy must specify at least one of: time-based (days or months), version-based (`keepLastNVersions`), or properties-based (`includedProperties`).
|
|
139
166
|
*
|
|
140
|
-
* 2. **
|
|
167
|
+
* 2. **Version-based exclusivity**: `keepLastNVersions` cannot be combined with time-based conditions or with `includedProperties`. Time-based and properties-based conditions **may** be combined.
|
|
141
168
|
*
|
|
142
|
-
* 3. **Zero Values**:
|
|
169
|
+
* 3. **Zero Values**: When set, time-based and version-based condition values must be greater than 0.
|
|
143
170
|
*
|
|
144
171
|
* 4. **Days vs Months**: Cannot use both days-based conditions (`createdBeforeInDays`, `lastDownloadedBeforeInDays`) and months-based conditions (`createdBeforeInMonths`, `lastDownloadedBeforeInMonths`) together.
|
|
145
172
|
*
|
|
146
|
-
* 5. **Properties Validation**:
|
|
173
|
+
* 5. **Properties Validation**: When using `includedProperties` or `excludedProperties`, each map must have exactly one key with exactly one string value.
|
|
147
174
|
*
|
|
148
175
|
* 6. **Project Configuration**: When `includeAllProjects` is set to `true`, the `includedProjects` field can be empty array. When `includeAllProjects` is `false`, `includedProjects` must contain at least one project key.
|
|
149
176
|
*
|
package/archivePolicy.js
CHANGED
|
@@ -90,7 +90,7 @@ const utilities = require("./utilities");
|
|
|
90
90
|
*
|
|
91
91
|
* ### Using Variables for Condition Fields
|
|
92
92
|
*
|
|
93
|
-
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
93
|
+
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`, `excludedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
94
94
|
*
|
|
95
95
|
* **Example with variables:**
|
|
96
96
|
*
|
|
@@ -132,22 +132,49 @@ const utilities = require("./utilities");
|
|
|
132
132
|
* - Variables without default values will require values to be provided during `pulumi preview` or `pulumi up`
|
|
133
133
|
* - The validator automatically skips validation when condition field values are unknown (variables), preventing false validation errors during `terraform validate`
|
|
134
134
|
*
|
|
135
|
+
* ### Time-based and properties-based combined
|
|
136
|
+
*
|
|
137
|
+
* You may combine **time-based** fields (e.g. `createdBeforeInDays`, `lastDownloadedBeforeInDays`) with **`includedProperties`** in the same policy. **`keepLastNVersions`** cannot be used together with time-based or properties-based conditions—use version-based logic alone, or time and/or properties without `keepLastNVersions`.
|
|
138
|
+
*
|
|
139
|
+
* ```typescript
|
|
140
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
141
|
+
* import * as artifactory from "@pulumi/artifactory";
|
|
142
|
+
*
|
|
143
|
+
* const time_and_properties = new artifactory.ArchivePolicy("time-and-properties", {
|
|
144
|
+
* key: "time-and-properties",
|
|
145
|
+
* description: "Archive old packages that match a property",
|
|
146
|
+
* cronExpression: "0 0 2 ? * MON-SAT *",
|
|
147
|
+
* durationInMinutes: 60,
|
|
148
|
+
* enabled: true,
|
|
149
|
+
* skipTrashcan: false,
|
|
150
|
+
* searchCriteria: {
|
|
151
|
+
* packageTypes: ["docker"],
|
|
152
|
+
* repos: ["**"],
|
|
153
|
+
* includeAllProjects: true,
|
|
154
|
+
* includedProjects: [],
|
|
155
|
+
* includedPackages: ["**"],
|
|
156
|
+
* excludedPackages: [],
|
|
157
|
+
* lastDownloadedBeforeInDays: 90,
|
|
158
|
+
* includedProperties: {
|
|
159
|
+
* "retention.archive": ["true"],
|
|
160
|
+
* },
|
|
161
|
+
* },
|
|
162
|
+
* });
|
|
163
|
+
* ```
|
|
164
|
+
*
|
|
135
165
|
* ## Validation Rules
|
|
136
166
|
*
|
|
137
167
|
* The archive policy resource enforces the following validation rules:
|
|
138
168
|
*
|
|
139
|
-
* 1. **
|
|
140
|
-
* - Time-based conditions (`days-based`)
|
|
141
|
-
* - Version-based condition (`keepLastNVersions`)
|
|
142
|
-
* - Properties-based condition (`includedProperties`)
|
|
169
|
+
* 1. **At least one condition**: A policy must specify at least one of: time-based (days or months), version-based (`keepLastNVersions`), or properties-based (`includedProperties`).
|
|
143
170
|
*
|
|
144
|
-
* 2. **
|
|
171
|
+
* 2. **Version-based exclusivity**: `keepLastNVersions` cannot be combined with time-based conditions or with `includedProperties`. Time-based and properties-based conditions **may** be combined.
|
|
145
172
|
*
|
|
146
|
-
* 3. **Zero Values**:
|
|
173
|
+
* 3. **Zero Values**: When set, time-based and version-based condition values must be greater than 0.
|
|
147
174
|
*
|
|
148
175
|
* 4. **Days vs Months**: Cannot use both days-based conditions (`createdBeforeInDays`, `lastDownloadedBeforeInDays`) and months-based conditions (`createdBeforeInMonths`, `lastDownloadedBeforeInMonths`) together.
|
|
149
176
|
*
|
|
150
|
-
* 5. **Properties Validation**:
|
|
177
|
+
* 5. **Properties Validation**: When using `includedProperties` or `excludedProperties`, each map must have exactly one key with exactly one string value.
|
|
151
178
|
*
|
|
152
179
|
* 6. **Project Configuration**: When `includeAllProjects` is set to `true`, the `includedProjects` field can be empty array. When `includeAllProjects` is `false`, `includedProjects` must contain at least one project key.
|
|
153
180
|
*
|
package/archivePolicy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archivePolicy.js","sourceRoot":"","sources":["../archivePolicy.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"archivePolicy.js","sourceRoot":"","sources":["../archivePolicy.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,7 +74,7 @@ export interface GetRemoteVcsRepositoryArgs {
|
|
|
74
74
|
*/
|
|
75
75
|
vcsGitDownloadUrl?: string;
|
|
76
76
|
/**
|
|
77
|
-
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
77
|
+
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
78
78
|
*/
|
|
79
79
|
vcsGitProvider?: string;
|
|
80
80
|
xrayIndex?: boolean;
|
|
@@ -139,7 +139,7 @@ export interface GetRemoteVcsRepositoryResult {
|
|
|
139
139
|
*/
|
|
140
140
|
readonly vcsGitDownloadUrl?: string;
|
|
141
141
|
/**
|
|
142
|
-
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
142
|
+
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
143
143
|
*/
|
|
144
144
|
readonly vcsGitProvider?: string;
|
|
145
145
|
readonly xrayIndex?: boolean;
|
|
@@ -217,7 +217,7 @@ export interface GetRemoteVcsRepositoryOutputArgs {
|
|
|
217
217
|
*/
|
|
218
218
|
vcsGitDownloadUrl?: pulumi.Input<string>;
|
|
219
219
|
/**
|
|
220
|
-
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
220
|
+
* (Optional) Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
221
221
|
*/
|
|
222
222
|
vcsGitProvider?: pulumi.Input<string>;
|
|
223
223
|
xrayIndex?: pulumi.Input<boolean>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/artifactory",
|
|
3
|
-
"version": "8.10.
|
|
3
|
+
"version": "8.10.5",
|
|
4
4
|
"description": "A Pulumi package for creating and managing artifactory cloud resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"pulumi": {
|
|
24
24
|
"resource": true,
|
|
25
25
|
"name": "artifactory",
|
|
26
|
-
"version": "8.10.
|
|
26
|
+
"version": "8.10.5"
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -90,7 +90,7 @@ import * as outputs from "./types/output";
|
|
|
90
90
|
*
|
|
91
91
|
* ### Using Variables for Condition Fields
|
|
92
92
|
*
|
|
93
|
-
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
93
|
+
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`, `excludedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
94
94
|
*
|
|
95
95
|
* **Example with variables:**
|
|
96
96
|
*
|
|
@@ -132,22 +132,49 @@ import * as outputs from "./types/output";
|
|
|
132
132
|
* - Variables without default values will require values to be provided during `pulumi preview` or `pulumi up`
|
|
133
133
|
* - The validator automatically skips validation when condition field values are unknown (variables), preventing false validation errors during `terraform validate`
|
|
134
134
|
*
|
|
135
|
+
* ### Time-based and properties-based combined
|
|
136
|
+
*
|
|
137
|
+
* You may combine **time-based** fields with **`includedProperties`** in the same policy. On the Artifactory platform, matching both time and property criteria uses **AND** semantics from **Artifactory 7.129** onward. **`keepLastNVersions`** cannot be used together with time-based or properties-based conditions.
|
|
138
|
+
*
|
|
139
|
+
* ```typescript
|
|
140
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
141
|
+
* import * as artifactory from "@pulumi/artifactory";
|
|
142
|
+
*
|
|
143
|
+
* const time_and_properties = new artifactory.PackageCleanupPolicy("time-and-properties", {
|
|
144
|
+
* key: "time-and-properties",
|
|
145
|
+
* description: "Delete old packages that match a property",
|
|
146
|
+
* cronExpression: "0 0 2 ? * MON-SAT *",
|
|
147
|
+
* durationInMinutes: 60,
|
|
148
|
+
* enabled: true,
|
|
149
|
+
* skipTrashcan: false,
|
|
150
|
+
* searchCriteria: {
|
|
151
|
+
* packageTypes: ["docker"],
|
|
152
|
+
* repos: ["**"],
|
|
153
|
+
* includeAllProjects: true,
|
|
154
|
+
* includedProjects: [],
|
|
155
|
+
* includedPackages: ["**"],
|
|
156
|
+
* excludedPackages: [],
|
|
157
|
+
* lastDownloadedBeforeInDays: 90,
|
|
158
|
+
* includedProperties: {
|
|
159
|
+
* "cleanup.candidate": ["true"],
|
|
160
|
+
* },
|
|
161
|
+
* },
|
|
162
|
+
* });
|
|
163
|
+
* ```
|
|
164
|
+
*
|
|
135
165
|
* ## Validation Rules
|
|
136
166
|
*
|
|
137
167
|
* The cleanup policy resource enforces the following validation rules:
|
|
138
168
|
*
|
|
139
|
-
* 1. **
|
|
140
|
-
* - Time-based conditions (`days-based`)
|
|
141
|
-
* - Version-based condition (`keepLastNVersions`)
|
|
142
|
-
* - Properties-based condition (`includedProperties`)
|
|
169
|
+
* 1. **At least one condition**: A policy must specify at least one of: time-based (days or months), version-based (`keepLastNVersions`), or properties-based (`includedProperties`).
|
|
143
170
|
*
|
|
144
|
-
* 2. **
|
|
171
|
+
* 2. **Version-based exclusivity**: `keepLastNVersions` cannot be combined with time-based conditions or with `includedProperties`. Time-based and properties-based conditions **may** be combined (AND semantics on Artifactory **7.129+**).
|
|
145
172
|
*
|
|
146
|
-
* 3. **Zero Values**:
|
|
173
|
+
* 3. **Zero Values**: When set, time-based and version-based condition values must be greater than 0.
|
|
147
174
|
*
|
|
148
175
|
* 4. **Days vs Months**: Cannot use both days-based conditions (`createdBeforeInDays`, `lastDownloadedBeforeInDays`) and months-based conditions (`createdBeforeInMonths`, `lastDownloadedBeforeInMonths`) together.
|
|
149
176
|
*
|
|
150
|
-
* 5. **Properties Validation**:
|
|
177
|
+
* 5. **Properties Validation**: When using `includedProperties` or `excludedProperties`, each map must have exactly one key with exactly one string value.
|
|
151
178
|
*
|
|
152
179
|
* 6. **Project Configuration**: When `includeAllProjects` is set to `true`, the `includedProjects` field can be empty array. When `includeAllProjects` is `false`, `includedProjects` must contain at least one project key.
|
|
153
180
|
*
|
|
@@ -196,6 +223,7 @@ import * as outputs from "./types/output";
|
|
|
196
223
|
* ## Version Compatibility
|
|
197
224
|
*
|
|
198
225
|
* - The `createdBeforeInDays` and `lastDownloadedBeforeInDays` attributes are only supported in Artifactory 7.111.2 and later. For earlier versions, use `createdBeforeInMonths` and `lastDownloadedBeforeInMonths`.
|
|
226
|
+
* - Combining time-based conditions with `includedProperties` in one policy (AND semantics) requires Artifactory **7.129** or later.
|
|
199
227
|
*
|
|
200
228
|
* ## Import
|
|
201
229
|
*
|
package/packageCleanupPolicy.js
CHANGED
|
@@ -94,7 +94,7 @@ const utilities = require("./utilities");
|
|
|
94
94
|
*
|
|
95
95
|
* ### Using Variables for Condition Fields
|
|
96
96
|
*
|
|
97
|
-
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
97
|
+
* You can use Terraform variables for condition fields (`createdBeforeInDays`, `lastDownloadedBeforeInDays`, `createdBeforeInMonths`, `lastDownloadedBeforeInMonths`, `keepLastNVersions`, `includedProperties`, `excludedProperties`) and `durationInMinutes`. The validator will skip validation when values are unknown (variables), allowing `terraform validate` to pass without requiring variable values.
|
|
98
98
|
*
|
|
99
99
|
* **Example with variables:**
|
|
100
100
|
*
|
|
@@ -136,22 +136,49 @@ const utilities = require("./utilities");
|
|
|
136
136
|
* - Variables without default values will require values to be provided during `pulumi preview` or `pulumi up`
|
|
137
137
|
* - The validator automatically skips validation when condition field values are unknown (variables), preventing false validation errors during `terraform validate`
|
|
138
138
|
*
|
|
139
|
+
* ### Time-based and properties-based combined
|
|
140
|
+
*
|
|
141
|
+
* You may combine **time-based** fields with **`includedProperties`** in the same policy. On the Artifactory platform, matching both time and property criteria uses **AND** semantics from **Artifactory 7.129** onward. **`keepLastNVersions`** cannot be used together with time-based or properties-based conditions.
|
|
142
|
+
*
|
|
143
|
+
* ```typescript
|
|
144
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
145
|
+
* import * as artifactory from "@pulumi/artifactory";
|
|
146
|
+
*
|
|
147
|
+
* const time_and_properties = new artifactory.PackageCleanupPolicy("time-and-properties", {
|
|
148
|
+
* key: "time-and-properties",
|
|
149
|
+
* description: "Delete old packages that match a property",
|
|
150
|
+
* cronExpression: "0 0 2 ? * MON-SAT *",
|
|
151
|
+
* durationInMinutes: 60,
|
|
152
|
+
* enabled: true,
|
|
153
|
+
* skipTrashcan: false,
|
|
154
|
+
* searchCriteria: {
|
|
155
|
+
* packageTypes: ["docker"],
|
|
156
|
+
* repos: ["**"],
|
|
157
|
+
* includeAllProjects: true,
|
|
158
|
+
* includedProjects: [],
|
|
159
|
+
* includedPackages: ["**"],
|
|
160
|
+
* excludedPackages: [],
|
|
161
|
+
* lastDownloadedBeforeInDays: 90,
|
|
162
|
+
* includedProperties: {
|
|
163
|
+
* "cleanup.candidate": ["true"],
|
|
164
|
+
* },
|
|
165
|
+
* },
|
|
166
|
+
* });
|
|
167
|
+
* ```
|
|
168
|
+
*
|
|
139
169
|
* ## Validation Rules
|
|
140
170
|
*
|
|
141
171
|
* The cleanup policy resource enforces the following validation rules:
|
|
142
172
|
*
|
|
143
|
-
* 1. **
|
|
144
|
-
* - Time-based conditions (`days-based`)
|
|
145
|
-
* - Version-based condition (`keepLastNVersions`)
|
|
146
|
-
* - Properties-based condition (`includedProperties`)
|
|
173
|
+
* 1. **At least one condition**: A policy must specify at least one of: time-based (days or months), version-based (`keepLastNVersions`), or properties-based (`includedProperties`).
|
|
147
174
|
*
|
|
148
|
-
* 2. **
|
|
175
|
+
* 2. **Version-based exclusivity**: `keepLastNVersions` cannot be combined with time-based conditions or with `includedProperties`. Time-based and properties-based conditions **may** be combined (AND semantics on Artifactory **7.129+**).
|
|
149
176
|
*
|
|
150
|
-
* 3. **Zero Values**:
|
|
177
|
+
* 3. **Zero Values**: When set, time-based and version-based condition values must be greater than 0.
|
|
151
178
|
*
|
|
152
179
|
* 4. **Days vs Months**: Cannot use both days-based conditions (`createdBeforeInDays`, `lastDownloadedBeforeInDays`) and months-based conditions (`createdBeforeInMonths`, `lastDownloadedBeforeInMonths`) together.
|
|
153
180
|
*
|
|
154
|
-
* 5. **Properties Validation**:
|
|
181
|
+
* 5. **Properties Validation**: When using `includedProperties` or `excludedProperties`, each map must have exactly one key with exactly one string value.
|
|
155
182
|
*
|
|
156
183
|
* 6. **Project Configuration**: When `includeAllProjects` is set to `true`, the `includedProjects` field can be empty array. When `includeAllProjects` is `false`, `includedProjects` must contain at least one project key.
|
|
157
184
|
*
|
|
@@ -200,6 +227,7 @@ const utilities = require("./utilities");
|
|
|
200
227
|
* ## Version Compatibility
|
|
201
228
|
*
|
|
202
229
|
* - The `createdBeforeInDays` and `lastDownloadedBeforeInDays` attributes are only supported in Artifactory 7.111.2 and later. For earlier versions, use `createdBeforeInMonths` and `lastDownloadedBeforeInMonths`.
|
|
230
|
+
* - Combining time-based conditions with `includedProperties` in one policy (AND semantics) requires Artifactory **7.129** or later.
|
|
203
231
|
*
|
|
204
232
|
* ## Import
|
|
205
233
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageCleanupPolicy.js","sourceRoot":"","sources":["../packageCleanupPolicy.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"packageCleanupPolicy.js","sourceRoot":"","sources":["../packageCleanupPolicy.ts"],"names":[],"mappings":"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"}
|
package/remoteVcsRepository.d.ts
CHANGED
|
@@ -215,9 +215,7 @@ export declare class RemoteVcsRepository extends pulumi.CustomResource {
|
|
|
215
215
|
*/
|
|
216
216
|
readonly vcsGitDownloadUrl: pulumi.Output<string | undefined>;
|
|
217
217
|
/**
|
|
218
|
-
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
219
|
-
* Stash, a remote Artifactory instance or a custom Git repository. Allowed values are: `GITHUB`, `BITBUCKET`, `OLDSTASH`,
|
|
220
|
-
* `STASH`, `ARTIFACTORY`, `CUSTOM`. Default value is `GITHUB`
|
|
218
|
+
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
221
219
|
*/
|
|
222
220
|
readonly vcsGitProvider: pulumi.Output<string>;
|
|
223
221
|
/**
|
|
@@ -409,9 +407,7 @@ export interface RemoteVcsRepositoryState {
|
|
|
409
407
|
*/
|
|
410
408
|
vcsGitDownloadUrl?: pulumi.Input<string>;
|
|
411
409
|
/**
|
|
412
|
-
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
413
|
-
* Stash, a remote Artifactory instance or a custom Git repository. Allowed values are: `GITHUB`, `BITBUCKET`, `OLDSTASH`,
|
|
414
|
-
* `STASH`, `ARTIFACTORY`, `CUSTOM`. Default value is `GITHUB`
|
|
410
|
+
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
415
411
|
*/
|
|
416
412
|
vcsGitProvider?: pulumi.Input<string>;
|
|
417
413
|
/**
|
|
@@ -595,9 +591,7 @@ export interface RemoteVcsRepositoryArgs {
|
|
|
595
591
|
*/
|
|
596
592
|
vcsGitDownloadUrl?: pulumi.Input<string>;
|
|
597
593
|
/**
|
|
598
|
-
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub,
|
|
599
|
-
* Stash, a remote Artifactory instance or a custom Git repository. Allowed values are: `GITHUB`, `BITBUCKET`, `OLDSTASH`,
|
|
600
|
-
* `STASH`, `ARTIFACTORY`, `CUSTOM`. Default value is `GITHUB`
|
|
594
|
+
* Artifactory supports proxying the following Git providers out-of-the-box: GitHub (GITHUB), GitHub Enterprise (GITHUBENTERPRISE), BitBucket Cloud (BITBUCKET), BitBucket Server (STASH), GitLab (GITLAB), or a remote Artifactory instance. Use CUSTOM for a custom URL. Allowed values are: `GITHUB`, `GITHUBENTERPRISE`, `BITBUCKET`, `OLDSTASH`, `STASH`, `ARTIFACTORY`, `GITLAB`, `CUSTOM`. Default value is `GITHUB`.
|
|
601
595
|
*/
|
|
602
596
|
vcsGitProvider?: pulumi.Input<string>;
|
|
603
597
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remoteVcsRepository.js","sourceRoot":"","sources":["../remoteVcsRepository.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,mBAAoB,SAAQ,MAAM,CAAC,cAAc;IAC1D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAgC,EAAE,IAAmC;QAC9H,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,mBAAmB,CAAC,YAAY,CAAC;IACpE,CAAC;
|
|
1
|
+
{"version":3,"file":"remoteVcsRepository.js","sourceRoot":"","sources":["../remoteVcsRepository.ts"],"names":[],"mappings":"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"}
|