@payfit/nx-core 4.61.1 → 4.61.2-ephemeral-support-docker-build-args.0
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/src/executors/docker-build/executor.js +1 -1
- package/dist/src/executors/docker-build/executor.js.map +1 -1
- package/dist/src/executors/publisher/docker.js +1 -1
- package/dist/src/executors/publisher/docker.js.map +1 -1
- package/dist/src/utils/common/aws-auth.d.ts +15 -0
- package/dist/src/utils/common/aws-auth.js +27 -17
- package/dist/src/utils/common/aws-auth.js.map +1 -1
- package/dist/src/utils/docker.d.ts +4 -1
- package/dist/src/utils/docker.js +3 -1
- package/dist/src/utils/docker.js.map +1 -1
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@ const runExecutor = async (options, context) => {
|
|
|
32
32
|
await (0, ecr_1.ensureEcrAuth)(registry.name, options.isPublicRepository);
|
|
33
33
|
// Build ephemeral sha tag (immutable)
|
|
34
34
|
logger_1.consola.box(`Building and pushing ephemeral image to ${registry.url}/${options.ecrRepository}:${tag}`);
|
|
35
|
-
await (0, docker_1.buildAndPushDockerImage)(options.ecrRepository, projectDockerfile, tag, sanitizedRepoUrl, commitSha, registry.url, [], context.projectName, options.disableEcrCaching);
|
|
35
|
+
await (0, docker_1.buildAndPushDockerImage)(options.ecrRepository, projectDockerfile, tag, sanitizedRepoUrl, commitSha, registry.url, [], context.projectName, options.disableEcrCaching, options.buildArgs || {});
|
|
36
36
|
return { success: true };
|
|
37
37
|
};
|
|
38
38
|
exports.default = runExecutor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/docker-build/executor.ts"],"names":[],"mappings":";;AAAA,8BAA6B;AAI7B,gDAI+B;AAC/B,sDAGkC;AAClC,sDAAmD;AACnD,+CAA4D;AAG5D,MAAM,WAAW,GAGyB,KAAK,EAC7C,OAAmC,EACnC,OAAwB,EACxB,EAAE;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAC7E,MAAM,iBAAiB,GAAG,GAAG,WAAW,aAAa,CAAA;IAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,gBAAO,CAAC,IAAI,CAAC,2BAA2B,iBAAiB,YAAY,CAAC,CAAA;QACtE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,gBAAO,CAAC,KAAK,CACX,qGAAqG,CACtG,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,QAAQ,GAAgB;QAC5B,GAAG,EAAE,OAAO,CAAC,kBAAkB;YAC7B,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,IAAA,uBAAiB,GAAE;QACvB,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAA,uBAAiB,GAAE;KAC1E,CAAA;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,+BAAsB,GAAE,CAAA;IAChD,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAA6B,GAAE,CAAA;IAC9D,MAAM,GAAG,GAAG,iBAAiB,SAAS,EAAE,CAAA;IAExC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,gBAAO,CAAC,GAAG,CACT,gDAAgD,iBAAiB,gBAAgB,OAAO,CAAC,aAAa,aAAa,GAAG,2BAA2B,CAClJ,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,IAAA,mBAAa,EAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAE9D,sCAAsC;IACtC,gBAAO,CAAC,GAAG,CACT,2CAA2C,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,CAC1F,CAAA;IAED,MAAM,IAAA,gCAAuB,EAC3B,OAAO,CAAC,aAAa,EACrB,iBAAiB,EACjB,GAAG,EACH,gBAAgB,EAChB,SAAS,EACT,QAAQ,CAAC,GAAG,EACZ,EAAE,EACF,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/docker-build/executor.ts"],"names":[],"mappings":";;AAAA,8BAA6B;AAI7B,gDAI+B;AAC/B,sDAGkC;AAClC,sDAAmD;AACnD,+CAA4D;AAG5D,MAAM,WAAW,GAGyB,KAAK,EAC7C,OAAmC,EACnC,OAAwB,EACxB,EAAE;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAC7E,MAAM,iBAAiB,GAAG,GAAG,WAAW,aAAa,CAAA;IAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,gBAAO,CAAC,IAAI,CAAC,2BAA2B,iBAAiB,YAAY,CAAC,CAAA;QACtE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,gBAAO,CAAC,KAAK,CACX,qGAAqG,CACtG,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,QAAQ,GAAgB;QAC5B,GAAG,EAAE,OAAO,CAAC,kBAAkB;YAC7B,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,IAAA,uBAAiB,GAAE;QACvB,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAA,uBAAiB,GAAE;KAC1E,CAAA;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,+BAAsB,GAAE,CAAA;IAChD,MAAM,gBAAgB,GAAG,MAAM,IAAA,sCAA6B,GAAE,CAAA;IAC9D,MAAM,GAAG,GAAG,iBAAiB,SAAS,EAAE,CAAA;IAExC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,gBAAO,CAAC,GAAG,CACT,gDAAgD,iBAAiB,gBAAgB,OAAO,CAAC,aAAa,aAAa,GAAG,2BAA2B,CAClJ,CAAA;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,IAAA,mBAAa,EAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAE9D,sCAAsC;IACtC,gBAAO,CAAC,GAAG,CACT,2CAA2C,QAAQ,CAAC,GAAG,IAAI,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,CAC1F,CAAA;IAED,MAAM,IAAA,gCAAuB,EAC3B,OAAO,CAAC,aAAa,EACrB,iBAAiB,EACjB,GAAG,EACH,gBAAgB,EAChB,SAAS,EACT,QAAQ,CAAC,GAAG,EACZ,EAAE,EACF,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,iBAAiB,EACzB,OAAO,CAAC,SAAS,IAAI,EAAE,CACxB,CAAA;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAC1B,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -47,7 +47,7 @@ async function publishDocker(options, context, version, projectRoot, isDryRun =
|
|
|
47
47
|
}
|
|
48
48
|
else {
|
|
49
49
|
logger_1.consola.start('Building and pushing docker image from scratch');
|
|
50
|
-
await (0, docker_1.buildAndPushDockerImage)(options.ecrRepository, projectDockerfile, version, sanitizedRepoUrl, commitSha, registry.url, extraTags, appName, options.disableEcrCaching);
|
|
50
|
+
await (0, docker_1.buildAndPushDockerImage)(options.ecrRepository, projectDockerfile, version, sanitizedRepoUrl, commitSha, registry.url, extraTags, appName, options.disableEcrCaching, options.buildArgs || {});
|
|
51
51
|
logger_1.consola.success('Docker image built and pushed successfully!');
|
|
52
52
|
}
|
|
53
53
|
if (!version.includes('ephemeral')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../../src/executors/publisher/docker.ts"],"names":[],"mappings":";;AAoBA,
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../../src/executors/publisher/docker.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,21 @@ import { Result } from 'tinyexec';
|
|
|
3
3
|
* Return the AWS profile name to use in AWS cli commands
|
|
4
4
|
*/
|
|
5
5
|
export declare function getProfileName(): string;
|
|
6
|
+
/**
|
|
7
|
+
* Retrieves the AWS credentials from environment variables.
|
|
8
|
+
* Ensures that `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, and `AWS_DEFAULT_REGION` are properly set.
|
|
9
|
+
* Throws an error if credentials or region are missing.
|
|
10
|
+
*
|
|
11
|
+
* @return {Object} An object containing AWS credentials.
|
|
12
|
+
* @return {string} return.accessKeyId The AWS Access Key ID.
|
|
13
|
+
* @return {string} return.secretAccessKey The AWS Secret Access Key.
|
|
14
|
+
* @return {string} return.region The AWS Region.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getAwsCredentialsSet(): {
|
|
17
|
+
accessKeyId: string;
|
|
18
|
+
secretAccessKey: string;
|
|
19
|
+
region: string;
|
|
20
|
+
};
|
|
6
21
|
/**
|
|
7
22
|
* Retrieves the authentication information for a given OIDC profile.
|
|
8
23
|
* If the specified profile exists, it fetches the configuration; otherwise, it returns false.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getProfileName = getProfileName;
|
|
4
|
+
exports.getAwsCredentialsSet = getAwsCredentialsSet;
|
|
4
5
|
exports.getAuthWithOidcProfile = getAuthWithOidcProfile;
|
|
5
6
|
exports.loginToEcr = loginToEcr;
|
|
6
7
|
exports.verifyEcrCredentials = verifyEcrCredentials;
|
|
@@ -18,20 +19,26 @@ function getProfileName() {
|
|
|
18
19
|
return profileName;
|
|
19
20
|
}
|
|
20
21
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
22
|
+
* Retrieves the AWS credentials from environment variables.
|
|
23
|
+
* Ensures that `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, and `AWS_DEFAULT_REGION` are properly set.
|
|
24
|
+
* Throws an error if credentials or region are missing.
|
|
23
25
|
*
|
|
24
|
-
* @
|
|
26
|
+
* @return {Object} An object containing AWS credentials.
|
|
27
|
+
* @return {string} return.accessKeyId The AWS Access Key ID.
|
|
28
|
+
* @return {string} return.secretAccessKey The AWS Secret Access Key.
|
|
29
|
+
* @return {string} return.region The AWS Region.
|
|
25
30
|
*/
|
|
26
|
-
function
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return 'default';
|
|
31
|
+
function getAwsCredentialsSet() {
|
|
32
|
+
const accessKeyId = process.env.AWS_ACCESS_KEY_ID;
|
|
33
|
+
const secretAccessKey = process.env.AWS_SECRET_ACCESS_KEY;
|
|
34
|
+
const region = process.env.AWS_DEFAULT_REGION;
|
|
35
|
+
if (!accessKeyId || !secretAccessKey) {
|
|
36
|
+
throw new Error('AWS credentials not found, please set AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables (or attach GLOBAL_ORG context if you are using CircleCI)');
|
|
33
37
|
}
|
|
34
|
-
|
|
38
|
+
if (!region) {
|
|
39
|
+
throw new Error('AWS region not found, please set AWS_DEFAULT_REGION environment variable (or attach GLOBAL_ORG context if you are using CircleCI)');
|
|
40
|
+
}
|
|
41
|
+
return { accessKeyId, secretAccessKey, region };
|
|
35
42
|
}
|
|
36
43
|
/**
|
|
37
44
|
* Retrieves the authentication information for a given OIDC profile.
|
|
@@ -121,15 +128,18 @@ async function verifyEcrCredentials(registry) {
|
|
|
121
128
|
* @returns {string} the profile's name
|
|
122
129
|
*/
|
|
123
130
|
async function checkAwsAuth() {
|
|
124
|
-
const
|
|
125
|
-
if (
|
|
131
|
+
const profileExist = await getAuthWithOidcProfile();
|
|
132
|
+
if (profileExist) {
|
|
126
133
|
consola_1.consola.log('OIDC profile found, using it');
|
|
127
134
|
profileName = 'OIDC-PROFILE';
|
|
128
|
-
return profileName;
|
|
129
135
|
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
136
|
+
else if (getAwsCredentialsSet()) {
|
|
137
|
+
consola_1.consola.log('OIDC profile not found, using AWS_KEY_ID and AWS_SECRET_ACCESS_KEY');
|
|
138
|
+
profileName = 'default';
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
throw new Error('AWS credentials not found, please attach CORE-PLATFORM_SHARED_ENV context if you are using CircleCI or export AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables');
|
|
142
|
+
}
|
|
133
143
|
return profileName;
|
|
134
144
|
}
|
|
135
145
|
//# sourceMappingURL=aws-auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-auth.js","sourceRoot":"","sources":["../../../../src/utils/common/aws-auth.ts"],"names":[],"mappings":";;AAcA,wCAEC;
|
|
1
|
+
{"version":3,"file":"aws-auth.js","sourceRoot":"","sources":["../../../../src/utils/common/aws-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,9 @@ import { Result } from 'tinyexec';
|
|
|
11
11
|
* @param extraTags - Optional additional tags for the image
|
|
12
12
|
* @param appName
|
|
13
13
|
* @param disableEcrCache
|
|
14
|
+
* @param buildArgs - Optional build arguments for the Docker build
|
|
14
15
|
* @return {Promise<Result>}
|
|
15
16
|
*/
|
|
16
|
-
export declare function buildAndPushDockerImage(imageName: string, dockerfilePath: string, version: string, gitRepoUrl: string, commitSha: string, registry: string, extraTags: string[], appName: string, disableEcrCache: boolean
|
|
17
|
+
export declare function buildAndPushDockerImage(imageName: string, dockerfilePath: string, version: string, gitRepoUrl: string, commitSha: string, registry: string, extraTags: string[], appName: string, disableEcrCache: boolean, buildArgs?: {
|
|
18
|
+
[key: string]: string;
|
|
19
|
+
}): Promise<Result>;
|
package/dist/src/utils/docker.js
CHANGED
|
@@ -45,9 +45,10 @@ async function setupDockerBuilder(appName) {
|
|
|
45
45
|
* @param extraTags - Optional additional tags for the image
|
|
46
46
|
* @param appName
|
|
47
47
|
* @param disableEcrCache
|
|
48
|
+
* @param buildArgs - Optional build arguments for the Docker build
|
|
48
49
|
* @return {Promise<Result>}
|
|
49
50
|
*/
|
|
50
|
-
async function buildAndPushDockerImage(imageName, dockerfilePath, version, gitRepoUrl, commitSha, registry, extraTags = [], appName, disableEcrCache) {
|
|
51
|
+
async function buildAndPushDockerImage(imageName, dockerfilePath, version, gitRepoUrl, commitSha, registry, extraTags = [], appName, disableEcrCache, buildArgs = {}) {
|
|
51
52
|
appName = appName.replaceAll('@', '-').replaceAll('/', '-');
|
|
52
53
|
const buildContextName = await setupDockerBuilder(appName);
|
|
53
54
|
// Build all tags including base version and extra tags
|
|
@@ -81,6 +82,7 @@ async function buildAndPushDockerImage(imageName, dockerfilePath, version, gitRe
|
|
|
81
82
|
`--annotation org.opencontainers.image.revision=${commitSha}`,
|
|
82
83
|
`--build-arg DD_GIT_REPOSITORY_URL=${gitRepoUrl}`,
|
|
83
84
|
`--build-arg DD_GIT_COMMIT_SHA=${commitSha}`,
|
|
85
|
+
...Object.entries(buildArgs).map(([key, value]) => `--build-arg ${key}=${value}`),
|
|
84
86
|
`.`,
|
|
85
87
|
].join(' \\\n');
|
|
86
88
|
return (0, exec_1.exec)(runCmd, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../src/utils/docker.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../src/utils/docker.ts"],"names":[],"mappings":"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"}
|