mirror of
https://github.com/docker/login-action.git
synced 2026-10-17 11:53:07 +01:00
Compare commits
3 Commits
v3
...
e5665a8005
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5665a8005 | ||
|
|
580c4eb563 | ||
|
|
4850ca5e15 |
@@ -11,7 +11,6 @@ describe('isECR', () => {
|
|||||||
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', true],
|
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', true],
|
||||||
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', true],
|
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', true],
|
||||||
['012345678901.dkr-ecr.eu-north-1.on.aws', true],
|
['012345678901.dkr-ecr.eu-north-1.on.aws', true],
|
||||||
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', true],
|
|
||||||
['public.ecr.aws', true],
|
['public.ecr.aws', true],
|
||||||
['ecr-public.aws.com', true]
|
['ecr-public.aws.com', true]
|
||||||
])('given registry %p', async (registry, expected) => {
|
])('given registry %p', async (registry, expected) => {
|
||||||
@@ -27,7 +26,6 @@ describe('isPubECR', () => {
|
|||||||
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', false],
|
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', false],
|
||||||
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', false],
|
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', false],
|
||||||
['012345678901.dkr-ecr.eu-north-1.on.aws', false],
|
['012345678901.dkr-ecr.eu-north-1.on.aws', false],
|
||||||
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', false],
|
|
||||||
['public.ecr.aws', true],
|
['public.ecr.aws', true],
|
||||||
['ecr-public.aws.com', true]
|
['ecr-public.aws.com', true]
|
||||||
])('given registry %p', async (registry, expected) => {
|
])('given registry %p', async (registry, expected) => {
|
||||||
@@ -41,7 +39,6 @@ describe('getRegion', () => {
|
|||||||
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', 'cn-north-1'],
|
['876820548815.dkr.ecr.cn-north-1.amazonaws.com.cn', 'cn-north-1'],
|
||||||
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', 'cn-northwest-1'],
|
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', 'cn-northwest-1'],
|
||||||
['012345678901.dkr-ecr.eu-north-1.on.aws', 'eu-north-1'],
|
['012345678901.dkr-ecr.eu-north-1.on.aws', 'eu-north-1'],
|
||||||
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', 'eusc-de-east-1'],
|
|
||||||
['public.ecr.aws', 'us-east-1']
|
['public.ecr.aws', 'us-east-1']
|
||||||
])('given registry %p', async (registry, expected) => {
|
])('given registry %p', async (registry, expected) => {
|
||||||
expect(aws.getRegion(registry)).toEqual(expected);
|
expect(aws.getRegion(registry)).toEqual(expected);
|
||||||
@@ -55,7 +52,6 @@ describe('getAccountIDs', () => {
|
|||||||
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', '012345678901,012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
|
['012345678901.dkr.ecr.eu-west-3.amazonaws.com', '012345678901,012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
|
||||||
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', '012345678910,023456789012', ['390948362332', '012345678910', '023456789012']],
|
['390948362332.dkr.ecr.cn-northwest-1.amazonaws.com.cn', '012345678910,023456789012', ['390948362332', '012345678910', '023456789012']],
|
||||||
['876820548815.dkr-ecr.eu-north-1.on.aws', '012345678910,023456789012', ['876820548815', '012345678910', '023456789012']],
|
['876820548815.dkr-ecr.eu-north-1.on.aws', '012345678910,023456789012', ['876820548815', '012345678910', '023456789012']],
|
||||||
['012345678901.dkr.ecr.eusc-de-east-1.amazonaws.eu', '012345678910,023456789012', ['012345678901', '012345678910', '023456789012']],
|
|
||||||
['public.ecr.aws', undefined, []]
|
['public.ecr.aws', undefined, []]
|
||||||
])('given registry %p', async (registry, accountIDsEnv, expected) => {
|
])('given registry %p', async (registry, accountIDsEnv, expected) => {
|
||||||
if (accountIDsEnv) {
|
if (accountIDsEnv) {
|
||||||
|
|||||||
2
dist/index.js
generated
vendored
2
dist/index.js
generated
vendored
File diff suppressed because one or more lines are too long
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
@@ -5,7 +5,7 @@ import {NodeHttpHandler} from '@smithy/node-http-handler';
|
|||||||
import {HttpProxyAgent} from 'http-proxy-agent';
|
import {HttpProxyAgent} from 'http-proxy-agent';
|
||||||
import {HttpsProxyAgent} from 'https-proxy-agent';
|
import {HttpsProxyAgent} from 'https-proxy-agent';
|
||||||
|
|
||||||
const ecrRegistryRegex = /^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/;
|
const ecrRegistryRegex = /^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.com(.cn)?))(\/([^:]+)(:.+)?)?$/;
|
||||||
const ecrPublicRegistryRegex = /public\.ecr\.aws|ecr-public\.aws\.com/;
|
const ecrPublicRegistryRegex = /public\.ecr\.aws|ecr-public\.aws\.com/;
|
||||||
|
|
||||||
export const isECR = (registry: string): boolean => {
|
export const isECR = (registry: string): boolean => {
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import * as core from '@actions/core';
|
|||||||
import * as yaml from 'js-yaml';
|
import * as yaml from 'js-yaml';
|
||||||
|
|
||||||
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx';
|
import {Buildx} from '@docker/actions-toolkit/lib/buildx/buildx';
|
||||||
import {Util} from '@docker/actions-toolkit/lib/util';
|
|
||||||
|
|
||||||
export interface Inputs {
|
export interface Inputs {
|
||||||
registry: string;
|
registry: string;
|
||||||
@@ -70,7 +69,7 @@ export function getAuthList(inputs: Inputs): Array<Auth> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function scopeToConfigDir(registry: string, scope?: string): string {
|
export function scopeToConfigDir(registry: string, scope?: string): string {
|
||||||
if (scopeDisabled() || !scope || scope === '') {
|
if (!scope || scope === '') {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
let configDir = path.join(Buildx.configDir, 'config', registry === 'docker.io' ? 'registry-1.docker.io' : registry);
|
let configDir = path.join(Buildx.configDir, 'config', registry === 'docker.io' ? 'registry-1.docker.io' : registry);
|
||||||
@@ -81,10 +80,3 @@ export function scopeToConfigDir(registry: string, scope?: string): string {
|
|||||||
}
|
}
|
||||||
return configDir;
|
return configDir;
|
||||||
}
|
}
|
||||||
|
|
||||||
function scopeDisabled(): boolean {
|
|
||||||
if (process.env.DOCKER_LOGIN_SCOPE_DISABLED) {
|
|
||||||
return Util.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -56,10 +56,9 @@ export async function loginECR(registry: string, username: string, password: str
|
|||||||
|
|
||||||
async function loginExec(registry: string, username: string, password: string, scope?: string): Promise<void> {
|
async function loginExec(registry: string, username: string, password: string, scope?: string): Promise<void> {
|
||||||
let envs: {[key: string]: string} | undefined;
|
let envs: {[key: string]: string} | undefined;
|
||||||
const configDir = context.scopeToConfigDir(registry, scope);
|
if (scope && scope !== '') {
|
||||||
if (configDir !== '') {
|
|
||||||
envs = Object.assign({}, process.env, {
|
envs = Object.assign({}, process.env, {
|
||||||
DOCKER_CONFIG: configDir
|
DOCKER_CONFIG: context.scopeToConfigDir(registry, scope)
|
||||||
}) as {
|
}) as {
|
||||||
[key: string]: string;
|
[key: string]: string;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -6357,9 +6357,9 @@ __metadata:
|
|||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"lodash@npm:^4.17.15":
|
"lodash@npm:^4.17.15":
|
||||||
version: 4.17.23
|
version: 4.17.21
|
||||||
resolution: "lodash@npm:4.17.23"
|
resolution: "lodash@npm:4.17.21"
|
||||||
checksum: 10/82504c88250f58da7a5a4289f57a4f759c44946c005dd232821c7688b5fcfbf4a6268f6a6cdde4b792c91edd2f3b5398c1d2a0998274432cff76def48735e233
|
checksum: 10/c08619c038846ea6ac754abd6dd29d2568aa705feb69339e836dfa8d8b09abbb2f859371e86863eda41848221f9af43714491467b5b0299122431e202bb0c532
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user