Я пытаюсь запустить команду AWS CLI:
aws ecr get-login --no-include-email --region <my-region>
Но используя JavaScript SDK с методом new AWS.ECR(..).getAuthorizationToken
, но я получаю эту ошибку:
Error response from daemon: login attempt to https://xxxxx.dkr.ecr.<my-region>.amazonaws.com/v2/ failed with status: 400 Bad Request
Насколько я понимаю, мне нужно использовать какой-либо флаг, равный аргументу --no-include-email
в команде CLI, но я не могу найти, как установить его с помощью JavaScript SDK.
Это мой код:
const ecr = new AWS.ECR({
apiVersion: '2015-09-21',
region: 'my-region'
});
const { authorizationData } = await ecr.getAuthorizationToken().promise();
if(!authorizationData || !authorizationData[0] || !authorizationData[0].authorizationToken){
throw new Error('AWS getAuthorizationToken failed');
}
const password = authorizationData[0].authorizationToken;
const proxyEndpoint = authorizationData[0].proxyEndpoint;
await childProcessP.spawn('docker', [
'login',
'-u', 'AWS',
'-p', password,
proxyEndpoint
]);
Кто-нибудь знает, как это сделать?