Compare commits

..
Author SHA1 Message Date
CrazyMax d3b9cdfa58 Merge pull request #1089 from crazy-max/fix-registry-auth-ecr-false
preserve explicit ECR settings in registry-auth
2026-10-16 20:24:38 +02:00
CrazyMax a27b71b09c chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-05 14:23:04 +02:00
CrazyMax 2c873c3656 test: simplify registry-auth ECR regression coverage
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-10-05 14:23:04 +02:00
breken-ai b4bb2a4ec0 keep registry-auth ecr: false instead of falling back to auto
registry-auth is parsed as YAML, so `ecr: false` (unquoted) is the
boolean false, and `auth.ecr || 'auto'` turned it into 'auto'. For an
ECR registry this runs the AWS SDK login with the given username and
password as AWS access keys, instead of the plain docker login the user
asked for. Only the quoted string "false" worked.

Convert the value to a string and only default to 'auto' when it is
missing or empty.

Assisted-By: Claude
Signed-off-by: breken-ai <312387581+breken-ai@users.noreply.github.com>
2026-10-05 14:21:32 +02:00
7 changed files with 27 additions and 7 deletions
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- -
name: Test name: Test
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0 uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.0
with: with:
source: . source: .
targets: test targets: test
+1 -1
View File
@@ -37,7 +37,7 @@ jobs:
token: ${{ steps.docker-read-app.outputs.token }} token: ${{ steps.docker-read-app.outputs.token }}
- -
name: Build name: Build
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0 uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.0
with: with:
source: . source: .
targets: build targets: build
+1 -1
View File
@@ -41,6 +41,6 @@ jobs:
steps: steps:
- -
name: Validate name: Validate
uses: docker/bake-action@018cb6412ab401ebaa809aa5f85966b74628600f # v7.4.0 uses: docker/bake-action@d3418bd7d0e9324001bca92fa8ba175ea7e6dc9b # v7.3.0
with: with:
targets: ${{ matrix.target }} targets: ${{ matrix.target }}
+20
View File
@@ -168,3 +168,23 @@ test('getAuthList masks registry-auth password when present', async () => {
expect(stdoutWriteSpy.mock.calls.map(call => call[0]).join('')).toContain('::add-mask::groundcontrol'); expect(stdoutWriteSpy.mock.calls.map(call => call[0]).join('')).toContain('::add-mask::groundcontrol');
}); });
// prettier-ignore
test.each([
['false', 'false'],
['"false"', 'false'],
['true', 'true'],
['auto', 'auto'],
['""', 'auto']
])('getAuthList normalizes registry-auth ecr: %s', (ecr, expected) => {
const [auth] = getAuthList({
registry: '',
username: '',
password: '',
scope: '',
ecr: '',
logout: true,
registryAuth: `- registry: 012345678910.dkr.ecr.eu-west-3.amazonaws.com\n username: AWS\n password: token\n ecr: ${ecr}\n`
});
expect(auth.ecr).toBe(expected);
});
Generated Vendored
+1 -1
View File
File diff suppressed because one or more lines are too long
Generated Vendored
+2 -2
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -62,7 +62,7 @@ export function getAuthList(inputs: Inputs): Array<Auth> {
username: auth.username, username: auth.username,
password: auth.password, password: auth.password,
scope: auth.scope, scope: auth.scope,
ecr: auth.ecr || 'auto', ecr: String(auth.ecr ?? '') || 'auto',
configDir: scopeToConfigDir(registry, auth.scope) configDir: scopeToConfigDir(registry, auth.scope)
}; };
}); });