@postman-cse/onboarding-repo-sync 2.6.0 → 2.6.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/dist/action.cjs CHANGED
@@ -139757,7 +139757,20 @@ function assertBranchAssetIds(inputs, decision, branchOwnedIds = process.env.POS
139757
139757
  );
139758
139758
  }
139759
139759
  }
139760
+ var CREDENTIAL_SLOT_PREFIXES = ["AWS_", "AZURE_", "GCP_"];
139761
+ function isCredentialSlotKey(key) {
139762
+ return typeof key === "string" && CREDENTIAL_SLOT_PREFIXES.some((prefix) => key.startsWith(prefix));
139763
+ }
139760
139764
  function buildEnvironmentValues(envName, baseUrl, options = {}) {
139765
+ const seeded = secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
139766
+ key: entry.key,
139767
+ value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
139768
+ type: entry.secret ? "secret" : "default"
139769
+ }));
139770
+ const seededKeys = new Set(seeded.map((entry) => entry.key));
139771
+ const preserved = (options.preservedCredentialValues ?? []).filter(
139772
+ (entry) => isCredentialSlotKey(entry.key) && !seededKeys.has(entry.key)
139773
+ );
139761
139774
  return [
139762
139775
  { key: "baseUrl", value: baseUrl, type: "default" },
139763
139776
  // A private mock refuses anonymous calls, so the manual-validation environment
@@ -139769,11 +139782,8 @@ function buildEnvironmentValues(envName, baseUrl, options = {}) {
139769
139782
  // Provider-scoped credential slots. `none` (the default) seeds nothing, so a
139770
139783
  // consumer that does not use a cloud secret store gets a clean environment
139771
139784
  // instead of four dead AWS variables.
139772
- ...secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
139773
- key: entry.key,
139774
- value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
139775
- type: entry.secret ? "secret" : "default"
139776
- }))
139785
+ ...seeded,
139786
+ ...preserved
139777
139787
  ];
139778
139788
  }
139779
139789
  var LEGACY_BASELINE_COLLECTION_PREFIX = "[Baseline]";
@@ -140259,20 +140269,27 @@ async function upsertEnvironments(inputs, dependencies, resourcesState, assetMar
140259
140269
  }
140260
140270
  if (existingUid) {
140261
140271
  let marker = assetMarker;
140262
- if (marker) {
140263
- try {
140264
- const existing = await dependencies.postman.getEnvironment(existingUid);
140265
- const values3 = existing.data?.values ?? existing.values ?? [];
140266
- const prior = values3.find((value) => value.key === "x-pm-onboarding")?.value;
140272
+ let priorValues = [];
140273
+ try {
140274
+ const existing = await dependencies.postman.getEnvironment(existingUid);
140275
+ const values3 = existing?.data?.values ?? existing?.values ?? [];
140276
+ priorValues = values3.filter((value) => typeof value?.key === "string").map((value) => ({
140277
+ key: value.key,
140278
+ value: typeof value.value === "string" ? value.value : "",
140279
+ type: value.type === "secret" ? "secret" : "default"
140280
+ }));
140281
+ if (marker) {
140282
+ const prior = priorValues.find((value) => value.key === "x-pm-onboarding")?.value;
140267
140283
  const priorMarker = parseAssetMarker(prior ? `x-pm-onboarding: ${prior}` : void 0);
140268
140284
  if (priorMarker?.repo === marker.repo && priorMarker.rawBranch === marker.rawBranch) {
140269
140285
  marker = { ...marker, createdAt: priorMarker.createdAt };
140270
140286
  }
140271
- } catch {
140272
140287
  }
140288
+ } catch {
140273
140289
  }
140274
140290
  const values2 = buildEnvironmentValues(envName, runtimeUrl, {
140275
- secretsResolverProvider: inputs.secretsResolverProvider
140291
+ secretsResolverProvider: inputs.secretsResolverProvider,
140292
+ preservedCredentialValues: priorValues
140276
140293
  });
140277
140294
  if (marker) values2.push({ key: "x-pm-onboarding", value: JSON.stringify(marker), type: "default" });
140278
140295
  try {
package/dist/cli.cjs CHANGED
@@ -137807,7 +137807,20 @@ function assertBranchAssetIds(inputs, decision, branchOwnedIds = process.env.POS
137807
137807
  );
137808
137808
  }
137809
137809
  }
137810
+ var CREDENTIAL_SLOT_PREFIXES = ["AWS_", "AZURE_", "GCP_"];
137811
+ function isCredentialSlotKey(key) {
137812
+ return typeof key === "string" && CREDENTIAL_SLOT_PREFIXES.some((prefix) => key.startsWith(prefix));
137813
+ }
137810
137814
  function buildEnvironmentValues(envName, baseUrl, options = {}) {
137815
+ const seeded = secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
137816
+ key: entry.key,
137817
+ value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
137818
+ type: entry.secret ? "secret" : "default"
137819
+ }));
137820
+ const seededKeys = new Set(seeded.map((entry) => entry.key));
137821
+ const preserved = (options.preservedCredentialValues ?? []).filter(
137822
+ (entry) => isCredentialSlotKey(entry.key) && !seededKeys.has(entry.key)
137823
+ );
137811
137824
  return [
137812
137825
  { key: "baseUrl", value: baseUrl, type: "default" },
137813
137826
  // A private mock refuses anonymous calls, so the manual-validation environment
@@ -137819,11 +137832,8 @@ function buildEnvironmentValues(envName, baseUrl, options = {}) {
137819
137832
  // Provider-scoped credential slots. `none` (the default) seeds nothing, so a
137820
137833
  // consumer that does not use a cloud secret store gets a clean environment
137821
137834
  // instead of four dead AWS variables.
137822
- ...secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
137823
- key: entry.key,
137824
- value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
137825
- type: entry.secret ? "secret" : "default"
137826
- }))
137835
+ ...seeded,
137836
+ ...preserved
137827
137837
  ];
137828
137838
  }
137829
137839
  var LEGACY_BASELINE_COLLECTION_PREFIX = "[Baseline]";
@@ -138167,20 +138177,27 @@ async function upsertEnvironments(inputs, dependencies, resourcesState, assetMar
138167
138177
  }
138168
138178
  if (existingUid) {
138169
138179
  let marker = assetMarker;
138170
- if (marker) {
138171
- try {
138172
- const existing = await dependencies.postman.getEnvironment(existingUid);
138173
- const values3 = existing.data?.values ?? existing.values ?? [];
138174
- const prior = values3.find((value) => value.key === "x-pm-onboarding")?.value;
138180
+ let priorValues = [];
138181
+ try {
138182
+ const existing = await dependencies.postman.getEnvironment(existingUid);
138183
+ const values3 = existing?.data?.values ?? existing?.values ?? [];
138184
+ priorValues = values3.filter((value) => typeof value?.key === "string").map((value) => ({
138185
+ key: value.key,
138186
+ value: typeof value.value === "string" ? value.value : "",
138187
+ type: value.type === "secret" ? "secret" : "default"
138188
+ }));
138189
+ if (marker) {
138190
+ const prior = priorValues.find((value) => value.key === "x-pm-onboarding")?.value;
138175
138191
  const priorMarker = parseAssetMarker(prior ? `x-pm-onboarding: ${prior}` : void 0);
138176
138192
  if (priorMarker?.repo === marker.repo && priorMarker.rawBranch === marker.rawBranch) {
138177
138193
  marker = { ...marker, createdAt: priorMarker.createdAt };
138178
138194
  }
138179
- } catch {
138180
138195
  }
138196
+ } catch {
138181
138197
  }
138182
138198
  const values2 = buildEnvironmentValues(envName, runtimeUrl, {
138183
- secretsResolverProvider: inputs.secretsResolverProvider
138199
+ secretsResolverProvider: inputs.secretsResolverProvider,
138200
+ preservedCredentialValues: priorValues
138184
138201
  });
138185
138202
  if (marker) values2.push({ key: "x-pm-onboarding", value: JSON.stringify(marker), type: "default" });
138186
138203
  try {
package/dist/index.cjs CHANGED
@@ -139780,7 +139780,20 @@ function assertBranchAssetIds(inputs, decision, branchOwnedIds = process.env.POS
139780
139780
  );
139781
139781
  }
139782
139782
  }
139783
+ var CREDENTIAL_SLOT_PREFIXES = ["AWS_", "AZURE_", "GCP_"];
139784
+ function isCredentialSlotKey(key) {
139785
+ return typeof key === "string" && CREDENTIAL_SLOT_PREFIXES.some((prefix) => key.startsWith(prefix));
139786
+ }
139783
139787
  function buildEnvironmentValues(envName, baseUrl, options = {}) {
139788
+ const seeded = secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
139789
+ key: entry.key,
139790
+ value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
139791
+ type: entry.secret ? "secret" : "default"
139792
+ }));
139793
+ const seededKeys = new Set(seeded.map((entry) => entry.key));
139794
+ const preserved = (options.preservedCredentialValues ?? []).filter(
139795
+ (entry) => isCredentialSlotKey(entry.key) && !seededKeys.has(entry.key)
139796
+ );
139784
139797
  return [
139785
139798
  { key: "baseUrl", value: baseUrl, type: "default" },
139786
139799
  // A private mock refuses anonymous calls, so the manual-validation environment
@@ -139792,11 +139805,8 @@ function buildEnvironmentValues(envName, baseUrl, options = {}) {
139792
139805
  // Provider-scoped credential slots. `none` (the default) seeds nothing, so a
139793
139806
  // consumer that does not use a cloud secret store gets a clean environment
139794
139807
  // instead of four dead AWS variables.
139795
- ...secretsResolverEnvironmentKeys(options.secretsResolverProvider ?? "none").map((entry) => ({
139796
- key: entry.key,
139797
- value: entry.key.endsWith("_SECRET_NAME") && !entry.secret ? `api-credentials-${envName}` : entry.defaultValue ?? "",
139798
- type: entry.secret ? "secret" : "default"
139799
- }))
139808
+ ...seeded,
139809
+ ...preserved
139800
139810
  ];
139801
139811
  }
139802
139812
  var LEGACY_BASELINE_COLLECTION_PREFIX = "[Baseline]";
@@ -140282,20 +140292,27 @@ async function upsertEnvironments(inputs, dependencies, resourcesState, assetMar
140282
140292
  }
140283
140293
  if (existingUid) {
140284
140294
  let marker = assetMarker;
140285
- if (marker) {
140286
- try {
140287
- const existing = await dependencies.postman.getEnvironment(existingUid);
140288
- const values3 = existing.data?.values ?? existing.values ?? [];
140289
- const prior = values3.find((value) => value.key === "x-pm-onboarding")?.value;
140295
+ let priorValues = [];
140296
+ try {
140297
+ const existing = await dependencies.postman.getEnvironment(existingUid);
140298
+ const values3 = existing?.data?.values ?? existing?.values ?? [];
140299
+ priorValues = values3.filter((value) => typeof value?.key === "string").map((value) => ({
140300
+ key: value.key,
140301
+ value: typeof value.value === "string" ? value.value : "",
140302
+ type: value.type === "secret" ? "secret" : "default"
140303
+ }));
140304
+ if (marker) {
140305
+ const prior = priorValues.find((value) => value.key === "x-pm-onboarding")?.value;
140290
140306
  const priorMarker = parseAssetMarker(prior ? `x-pm-onboarding: ${prior}` : void 0);
140291
140307
  if (priorMarker?.repo === marker.repo && priorMarker.rawBranch === marker.rawBranch) {
140292
140308
  marker = { ...marker, createdAt: priorMarker.createdAt };
140293
140309
  }
140294
- } catch {
140295
140310
  }
140311
+ } catch {
140296
140312
  }
140297
140313
  const values2 = buildEnvironmentValues(envName, runtimeUrl, {
140298
- secretsResolverProvider: inputs.secretsResolverProvider
140314
+ secretsResolverProvider: inputs.secretsResolverProvider,
140315
+ preservedCredentialValues: priorValues
140299
140316
  });
140300
140317
  if (marker) values2.push({ key: "x-pm-onboarding", value: JSON.stringify(marker), type: "default" });
140301
140318
  try {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@postman-cse/onboarding-repo-sync",
3
- "version": "2.6.0",
3
+ "version": "2.6.2",
4
4
  "description": "Postman repo sync GitHub Action.",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -44,7 +44,7 @@
44
44
  "dependencies": {
45
45
  "@actions/core": "^3.0.1",
46
46
  "@actions/exec": "^3.0.0",
47
- "@postman-cse/automation-core": "^1.2.0",
47
+ "@postman-cse/automation-core": "^1.2.1",
48
48
  "@postman/runtime.models": "^1.13.1",
49
49
  "@postman/v3.export": "0.2.28",
50
50
  "js-yaml": "^5.2.1",