@firestartr/cli 1.52.0-snapshot-5 → 1.52.0-snapshot-7
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/build/index.js +33 -227
- package/build/packages/cdk8s_renderer/imports/firestartr.dev.d.ts +0 -139
- package/build/packages/github/index.d.ts +2 -0
- package/build/packages/github/src/encrypt.d.ts +3 -6
- package/package.json +1 -1
- package/build/packages/provisioner/src/entities/firestartrgithubrepository/helpers/RepositorySecret.d.ts +0 -4
package/build/index.js
CHANGED
|
@@ -354781,24 +354781,24 @@ var libsodium_wrappers_default = /*#__PURE__*/__nccwpck_require__.n(libsodium_wr
|
|
|
354781
354781
|
|
|
354782
354782
|
|
|
354783
354783
|
|
|
354784
|
-
async function getRepoPublicKey(owner, repo) {
|
|
354784
|
+
async function getRepoPublicKey(owner, repo, section) {
|
|
354785
354785
|
github_src_logger.info(`Retrieving public key for ${owner}/${repo}`);
|
|
354786
354786
|
try {
|
|
354787
354787
|
const octokit = await getOctokitForOrg(owner);
|
|
354788
|
-
const { data } = await octokit.
|
|
354788
|
+
const { data } = await octokit[section].getRepoPublicKey({
|
|
354789
354789
|
owner,
|
|
354790
354790
|
repo,
|
|
354791
354791
|
});
|
|
354792
354792
|
return data;
|
|
354793
354793
|
}
|
|
354794
354794
|
catch (error) {
|
|
354795
|
-
github_src_logger.error(`Error retrieving public key for ${owner}/${repo}: ${error}`);
|
|
354795
|
+
github_src_logger.error(`Error retrieving public key (${section}) for ${owner}/${repo}: ${error}`);
|
|
354796
354796
|
throw error;
|
|
354797
354797
|
}
|
|
354798
354798
|
}
|
|
354799
|
-
async function encryptRepoSecret(owner, repo, plaintextValue) {
|
|
354799
|
+
async function encryptRepoSecret(owner, repo, section, plaintextValue) {
|
|
354800
354800
|
try {
|
|
354801
|
-
const { key_id, key } = await getRepoPublicKey(owner, repo);
|
|
354801
|
+
const { key_id, key } = await getRepoPublicKey(owner, repo, section);
|
|
354802
354802
|
await (libsodium_wrappers_default()).ready;
|
|
354803
354803
|
const publicKey = libsodium_wrappers_default().from_base64(key, (libsodium_wrappers_default()).base64_variants.ORIGINAL);
|
|
354804
354804
|
const secretBytes = libsodium_wrappers_default().from_string(plaintextValue);
|
|
@@ -361908,7 +361908,6 @@ function toJson_FirestartrGithubRepositorySpec(obj) {
|
|
|
361908
361908
|
'actions': toJson_FirestartrGithubRepositorySpecActions(obj.actions),
|
|
361909
361909
|
'pages': toJson_FirestartrGithubRepositorySpecPages(obj.pages),
|
|
361910
361910
|
'permissions': obj.permissions?.map(y => toJson_FirestartrGithubRepositorySpecPermissions(y)),
|
|
361911
|
-
'secrets': toJson_FirestartrGithubRepositorySpecSecrets(obj.secrets),
|
|
361912
361911
|
'vars': toJson_FirestartrGithubRepositorySpecVars(obj.vars),
|
|
361913
361912
|
'branchProtections': obj.branchProtections?.map(y => toJson_FirestartrGithubRepositorySpecBranchProtections(y)),
|
|
361914
361913
|
'writeConnectionSecretToRef': toJson_FirestartrGithubRepositorySpecWriteConnectionSecretToRef(obj.writeConnectionSecretToRef),
|
|
@@ -362020,22 +362019,6 @@ function toJson_FirestartrGithubRepositorySpecPermissions(obj) {
|
|
|
362020
362019
|
// filter undefined values
|
|
362021
362020
|
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362022
362021
|
}
|
|
362023
|
-
/**
|
|
362024
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecrets' to JSON representation.
|
|
362025
|
-
*/
|
|
362026
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362027
|
-
function toJson_FirestartrGithubRepositorySpecSecrets(obj) {
|
|
362028
|
-
if (obj === undefined) {
|
|
362029
|
-
return undefined;
|
|
362030
|
-
}
|
|
362031
|
-
const result = {
|
|
362032
|
-
'actions': obj.actions?.map(y => toJson_FirestartrGithubRepositorySpecSecretsActions(y)),
|
|
362033
|
-
'codespaces': obj.codespaces?.map(y => toJson_FirestartrGithubRepositorySpecSecretsCodespaces(y)),
|
|
362034
|
-
'dependabot': obj.dependabot?.map(y => toJson_FirestartrGithubRepositorySpecSecretsDependabot(y)),
|
|
362035
|
-
};
|
|
362036
|
-
// filter undefined values
|
|
362037
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362038
|
-
}
|
|
362039
362022
|
/**
|
|
362040
362023
|
* Converts an object of type 'FirestartrGithubRepositorySpecVars' to JSON representation.
|
|
362041
362024
|
*/
|
|
@@ -362203,51 +362186,6 @@ function toJson_FirestartrGithubRepositorySpecPermissionsRef(obj) {
|
|
|
362203
362186
|
// filter undefined values
|
|
362204
362187
|
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362205
362188
|
}
|
|
362206
|
-
/**
|
|
362207
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsActions' to JSON representation.
|
|
362208
|
-
*/
|
|
362209
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362210
|
-
function toJson_FirestartrGithubRepositorySpecSecretsActions(obj) {
|
|
362211
|
-
if (obj === undefined) {
|
|
362212
|
-
return undefined;
|
|
362213
|
-
}
|
|
362214
|
-
const result = {
|
|
362215
|
-
'name': obj.name,
|
|
362216
|
-
'ref': toJson_FirestartrGithubRepositorySpecSecretsActionsRef(obj.ref),
|
|
362217
|
-
};
|
|
362218
|
-
// filter undefined values
|
|
362219
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362220
|
-
}
|
|
362221
|
-
/**
|
|
362222
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsCodespaces' to JSON representation.
|
|
362223
|
-
*/
|
|
362224
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362225
|
-
function toJson_FirestartrGithubRepositorySpecSecretsCodespaces(obj) {
|
|
362226
|
-
if (obj === undefined) {
|
|
362227
|
-
return undefined;
|
|
362228
|
-
}
|
|
362229
|
-
const result = {
|
|
362230
|
-
'name': obj.name,
|
|
362231
|
-
'ref': toJson_FirestartrGithubRepositorySpecSecretsCodespacesRef(obj.ref),
|
|
362232
|
-
};
|
|
362233
|
-
// filter undefined values
|
|
362234
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362235
|
-
}
|
|
362236
|
-
/**
|
|
362237
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsDependabot' to JSON representation.
|
|
362238
|
-
*/
|
|
362239
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362240
|
-
function toJson_FirestartrGithubRepositorySpecSecretsDependabot(obj) {
|
|
362241
|
-
if (obj === undefined) {
|
|
362242
|
-
return undefined;
|
|
362243
|
-
}
|
|
362244
|
-
const result = {
|
|
362245
|
-
'name': obj.name,
|
|
362246
|
-
'ref': toJson_FirestartrGithubRepositorySpecSecretsDependabotRef(obj.ref),
|
|
362247
|
-
};
|
|
362248
|
-
// filter undefined values
|
|
362249
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362250
|
-
}
|
|
362251
362189
|
/**
|
|
362252
362190
|
* Converts an object of type 'FirestartrGithubRepositorySpecVarsVariableItemSchema' to JSON representation.
|
|
362253
362191
|
*/
|
|
@@ -362324,54 +362262,6 @@ function toJson_FirestartrGithubRepositorySpecContextProviderRef(obj) {
|
|
|
362324
362262
|
// filter undefined values
|
|
362325
362263
|
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362326
362264
|
}
|
|
362327
|
-
/**
|
|
362328
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsActionsRef' to JSON representation.
|
|
362329
|
-
*/
|
|
362330
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362331
|
-
function toJson_FirestartrGithubRepositorySpecSecretsActionsRef(obj) {
|
|
362332
|
-
if (obj === undefined) {
|
|
362333
|
-
return undefined;
|
|
362334
|
-
}
|
|
362335
|
-
const result = {
|
|
362336
|
-
'kind': obj.kind,
|
|
362337
|
-
'name': obj.name,
|
|
362338
|
-
'key': obj.key,
|
|
362339
|
-
};
|
|
362340
|
-
// filter undefined values
|
|
362341
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362342
|
-
}
|
|
362343
|
-
/**
|
|
362344
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsCodespacesRef' to JSON representation.
|
|
362345
|
-
*/
|
|
362346
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362347
|
-
function toJson_FirestartrGithubRepositorySpecSecretsCodespacesRef(obj) {
|
|
362348
|
-
if (obj === undefined) {
|
|
362349
|
-
return undefined;
|
|
362350
|
-
}
|
|
362351
|
-
const result = {
|
|
362352
|
-
'kind': obj.kind,
|
|
362353
|
-
'name': obj.name,
|
|
362354
|
-
'key': obj.key,
|
|
362355
|
-
};
|
|
362356
|
-
// filter undefined values
|
|
362357
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362358
|
-
}
|
|
362359
|
-
/**
|
|
362360
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsDependabotRef' to JSON representation.
|
|
362361
|
-
*/
|
|
362362
|
-
/* eslint-disable max-len, @stylistic/max-len, quote-props, @stylistic/quote-props */
|
|
362363
|
-
function toJson_FirestartrGithubRepositorySpecSecretsDependabotRef(obj) {
|
|
362364
|
-
if (obj === undefined) {
|
|
362365
|
-
return undefined;
|
|
362366
|
-
}
|
|
362367
|
-
const result = {
|
|
362368
|
-
'kind': obj.kind,
|
|
362369
|
-
'name': obj.name,
|
|
362370
|
-
'key': obj.key,
|
|
362371
|
-
};
|
|
362372
|
-
// filter undefined values
|
|
362373
|
-
return Object.entries(result).reduce((r, i) => (i[1] === undefined) ? r : ({ ...r, [i[0]]: i[1] }), {});
|
|
362374
|
-
}
|
|
362375
362265
|
/**
|
|
362376
362266
|
* Converts an object of type 'FirestartrGithubRepositorySpecVarsVariableItemSchemaRef' to JSON representation.
|
|
362377
362267
|
*/
|
|
@@ -367701,9 +367591,11 @@ async function getSyncStatus(itemPath, itemCR) {
|
|
|
367701
367591
|
else {
|
|
367702
367592
|
const nextSyncDate = new Date(syncCondition.nextSyncTime);
|
|
367703
367593
|
const isLapsed = Date.now() >= nextSyncDate.getTime();
|
|
367704
|
-
const mode = (
|
|
367705
|
-
? '
|
|
367706
|
-
:
|
|
367594
|
+
const mode = !helperIsSyncable(item)
|
|
367595
|
+
? 'NotSyncable'
|
|
367596
|
+
: (await getSyncSpecs(itemPath, item)).schedule
|
|
367597
|
+
? 'Scheduled'
|
|
367598
|
+
: 'Period';
|
|
367707
367599
|
return {
|
|
367708
367600
|
itemPath,
|
|
367709
367601
|
syncMode: mode,
|
|
@@ -367744,7 +367636,7 @@ function helperIsSyncable(item) {
|
|
|
367744
367636
|
}
|
|
367745
367637
|
async function processNotSyncable(item, reason, status, message) {
|
|
367746
367638
|
return {
|
|
367747
|
-
syncMode: '
|
|
367639
|
+
syncMode: 'NotSyncable',
|
|
367748
367640
|
conditions: [
|
|
367749
367641
|
{
|
|
367750
367642
|
reason,
|
|
@@ -369257,100 +369149,6 @@ function provisionDefaultBranch(scope, fsGithubRepository, repo) {
|
|
|
369257
369149
|
return branchDefault;
|
|
369258
369150
|
}
|
|
369259
369151
|
|
|
369260
|
-
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/actions-secret/index.js
|
|
369261
|
-
var actions_secret = __nccwpck_require__(89039);
|
|
369262
|
-
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/codespaces-secret/index.js
|
|
369263
|
-
var codespaces_secret = __nccwpck_require__(80659);
|
|
369264
|
-
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/dependabot-secret/index.js
|
|
369265
|
-
var dependabot_secret = __nccwpck_require__(16281);
|
|
369266
|
-
;// CONCATENATED MODULE: ../provisioner/src/entities/firestartrgithubrepository/helpers/RepositorySecret.ts
|
|
369267
|
-
|
|
369268
|
-
|
|
369269
|
-
|
|
369270
|
-
|
|
369271
|
-
|
|
369272
|
-
|
|
369273
|
-
async function provisionRepositorySecrets(scope, repo, fsGithubRepository) {
|
|
369274
|
-
const sections = ['actions', 'codespaces', 'dependabot'];
|
|
369275
|
-
if ('secrets' in fsGithubRepository.spec) {
|
|
369276
|
-
const secrets = fsGithubRepository.spec.secrets;
|
|
369277
|
-
for (const section of sections) {
|
|
369278
|
-
if (section in secrets) {
|
|
369279
|
-
for (const secret of secrets[section]) {
|
|
369280
|
-
await provisionRepositorySecret(scope, fsGithubRepository, section, secret.name, secret.ref, repo);
|
|
369281
|
-
}
|
|
369282
|
-
}
|
|
369283
|
-
}
|
|
369284
|
-
}
|
|
369285
|
-
else {
|
|
369286
|
-
provisioner_src_logger.info(`FirestartrGithubRepository ${fsGithubRepository.metadata.name} does not have a secrets section`);
|
|
369287
|
-
}
|
|
369288
|
-
}
|
|
369289
|
-
async function provisionRepositorySecret(scope, repo, section, repoSecretName, secretRef, repoResource) {
|
|
369290
|
-
provisioner_src_logger.info(`Provisioning repo secret ${repo.metadata.name}/${section}/${repoSecretName}`);
|
|
369291
|
-
const secretClass = section === 'actions'
|
|
369292
|
-
? actions_secret/* ActionsSecret */.N
|
|
369293
|
-
: section === 'codespaces'
|
|
369294
|
-
? codespaces_secret/* CodespacesSecret */.k
|
|
369295
|
-
: section === 'dependabot'
|
|
369296
|
-
? dependabot_secret/* DependabotSecret */.c
|
|
369297
|
-
: null;
|
|
369298
|
-
if (secretClass) {
|
|
369299
|
-
const fSecretCreation = process.env['AVOID_PROVIDER_SECRET_ENCRYPTION']
|
|
369300
|
-
? createUnencryptedSecret
|
|
369301
|
-
: createEncryptedSecrect;
|
|
369302
|
-
await fSecretCreation(scope, repo, secretRef, secretClass, section, repoSecretName, repoResource);
|
|
369303
|
-
provisioner_src_logger.info(`RepoSecret provisioned ${section}-${repoSecretName.toLowerCase()}-secret`);
|
|
369304
|
-
}
|
|
369305
|
-
}
|
|
369306
|
-
async function createEncryptedSecrect(scope, repo, secretRef, secretClass, section, repoSecretName, repoResource) {
|
|
369307
|
-
const { key_id, encrypted_value } = await encryptSecret(repo, secretRef);
|
|
369308
|
-
const resourceKey = `${section}-${repoSecretName.toLowerCase()}-secret`;
|
|
369309
|
-
const plainTextSecret = repo.resolveSecretRef({
|
|
369310
|
-
name: secretRef.name,
|
|
369311
|
-
key: secretRef.key,
|
|
369312
|
-
});
|
|
369313
|
-
const sha256 = external_crypto_default().createHash('sha256')
|
|
369314
|
-
.update(plainTextSecret)
|
|
369315
|
-
.digest('hex');
|
|
369316
|
-
const secretResourceName = `_${repoSecretName}-${sha256.slice(0, 12)}`;
|
|
369317
|
-
const instanceLifecycle = {
|
|
369318
|
-
ignoreChanges: ['encrypted_value'],
|
|
369319
|
-
};
|
|
369320
|
-
const sc = new secretClass(scope, secretResourceName, {
|
|
369321
|
-
secretName: repoSecretName,
|
|
369322
|
-
repository: repo.metadata.name,
|
|
369323
|
-
encryptedValue: encrypted_value,
|
|
369324
|
-
dependsOn: [repoResource],
|
|
369325
|
-
lifecycle: instanceLifecycle,
|
|
369326
|
-
});
|
|
369327
|
-
repo.addResourceToStack(resourceKey, sc);
|
|
369328
|
-
}
|
|
369329
|
-
async function createUnencryptedSecret(scope, repo, secretRef, secretClass, section, repoSecretName, repoResource) {
|
|
369330
|
-
const plainTextSecret = repo.resolveSecretRef({
|
|
369331
|
-
name: secretRef.name,
|
|
369332
|
-
key: secretRef.key,
|
|
369333
|
-
});
|
|
369334
|
-
const resourceKey = `${section}-${repoSecretName.toLowerCase()}-secret`;
|
|
369335
|
-
const tfStateKey = `_${repo.getTfStateKey()}-${resourceKey}`;
|
|
369336
|
-
const sc = new secretClass(scope, tfStateKey, {
|
|
369337
|
-
secretName: repoSecretName,
|
|
369338
|
-
plaintextValue: plainTextSecret,
|
|
369339
|
-
repository: repo.metadata.name,
|
|
369340
|
-
dependsOn: [repoResource],
|
|
369341
|
-
});
|
|
369342
|
-
provisioner_src_logger.info(tfStateKey);
|
|
369343
|
-
repo.addResourceToStack(resourceKey, sc);
|
|
369344
|
-
}
|
|
369345
|
-
async function encryptSecret(repo, secretRef) {
|
|
369346
|
-
const plainTextSecret = repo.resolveSecretRef({
|
|
369347
|
-
name: secretRef.name,
|
|
369348
|
-
key: secretRef.key,
|
|
369349
|
-
});
|
|
369350
|
-
const v = await github_0.encryption.encryptRepoSecret(process.env.ORG, repo.metadata.name, plainTextSecret);
|
|
369351
|
-
return v;
|
|
369352
|
-
}
|
|
369353
|
-
|
|
369354
369152
|
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/actions-variable/index.js
|
|
369355
369153
|
var actions_variable = __nccwpck_require__(81133);
|
|
369356
369154
|
;// CONCATENATED MODULE: ../provisioner/src/entities/firestartrgithubrepository/helpers/RepositoryVariable.ts
|
|
@@ -369407,7 +369205,6 @@ async function provisionRepositoryVar(scope, repo, section, repoVarName, value,
|
|
|
369407
369205
|
|
|
369408
369206
|
|
|
369409
369207
|
|
|
369410
|
-
|
|
369411
369208
|
class FirestartrGithubRepository_FirestartrGithubRepository extends Entity {
|
|
369412
369209
|
constructor(artifact, deps) {
|
|
369413
369210
|
super(artifact, deps);
|
|
@@ -369422,7 +369219,6 @@ class FirestartrGithubRepository_FirestartrGithubRepository extends Entity {
|
|
|
369422
369219
|
}
|
|
369423
369220
|
provisionCodeowners(scope, this.mainResource, branchDefault, this);
|
|
369424
369221
|
provisionPermissions(scope, this.mainResource, this);
|
|
369425
|
-
await provisionRepositorySecrets(scope, this.mainResource, this);
|
|
369426
369222
|
await provisionRepositoryVariables(scope, this.mainResource, this);
|
|
369427
369223
|
}
|
|
369428
369224
|
async orgHasOneOfThesePlans(org, plans) {
|
|
@@ -369654,6 +369450,12 @@ class FirestartrTerraformModuleEntity extends Entity {
|
|
|
369654
369450
|
}
|
|
369655
369451
|
}
|
|
369656
369452
|
|
|
369453
|
+
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/actions-secret/index.js
|
|
369454
|
+
var actions_secret = __nccwpck_require__(89039);
|
|
369455
|
+
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/codespaces-secret/index.js
|
|
369456
|
+
var codespaces_secret = __nccwpck_require__(80659);
|
|
369457
|
+
// EXTERNAL MODULE: ../provisioner/node_modules/@cdktf/provider-github/lib/dependabot-secret/index.js
|
|
369458
|
+
var dependabot_secret = __nccwpck_require__(16281);
|
|
369657
369459
|
;// CONCATENATED MODULE: ../provisioner/src/entities/firestartrgithubrepositorysecretssection/helpers/RepositorySecret.ts
|
|
369658
369460
|
|
|
369659
369461
|
|
|
@@ -369661,14 +369463,18 @@ class FirestartrTerraformModuleEntity extends Entity {
|
|
|
369661
369463
|
|
|
369662
369464
|
|
|
369663
369465
|
|
|
369664
|
-
async function
|
|
369665
|
-
const sections = [
|
|
369466
|
+
async function provisionRepositorySecrets(scope, fsGithubRepositorySecretsSection, repo) {
|
|
369467
|
+
const sections = [
|
|
369468
|
+
'actions',
|
|
369469
|
+
'codespaces',
|
|
369470
|
+
'dependabot',
|
|
369471
|
+
];
|
|
369666
369472
|
if ('secrets' in fsGithubRepositorySecretsSection.spec) {
|
|
369667
369473
|
const secrets = fsGithubRepositorySecretsSection.spec.secrets;
|
|
369668
369474
|
for (const section of sections) {
|
|
369669
369475
|
if (section in secrets) {
|
|
369670
369476
|
for (const secret of secrets[section]) {
|
|
369671
|
-
await
|
|
369477
|
+
await provisionRepositorySecret(scope, fsGithubRepositorySecretsSection, section, secret.name, secret.ref, repo);
|
|
369672
369478
|
}
|
|
369673
369479
|
}
|
|
369674
369480
|
}
|
|
@@ -369677,7 +369483,7 @@ async function RepositorySecret_provisionRepositorySecrets(scope, fsGithubReposi
|
|
|
369677
369483
|
provisioner_src_logger.info(`FirestartrGithubRepository ${fsGithubRepositorySecretsSection.metadata.name} does not have a secrets section`);
|
|
369678
369484
|
}
|
|
369679
369485
|
}
|
|
369680
|
-
async function
|
|
369486
|
+
async function provisionRepositorySecret(scope, rss, section, repoSecretName, secretRef, repoResource) {
|
|
369681
369487
|
provisioner_src_logger.info(`Provisioning repo secret ${rss.metadata.name}/${section}/${repoSecretName}`);
|
|
369682
369488
|
const secretClass = section === 'actions'
|
|
369683
369489
|
? actions_secret/* ActionsSecret */.N
|
|
@@ -369688,14 +369494,14 @@ async function RepositorySecret_provisionRepositorySecret(scope, rss, section, r
|
|
|
369688
369494
|
: null;
|
|
369689
369495
|
if (secretClass) {
|
|
369690
369496
|
const fSecretCreation = process.env['AVOID_PROVIDER_SECRET_ENCRYPTION']
|
|
369691
|
-
?
|
|
369692
|
-
:
|
|
369497
|
+
? createUnencryptedSecret
|
|
369498
|
+
: createEncryptedSecret;
|
|
369693
369499
|
await fSecretCreation(scope, rss, secretRef, secretClass, section, repoSecretName, repoResource);
|
|
369694
369500
|
provisioner_src_logger.info(`RepoSecret provisioned ${section}-${repoSecretName.toLowerCase()}-secret`);
|
|
369695
369501
|
}
|
|
369696
369502
|
}
|
|
369697
|
-
async function
|
|
369698
|
-
const { key_id, encrypted_value } = await
|
|
369503
|
+
async function createEncryptedSecret(scope, rss, secretRef, secretClass, section, repoSecretName, repo) {
|
|
369504
|
+
const { key_id, encrypted_value } = await encryptSecret(rss, secretRef, section);
|
|
369699
369505
|
const resourceKey = `${section}-${repoSecretName.toLowerCase()}-secret`;
|
|
369700
369506
|
const plainTextSecret = rss.resolveSecretRef({
|
|
369701
369507
|
name: secretRef.name,
|
|
@@ -369716,7 +369522,7 @@ async function RepositorySecret_createEncryptedSecrect(scope, rss, secretRef, se
|
|
|
369716
369522
|
});
|
|
369717
369523
|
rss.addResourceToStack(resourceKey, sc);
|
|
369718
369524
|
}
|
|
369719
|
-
async function
|
|
369525
|
+
async function createUnencryptedSecret(scope, rss, secretRef, secretClass, section, repoSecretName, repo) {
|
|
369720
369526
|
const plainTextSecret = rss.resolveSecretRef({
|
|
369721
369527
|
name: secretRef.name,
|
|
369722
369528
|
key: secretRef.key,
|
|
@@ -369731,12 +369537,12 @@ async function RepositorySecret_createUnencryptedSecret(scope, rss, secretRef, s
|
|
|
369731
369537
|
provisioner_src_logger.info(tfStateKey);
|
|
369732
369538
|
rss.addResourceToStack(resourceKey, sc);
|
|
369733
369539
|
}
|
|
369734
|
-
async function
|
|
369540
|
+
async function encryptSecret(rss, secretRef, section) {
|
|
369735
369541
|
const plainTextSecret = rss.resolveSecretRef({
|
|
369736
369542
|
name: secretRef.name,
|
|
369737
369543
|
key: secretRef.key,
|
|
369738
369544
|
});
|
|
369739
|
-
const v = await github_0.encryption.encryptRepoSecret(process.env.ORG, rss.metadata.name, plainTextSecret);
|
|
369545
|
+
const v = await github_0.encryption.encryptRepoSecret(process.env.ORG, rss.metadata.name, section, plainTextSecret);
|
|
369740
369546
|
return v;
|
|
369741
369547
|
}
|
|
369742
369548
|
|
|
@@ -369750,7 +369556,7 @@ class FirestartrGithubRepositorySecretsSection_FirestartrGithubRepositorySecrets
|
|
|
369750
369556
|
async loadResources(data) {
|
|
369751
369557
|
const { scope } = data;
|
|
369752
369558
|
const repo = this.resolveRef(this.spec.repositoryTarget.ref);
|
|
369753
|
-
await
|
|
369559
|
+
await provisionRepositorySecrets(scope, this, repo);
|
|
369754
369560
|
}
|
|
369755
369561
|
}
|
|
369756
369562
|
|
|
@@ -896,10 +896,6 @@ export interface FirestartrGithubRepositorySpec {
|
|
|
896
896
|
* @schema FirestartrGithubRepositorySpec#permissions
|
|
897
897
|
*/
|
|
898
898
|
readonly permissions: FirestartrGithubRepositorySpecPermissions[];
|
|
899
|
-
/**
|
|
900
|
-
* @schema FirestartrGithubRepositorySpec#secrets
|
|
901
|
-
*/
|
|
902
|
-
readonly secrets?: FirestartrGithubRepositorySpecSecrets;
|
|
903
899
|
/**
|
|
904
900
|
* @schema FirestartrGithubRepositorySpec#vars
|
|
905
901
|
*/
|
|
@@ -1075,27 +1071,6 @@ export interface FirestartrGithubRepositorySpecPermissions {
|
|
|
1075
1071
|
* Converts an object of type 'FirestartrGithubRepositorySpecPermissions' to JSON representation.
|
|
1076
1072
|
*/
|
|
1077
1073
|
export declare function toJson_FirestartrGithubRepositorySpecPermissions(obj: FirestartrGithubRepositorySpecPermissions | undefined): Record<string, any> | undefined;
|
|
1078
|
-
/**
|
|
1079
|
-
* @schema FirestartrGithubRepositorySpecSecrets
|
|
1080
|
-
*/
|
|
1081
|
-
export interface FirestartrGithubRepositorySpecSecrets {
|
|
1082
|
-
/**
|
|
1083
|
-
* @schema FirestartrGithubRepositorySpecSecrets#actions
|
|
1084
|
-
*/
|
|
1085
|
-
readonly actions?: FirestartrGithubRepositorySpecSecretsActions[];
|
|
1086
|
-
/**
|
|
1087
|
-
* @schema FirestartrGithubRepositorySpecSecrets#codespaces
|
|
1088
|
-
*/
|
|
1089
|
-
readonly codespaces?: FirestartrGithubRepositorySpecSecretsCodespaces[];
|
|
1090
|
-
/**
|
|
1091
|
-
* @schema FirestartrGithubRepositorySpecSecrets#dependabot
|
|
1092
|
-
*/
|
|
1093
|
-
readonly dependabot?: FirestartrGithubRepositorySpecSecretsDependabot[];
|
|
1094
|
-
}
|
|
1095
|
-
/**
|
|
1096
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecrets' to JSON representation.
|
|
1097
|
-
*/
|
|
1098
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecrets(obj: FirestartrGithubRepositorySpecSecrets | undefined): Record<string, any> | undefined;
|
|
1099
1074
|
/**
|
|
1100
1075
|
* @schema FirestartrGithubRepositorySpecVars
|
|
1101
1076
|
*/
|
|
@@ -1297,57 +1272,6 @@ export interface FirestartrGithubRepositorySpecPermissionsRef {
|
|
|
1297
1272
|
* Converts an object of type 'FirestartrGithubRepositorySpecPermissionsRef' to JSON representation.
|
|
1298
1273
|
*/
|
|
1299
1274
|
export declare function toJson_FirestartrGithubRepositorySpecPermissionsRef(obj: FirestartrGithubRepositorySpecPermissionsRef | undefined): Record<string, any> | undefined;
|
|
1300
|
-
/**
|
|
1301
|
-
* @schema FirestartrGithubRepositorySpecSecretsActions
|
|
1302
|
-
*/
|
|
1303
|
-
export interface FirestartrGithubRepositorySpecSecretsActions {
|
|
1304
|
-
/**
|
|
1305
|
-
* @schema FirestartrGithubRepositorySpecSecretsActions#name
|
|
1306
|
-
*/
|
|
1307
|
-
readonly name: string;
|
|
1308
|
-
/**
|
|
1309
|
-
* @schema FirestartrGithubRepositorySpecSecretsActions#ref
|
|
1310
|
-
*/
|
|
1311
|
-
readonly ref: FirestartrGithubRepositorySpecSecretsActionsRef;
|
|
1312
|
-
}
|
|
1313
|
-
/**
|
|
1314
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsActions' to JSON representation.
|
|
1315
|
-
*/
|
|
1316
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsActions(obj: FirestartrGithubRepositorySpecSecretsActions | undefined): Record<string, any> | undefined;
|
|
1317
|
-
/**
|
|
1318
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespaces
|
|
1319
|
-
*/
|
|
1320
|
-
export interface FirestartrGithubRepositorySpecSecretsCodespaces {
|
|
1321
|
-
/**
|
|
1322
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespaces#name
|
|
1323
|
-
*/
|
|
1324
|
-
readonly name: string;
|
|
1325
|
-
/**
|
|
1326
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespaces#ref
|
|
1327
|
-
*/
|
|
1328
|
-
readonly ref: FirestartrGithubRepositorySpecSecretsCodespacesRef;
|
|
1329
|
-
}
|
|
1330
|
-
/**
|
|
1331
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsCodespaces' to JSON representation.
|
|
1332
|
-
*/
|
|
1333
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsCodespaces(obj: FirestartrGithubRepositorySpecSecretsCodespaces | undefined): Record<string, any> | undefined;
|
|
1334
|
-
/**
|
|
1335
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabot
|
|
1336
|
-
*/
|
|
1337
|
-
export interface FirestartrGithubRepositorySpecSecretsDependabot {
|
|
1338
|
-
/**
|
|
1339
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabot#name
|
|
1340
|
-
*/
|
|
1341
|
-
readonly name: string;
|
|
1342
|
-
/**
|
|
1343
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabot#ref
|
|
1344
|
-
*/
|
|
1345
|
-
readonly ref: FirestartrGithubRepositorySpecSecretsDependabotRef;
|
|
1346
|
-
}
|
|
1347
|
-
/**
|
|
1348
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsDependabot' to JSON representation.
|
|
1349
|
-
*/
|
|
1350
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsDependabot(obj: FirestartrGithubRepositorySpecSecretsDependabot | undefined): Record<string, any> | undefined;
|
|
1351
1275
|
/**
|
|
1352
1276
|
* @schema FirestartrGithubRepositorySpecVarsVariableItemSchema
|
|
1353
1277
|
*/
|
|
@@ -1437,69 +1361,6 @@ export interface FirestartrGithubRepositorySpecContextProviderRef {
|
|
|
1437
1361
|
* Converts an object of type 'FirestartrGithubRepositorySpecContextProviderRef' to JSON representation.
|
|
1438
1362
|
*/
|
|
1439
1363
|
export declare function toJson_FirestartrGithubRepositorySpecContextProviderRef(obj: FirestartrGithubRepositorySpecContextProviderRef | undefined): Record<string, any> | undefined;
|
|
1440
|
-
/**
|
|
1441
|
-
* @schema FirestartrGithubRepositorySpecSecretsActionsRef
|
|
1442
|
-
*/
|
|
1443
|
-
export interface FirestartrGithubRepositorySpecSecretsActionsRef {
|
|
1444
|
-
/**
|
|
1445
|
-
* @schema FirestartrGithubRepositorySpecSecretsActionsRef#kind
|
|
1446
|
-
*/
|
|
1447
|
-
readonly kind: string;
|
|
1448
|
-
/**
|
|
1449
|
-
* @schema FirestartrGithubRepositorySpecSecretsActionsRef#name
|
|
1450
|
-
*/
|
|
1451
|
-
readonly name: string;
|
|
1452
|
-
/**
|
|
1453
|
-
* @schema FirestartrGithubRepositorySpecSecretsActionsRef#key
|
|
1454
|
-
*/
|
|
1455
|
-
readonly key: string;
|
|
1456
|
-
}
|
|
1457
|
-
/**
|
|
1458
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsActionsRef' to JSON representation.
|
|
1459
|
-
*/
|
|
1460
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsActionsRef(obj: FirestartrGithubRepositorySpecSecretsActionsRef | undefined): Record<string, any> | undefined;
|
|
1461
|
-
/**
|
|
1462
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespacesRef
|
|
1463
|
-
*/
|
|
1464
|
-
export interface FirestartrGithubRepositorySpecSecretsCodespacesRef {
|
|
1465
|
-
/**
|
|
1466
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespacesRef#kind
|
|
1467
|
-
*/
|
|
1468
|
-
readonly kind: string;
|
|
1469
|
-
/**
|
|
1470
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespacesRef#name
|
|
1471
|
-
*/
|
|
1472
|
-
readonly name: string;
|
|
1473
|
-
/**
|
|
1474
|
-
* @schema FirestartrGithubRepositorySpecSecretsCodespacesRef#key
|
|
1475
|
-
*/
|
|
1476
|
-
readonly key: string;
|
|
1477
|
-
}
|
|
1478
|
-
/**
|
|
1479
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsCodespacesRef' to JSON representation.
|
|
1480
|
-
*/
|
|
1481
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsCodespacesRef(obj: FirestartrGithubRepositorySpecSecretsCodespacesRef | undefined): Record<string, any> | undefined;
|
|
1482
|
-
/**
|
|
1483
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabotRef
|
|
1484
|
-
*/
|
|
1485
|
-
export interface FirestartrGithubRepositorySpecSecretsDependabotRef {
|
|
1486
|
-
/**
|
|
1487
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabotRef#kind
|
|
1488
|
-
*/
|
|
1489
|
-
readonly kind: string;
|
|
1490
|
-
/**
|
|
1491
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabotRef#name
|
|
1492
|
-
*/
|
|
1493
|
-
readonly name: string;
|
|
1494
|
-
/**
|
|
1495
|
-
* @schema FirestartrGithubRepositorySpecSecretsDependabotRef#key
|
|
1496
|
-
*/
|
|
1497
|
-
readonly key: string;
|
|
1498
|
-
}
|
|
1499
|
-
/**
|
|
1500
|
-
* Converts an object of type 'FirestartrGithubRepositorySpecSecretsDependabotRef' to JSON representation.
|
|
1501
|
-
*/
|
|
1502
|
-
export declare function toJson_FirestartrGithubRepositorySpecSecretsDependabotRef(obj: FirestartrGithubRepositorySpecSecretsDependabotRef | undefined): Record<string, any> | undefined;
|
|
1503
1364
|
/**
|
|
1504
1365
|
* @schema FirestartrGithubRepositorySpecVarsVariableItemSchemaRef
|
|
1505
1366
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createCheckRun } from './src/check_run';
|
|
2
2
|
import { getOctokitForOrg, getGithubAppToken, getOctokitFromPat } from './src/auth';
|
|
3
3
|
import { encryptRepoSecret, getRepoPublicKey } from './src/encrypt';
|
|
4
|
+
import type { RepoSecretsSection } from './src/encrypt';
|
|
4
5
|
declare const _default: {
|
|
5
6
|
org: {
|
|
6
7
|
getRepositoryList: typeof import("./src/organization").getRepositoryList;
|
|
@@ -85,3 +86,4 @@ declare const _default: {
|
|
|
85
86
|
};
|
|
86
87
|
};
|
|
87
88
|
export default _default;
|
|
89
|
+
export { RepoSecretsSection };
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type RepoSecretsSection = 'actions' | 'dependabot' | 'codespaces';
|
|
2
|
+
export declare function getRepoPublicKey(owner: string, repo: string, section: RepoSecretsSection): Promise<{
|
|
2
3
|
key_id: string;
|
|
3
4
|
key: string;
|
|
4
|
-
id?: number;
|
|
5
|
-
url?: string;
|
|
6
|
-
title?: string;
|
|
7
|
-
created_at?: string;
|
|
8
5
|
}>;
|
|
9
|
-
export declare function encryptRepoSecret(owner: string, repo: string, plaintextValue: string): Promise<{
|
|
6
|
+
export declare function encryptRepoSecret(owner: string, repo: string, section: RepoSecretsSection, plaintextValue: string): Promise<{
|
|
10
7
|
key_id: string;
|
|
11
8
|
encrypted_value: string;
|
|
12
9
|
}>;
|
package/package.json
CHANGED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { Repository } from '@cdktf/provider-github/lib/repository';
|
|
2
|
-
import { Construct } from 'constructs';
|
|
3
|
-
import { FirestartrGithubRepository } from '../FirestartrGithubRepository';
|
|
4
|
-
export declare function provisionRepositorySecrets(scope: Construct, repo: Repository, fsGithubRepository: FirestartrGithubRepository): Promise<void>;
|