Merge pull request #593 from crazy-max/update-node20

chore: node 20 as default runtime
This commit is contained in:
CrazyMax authored and GitHub committed 2023-09-12 08:23:18 +02:00
commit e7ebaec3b4
13 files changed
+884 -692

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
/dist/**
/coverage/**
/node_modules/**
+2 -1
View File
@@ -1,11 +1,12 @@
{
"env": {
"node": true,
"es2021": true,
"es6": true,
"jest": true
},
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended",
"plugin:jest/recommended",
"plugin:prettier/recommended"
+1
View File
@@ -1,5 +1,6 @@
import {beforeEach, describe, expect, jest, test} from '@jest/globals';
import {AuthorizationData} from '@aws-sdk/client-ecr';
import * as aws from '../src/aws';
describe('isECR', () => {
+1
View File
@@ -1,4 +1,5 @@
import {expect, test} from '@jest/globals';
import {getInputs} from '../src/context';
test('with password and username getInputs does not throw error', async () => {
+5 -4
View File
@@ -1,14 +1,15 @@
import {expect, jest, test} from '@jest/globals';
import {loginStandard, logout} from '../src/docker';
import * as path from 'path';
import * as exec from '@actions/exec';
import {loginStandard, logout} from '../src/docker';
import {Exec} from '@docker/actions-toolkit/lib/exec';
process.env['RUNNER_TEMP'] = path.join(__dirname, 'runner');
test('loginStandard calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(exec, 'getExecOutput').mockImplementation(async () => {
const execSpy = jest.spyOn(Exec, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
@@ -32,7 +33,7 @@ test('loginStandard calls exec', async () => {
test('logout calls exec', async () => {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
const execSpy = jest.spyOn(exec, 'getExecOutput').mockImplementation(async () => {
const execSpy = jest.spyOn(Exec, 'getExecOutput').mockImplementation(async () => {
return {
exitCode: expect.any(Number),
stdout: expect.any(Function),
-65
View File
@@ -1,65 +0,0 @@
import {expect, jest, test} from '@jest/globals';
import osm = require('os');
import {main} from '../src/main';
import * as docker from '../src/docker';
import * as stateHelper from '../src/state-helper';
test('errors without username and password', async () => {
jest.spyOn(osm, 'platform').mockImplementation(() => 'linux');
process.env['INPUT_LOGOUT'] = 'true'; // default value
await expect(main()).rejects.toThrow(new Error('Username and password required'));
});
test('successful with username and password', async () => {
jest.spyOn(osm, 'platform').mockImplementation(() => 'linux');
const setRegistrySpy = jest.spyOn(stateHelper, 'setRegistry');
const setLogoutSpy = jest.spyOn(stateHelper, 'setLogout');
const dockerSpy = jest.spyOn(docker, 'login').mockImplementation(() => Promise.resolve());
const username = 'dbowie';
process.env[`INPUT_USERNAME`] = username;
const password = 'groundcontrol';
process.env[`INPUT_PASSWORD`] = password;
const ecr = 'auto';
process.env['INPUT_ECR'] = ecr;
const logout = false;
process.env['INPUT_LOGOUT'] = String(logout);
await main();
expect(setRegistrySpy).toHaveBeenCalledWith('');
expect(setLogoutSpy).toHaveBeenCalledWith(logout);
expect(dockerSpy).toHaveBeenCalledWith('', username, password, ecr);
});
test('calls docker login', async () => {
jest.spyOn(osm, 'platform').mockImplementation(() => 'linux');
const setRegistrySpy = jest.spyOn(stateHelper, 'setRegistry');
const setLogoutSpy = jest.spyOn(stateHelper, 'setLogout');
const dockerSpy = jest.spyOn(docker, 'login').mockImplementation(() => Promise.resolve());
const username = 'dbowie';
process.env[`INPUT_USERNAME`] = username;
const password = 'groundcontrol';
process.env[`INPUT_PASSWORD`] = password;
const registry = 'ghcr.io';
process.env[`INPUT_REGISTRY`] = registry;
const ecr = 'auto';
process.env['INPUT_ECR'] = ecr;
const logout = true;
process.env['INPUT_LOGOUT'] = String(logout);
await main();
expect(setRegistrySpy).toHaveBeenCalledWith(registry);
expect(setLogoutSpy).toHaveBeenCalledWith(logout);
expect(dockerSpy).toHaveBeenCalledWith(registry, username, password, ecr);
});
+1 -1
View File
@@ -26,6 +26,6 @@ inputs:
required: false
runs:
using: 'node16'
using: 'node20'
main: 'dist/index.js'
post: 'dist/index.js'
+18 -25
View File
@@ -1,8 +1,6 @@
# syntax=docker/dockerfile:1
ARG NODE_VERSION=16
ARG DOCKER_VERSION=20.10.13
ARG BUILDX_VERSION=0.8.1
ARG NODE_VERSION=20
FROM node:${NODE_VERSION}-alpine AS base
RUN apk add --no-cache cpio findutils git
@@ -18,14 +16,14 @@ COPY --from=deps /vendor /
FROM deps AS vendor-validate
RUN --mount=type=bind,target=.,rw <<EOT
set -e
git add -A
cp -rf /vendor/* .
if [ -n "$(git status --porcelain -- yarn.lock)" ]; then
echo >&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor-update"'
git status --porcelain -- yarn.lock
exit 1
fi
set -e
git add -A
cp -rf /vendor/* .
if [ -n "$(git status --porcelain -- yarn.lock)" ]; then
echo >&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor-update"'
git status --porcelain -- yarn.lock
exit 1
fi
EOT
FROM deps AS build
@@ -38,14 +36,14 @@ COPY --from=build /out /
FROM build AS build-validate
RUN --mount=type=bind,target=.,rw <<EOT
set -e
git add -A
cp -rf /out/* .
if [ -n "$(git status --porcelain -- dist)" ]; then
echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"'
git status --porcelain -- dist
exit 1
fi
set -e
git add -A
cp -rf /out/* .
if [ -n "$(git status --porcelain -- dist)" ]; then
echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"'
git status --porcelain -- dist
exit 1
fi
EOT
FROM deps AS format
@@ -62,17 +60,12 @@ RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/node_modules \
yarn run lint
FROM docker:${DOCKER_VERSION} as docker
FROM docker/buildx-bin:${BUILDX_VERSION} as buildx
FROM deps AS test
ENV RUNNER_TEMP=/tmp/github_runner
ENV RUNNER_TOOL_CACHE=/tmp/github_tool_cache
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/node_modules \
--mount=type=bind,from=docker,source=/usr/local/bin/docker,target=/usr/bin/docker \
--mount=type=bind,from=buildx,source=/buildx,target=/usr/libexec/docker/cli-plugins/docker-buildx \
yarn run test --coverageDirectory=/tmp/coverage
yarn run test --coverage --coverageDirectory=/tmp/coverage
FROM scratch AS test-coverage
COPY --from=test /tmp/coverage /
Generated Vendored
+1 -1
View File
@@ -13,5 +13,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
var t;var n;var o;var r;var s;var i;var a;var c;var d;var u;var l;var p;var m;var f;var y;var g;var h;var E;var _;var v;var C;var S;var b;(function(t){var n=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:{};if(typeof define==="function"&&define.amd){define("tslib",["exports"],(function(e){t(createExporter(n,createExporter(e)))}))}else if(true&&typeof e.exports==="object"){t(createExporter(n,createExporter(e.exports)))}else{t(createExporter(n))}function createExporter(e,t){if(e!==n){if(typeof Object.create==="function"){Object.defineProperty(e,"__esModule",{value:true})}else{e.__esModule=true}}return function(n,o){return e[n]=t?t(n,o):o}}})((function(e){var P=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)if(t.hasOwnProperty(n))e[n]=t[n]};t=function(e,t){P(e,t);function __(){this.constructor=e}e.prototype=t===null?Object.create(t):(__.prototype=t.prototype,new __)};n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++){t=arguments[n];for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r))e[r]=t[r]}return e};o=function(e,t){var n={};for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0)n[o]=e[o];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var r=0,o=Object.getOwnPropertySymbols(e);r<o.length;r++){if(t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r]))n[o[r]]=e[o[r]]}return n};r=function(e,t,n,o){var r=arguments.length,s=r<3?t:o===null?o=Object.getOwnPropertyDescriptor(t,n):o,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,t,n,o);else for(var a=e.length-1;a>=0;a--)if(i=e[a])s=(r<3?i(s):r>3?i(t,n,s):i(t,n))||s;return r>3&&s&&Object.defineProperty(t,n,s),s};s=function(e,t){return function(n,o){t(n,o,e)}};i=function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};a=function(e,t,n,o){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o["throw"](e))}catch(e){r(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((o=o.apply(e,t||[])).next())}))};c=function(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o,r,s,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(i){if(o)throw new TypeError("Generator is already executing.");while(n)try{if(o=1,r&&(s=i[0]&2?r["return"]:i[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,i[1])).done)return s;if(r=0,s)i=[i[0]&2,s.value];switch(i[0]){case 0:case 1:s=i;break;case 4:n.label++;return{value:i[1],done:false};case 5:n.label++;r=i[1];i=[0];continue;case 7:i=n.ops.pop();n.trys.pop();continue;default:if(!(s=n.trys,s=s.length>0&&s[s.length-1])&&(i[0]===6||i[0]===2)){n=0;continue}if(i[0]===3&&(!s||i[1]>s[0]&&i[1]<s[3])){n.label=i[1];break}if(i[0]===6&&n.label<s[1]){n.label=s[1];s=i;break}if(s&&n.label<s[2]){n.label=s[2];n.ops.push(i);break}if(s[2])n.ops.pop();n.trys.pop();continue}i=t.call(e,n)}catch(e){i=[6,e];r=0}finally{o=s=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};b=function(e,t,n,o){if(o===undefined)o=n;e[o]=t[n]};d=function(e,t){for(var n in e)if(n!=="default"&&!t.hasOwnProperty(n))t[n]=e[n]};u=function(e){var t=typeof Symbol==="function"&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&typeof e.length==="number")return{next:function(){if(e&&o>=e.length)e=void 0;return{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};l=function(e,t){var n=typeof Symbol==="function"&&e[Symbol.iterator];if(!n)return e;var o=n.call(e),r,s=[],i;try{while((t===void 0||t-- >0)&&!(r=o.next()).done)s.push(r.value)}catch(e){i={error:e}}finally{try{if(r&&!r.done&&(n=o["return"]))n.call(o)}finally{if(i)throw i.error}}return s};p=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(l(arguments[t]));return e};m=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var o=Array(e),r=0,t=0;t<n;t++)for(var s=arguments[t],i=0,a=s.length;i<a;i++,r++)o[r]=s[i];return o};f=function(e){return this instanceof f?(this.v=e,this):new f(e)};y=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o=n.apply(e,t||[]),r,s=[];return r={},verb("next"),verb("throw"),verb("return"),r[Symbol.asyncIterator]=function(){return this},r;function verb(e){if(o[e])r[e]=function(t){return new Promise((function(n,o){s.push([e,t,n,o])>1||resume(e,t)}))}}function resume(e,t){try{step(o[e](t))}catch(e){settle(s[0][3],e)}}function step(e){e.value instanceof f?Promise.resolve(e.value.v).then(fulfill,reject):seLine truncated
var t;var n;var o;var r;var s;var i;var a;var c;var d;var u;var l;var p;var m;var f;var y;var g;var h;var E;var _;var v;var C;var S;var b;(function(t){var n=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:{};if(typeof define==="function"&&define.amd){define("tslib",["exports"],(function(e){t(createExporter(n,createExporter(e)))}))}else if(true&&typeof e.exports==="object"){t(createExporter(n,createExporter(e.exports)))}else{t(createExporter(n))}function createExporter(e,t){if(e!==n){if(typeof Object.create==="function"){Object.defineProperty(e,"__esModule",{value:true})}else{e.__esModule=true}}return function(n,o){return e[n]=t?t(n,o):o}}})((function(e){var P=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)if(t.hasOwnProperty(n))e[n]=t[n]};t=function(e,t){P(e,t);function __(){this.constructor=e}e.prototype=t===null?Object.create(t):(__.prototype=t.prototype,new __)};n=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++){t=arguments[n];for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r))e[r]=t[r]}return e};o=function(e,t){var n={};for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0)n[o]=e[o];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var r=0,o=Object.getOwnPropertySymbols(e);r<o.length;r++){if(t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r]))n[o[r]]=e[o[r]]}return n};r=function(e,t,n,o){var r=arguments.length,s=r<3?t:o===null?o=Object.getOwnPropertyDescriptor(t,n):o,i;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")s=Reflect.decorate(e,t,n,o);else for(var a=e.length-1;a>=0;a--)if(i=e[a])s=(r<3?i(s):r>3?i(t,n,s):i(t,n))||s;return r>3&&s&&Object.defineProperty(t,n,s),s};s=function(e,t){return function(n,o){t(n,o,e)}};i=function(e,t){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(e,t)};a=function(e,t,n,o){function adopt(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function fulfilled(e){try{step(o.next(e))}catch(e){r(e)}}function rejected(e){try{step(o["throw"](e))}catch(e){r(e)}}function step(e){e.done?n(e.value):adopt(e.value).then(fulfilled,rejected)}step((o=o.apply(e,t||[])).next())}))};c=function(e,t){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o,r,s,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(i){if(o)throw new TypeError("Generator is already executing.");while(n)try{if(o=1,r&&(s=i[0]&2?r["return"]:i[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,i[1])).done)return s;if(r=0,s)i=[i[0]&2,s.value];switch(i[0]){case 0:case 1:s=i;break;case 4:n.label++;return{value:i[1],done:false};case 5:n.label++;r=i[1];i=[0];continue;case 7:i=n.ops.pop();n.trys.pop();continue;default:if(!(s=n.trys,s=s.length>0&&s[s.length-1])&&(i[0]===6||i[0]===2)){n=0;continue}if(i[0]===3&&(!s||i[1]>s[0]&&i[1]<s[3])){n.label=i[1];break}if(i[0]===6&&n.label<s[1]){n.label=s[1];s=i;break}if(s&&n.label<s[2]){n.label=s[2];n.ops.push(i);break}if(s[2])n.ops.pop();n.trys.pop();continue}i=t.call(e,n)}catch(e){i=[6,e];r=0}finally{o=s=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};b=function(e,t,n,o){if(o===undefined)o=n;e[o]=t[n]};d=function(e,t){for(var n in e)if(n!=="default"&&!t.hasOwnProperty(n))t[n]=e[n]};u=function(e){var t=typeof Symbol==="function"&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&typeof e.length==="number")return{next:function(){if(e&&o>=e.length)e=void 0;return{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")};l=function(e,t){var n=typeof Symbol==="function"&&e[Symbol.iterator];if(!n)return e;var o=n.call(e),r,s=[],i;try{while((t===void 0||t-- >0)&&!(r=o.next()).done)s.push(r.value)}catch(e){i={error:e}}finally{try{if(r&&!r.done&&(n=o["return"]))n.call(o)}finally{if(i)throw i.error}}return s};p=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(l(arguments[t]));return e};m=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var o=Array(e),r=0,t=0;t<n;t++)for(var s=arguments[t],i=0,a=s.length;i<a;i++,r++)o[r]=s[i];return o};f=function(e){return this instanceof f?(this.v=e,this):new f(e)};y=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o=n.apply(e,t||[]),r,s=[];return r={},verb("next"),verb("throw"),verb("return"),r[Symbol.asyncIterator]=function(){return this},r;function verb(e){if(o[e])r[e]=function(t){return new Promise((function(n,o){s.push([e,t,n,o])>1||resume(e,t)}))}}function resume(e,t){try{step(o[e](t))}catch(e){settle(s[0][3],e)}}function step(e){e.value instanceof f?Promise.resolve(e.value.v).then(fulfill,reject):seLine truncated
//# sourceMappingURL=index.js.map
Generated Vendored
+1 -1
View File
@@ -1 +1 @@
{"version":3,"sources":["../webpack:/docker-login/node_modules/@actions/core/lib/command.js","../webpack:/docker-login/node_modules/@actions/core/lib/core.js","../webpack:/docker-login/node_modules/@actions/core/lib/file-command.js","../webpack:/docker-login/node_modules/@actions/core/lib/oidc-utils.js","../webpack:/docker-login/node_modules/@actions/core/lib/path-utils.js","../webpack:/docker-login/node_modules/@actions/core/lib/summary.js","../webpack:/docker-login/node_modules/@actions/core/lib/utils.js","../webpack:/docker-login/node_modules/@actions/exec/lib/exec.js","../webpack:/docker-login/node_modules/@actions/exec/lib/toolrunner.js","../webpack:/docker-login/node_modules/@actions/http-client/lib/auth.js","../webpack:/docker-login/node_modules/@actions/http-client/lib/index.js","../webpack:/docker-login/node_modules/@actions/http-client/lib/proxy.js","../webpack:/docker-login/node_modules/@actions/io/lib/io-util.js","../webpack:/docker-login/node_modules/@actions/io/lib/io.js","../webpack:/docker-login/node_modules/@aws-crypto/crc32/build/aws_crc32.js","../webpack:/docker-login/node_modules/@aws-crypto/crc32/build/index.js","../webpack:/docker-login/node_modules/@aws-crypto/crc32/node_modules/tslib/tslib.js","../webpack:/docker-login/node_modules/@aws-crypto/util/build/convertToBuffer.js","../webpack:/docker-login/node_modules/@aws-crypto/util/build/index.js","../webpack:/docker-login/node_modules/@aws-crypto/util/build/isEmptyData.js","../webpack:/docker-login/node_modules/@aws-crypto/util/build/numToUint8.js","../webpack:/docker-login/node_modules/@aws-crypto/util/build/uint32ArrayFrom.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/ECRPUBLIC.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/ECRPUBLICClient.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/BatchCheckLayerAvailabilityCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/BatchDeleteImageCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/CompleteLayerUploadCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/CreateRepositoryCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DeleteRepositoryCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DeleteRepositoryPolicyCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DescribeImageTagsCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DescribeImagesCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DescribeRegistriesCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/DescribeRepositoriesCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/GetAuthorizationTokenCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/GetRegistryCatalogDataCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/GetRepositoryCatalogDataCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/GetRepositoryPolicyCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/InitiateLayerUploadCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/ListTagsForResourceCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/PutImageCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/PutRegistryCatalogDataCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/PutRepositoryCatalogDataCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/SetRepositoryPolicyCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/TagResourceCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/UntagResourceCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/UploadLayerPartCommand.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/commands/index.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/endpoint/EndpointParameters.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/endpoint/endpointResolver.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/endpoint/ruleset.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-cjs/index.js","../webpack:/docker-login/node_modules/@aws-sdk/client-ecr-public/dist-Line truncated
{"version":3,"file":"index.js","names":["__createBinding","this","Object","create","o","m","k","k2","undefined","defineProperty","enumerable","get","__setModuleDefault","v","value","__importStar","mod","__esModule","result","hasOwnProperty","call","exports","issue","issueCommand","os","__webpack_require__","utils_1","command","properties","message","cmd","Command","process","stdout","write","toString","EOL","name","CMD_STRING","constructor","cmdStr","keys","length","first","key","val","escapeProperty","escapeData","s","toCommandValue","replace","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","next","e","rejected","done","then","apply","getIDToken","getState","saveState","group","endGroup","startGroup","info","notice","warning","error","debug","isDebug","setFailed","setCommandEcho","setOutput","getBooleanInput","getMultilineInput","getInput","addPath","setSecret","exportVariable","ExitCode","command_1","file_command_1","path","oidc_utils_1","convertedVal","env","filePath","issueFileCommand","prepareKeyValueMessage","secret","inputPath","delimiter","options","toUpperCase","required","Error","trimWhitespace","trim","inputs","split","filter","x","map","input","trueValue","falseValue","includes","TypeError","enabled","exitCode","Failure","toCommandProperties","fn","aud","OidcClient","summary_1","summary","summary_2","markdownSummary","path_utils_1","toPosixPath","toWin32Path","toPlatformPath","fs","uuid_1","existsSync","appendFileSync","encoding","v4","convertedValue","http_client_1","auth_1","core_1","createHttpClient","allowRetry","maxRetry","requestOptions","allowRetries","maxRetries","HttpClient","BearerCredentialHandler","getRequestToken","token","getIDTokenUrl","runtimeUrl","getCall","id_token_url","_a","httpclient","res","getJson","catch","statusCode","id_token","audience","encodedAudience","encodeURIComponent","pth","sep","SUMMARY_DOCS_URL","SUMMARY_ENV_VAR","os_1","fs_1","access","appendFile","writeFile","promises","Summary","_buffer","_filePath","pathFromEnv","constants","R_OK","W_OK","wrap","tag","content","attrs","htmlAttrs","entries","join","overwrite","writeFunc","emptyBuffer","clear","stringify","isEmptyBuffer","addRaw","text","addEOL","addCodeBlock","code","lang","assign","element","addList","items","ordered","listItems","item","addTable","rows","tableBody","row","cells","cell","header","data","colspan","rowspan","addDetails","label","addImage","src","alt","width","height","addHeading","level","allowedTag","addSeparator","addBreak","addQuote","cite","addLink","href","_summary","String","JSON","annotationProperties","title","file","line","startLine","endLine","col","startColumn","endColumn","getExecOutput","exec","string_decoder_1","tr","commandLine","args","commandArgs","argStringToArray","toolPath","slice","concat","runner","ToolRunner","_b","stderr","stdoutDecoder","StringDecoder","stderrDecoder","originalStdoutListener","listeners","originalStdErrListener","stdErrListener","stdOutListener","end","events","child","io","ioUtil","timers_1","IS_WINDOWS","platform","EventEmitter","super","_debug","_getCommandString","noPrefix","_getSpawnFileName","_getSpawnArgs","_isCmdFile","a","windowsVerbatimArguments","_windowsQuoteCmdArg","_processLineBuffer","strBuffer","onLine","n","indexOf","substring","err","argline","_endsWith","str","endsWith","upperToolPath","arg","_uvQuoteCmdArg","cmdSpecialChars","needsQuotes","char","some","reverse","quoteHit","i","_cloneExecOptions","cwd","silent","failOnStdErr","ignoreReturnCode","delay","outStream","errStream","_getSpawnOptions","argv0","isRooted","which","optionsNonNull","state","ExecState","on","exists","fileName","cp","spawn","stdbuffer","stdline","errbuffer","processStderr","errline","processError","processExited","processClosed","CheckComplete","processExitCode","emit","removeAllListeners","stdin","argString","inQuotes","escaped","append","c","charAt","push","timeout","_setResult","setTimeout","HandleTimeout","clearTimeout","PersonalAccessTokenCredentialHandler","BasicCredentialHandler","username","password","prepareRequest","headers","Buffer","from","canHandleAuthentication","handleAuthentication","isHttps","HttpClientResponse","HttpClientError","getProxyUrl","MediaTypes","Headers","HttpCodes","http","https","pm","tunnel","serverUrl","proxyUrl","URL","HttpRedirectCodes","MovedPermanently","ResourceMoved","SeeOther","TemporaryRedirect","PermanentRedirect","HttpResponseRetryCodes","BadGateway","ServiceUnavailable","GatewayTimeout","RetryableHttpVerbs","ExponentialBackoffCeiling","ExponentialBackoffTimeSlice","setPrototypeOf","prototype","readBody","output","alloc","chunk","requestUrl","parsedUrl","protocol","userAgent","handlers","_ignoreSslError","_allowRedirects","_allowRedirectDowngrade","_maxRedirects","_allowRetries","_maxRetries","_keepAlive","_disposed","ignoreSslError","_socketTimeout","socketTimeout","allowRedirects","allowRedirectDowngrade","maxRedirects","Math","max","keepAlive","additionalLine truncated
+1
View File
@@ -15,6 +15,7 @@ process.env = Object.assign({}, process.env, {
module.exports = {
clearMocks: true,
testEnvironment: 'node',
moduleFileExtensions: ['js', 'ts'],
testMatch: ['**/*.test.ts'],
transform: {
+22 -24
View File
@@ -4,9 +4,13 @@
"main": "lib/main.js",
"scripts": {
"build": "ncc build src/main.ts --source-map --minify --license licenses.txt",
"lint": "eslint src/**/*.ts __tests__/**/*.ts",
"format": "eslint --fix src/**/*.ts __tests__/**/*.ts",
"test": "jest --coverage",
"lint": "yarn run prettier && yarn run eslint",
"format": "yarn run prettier:fix && yarn run eslint:fix",
"eslint": "eslint --max-warnings=0 .",
"eslint:fix": "eslint --fix .",
"prettier": "prettier --check \"./**/*.ts\"",
"prettier:fix": "prettier --write \"./**/*.ts\"",
"test": "jest",
"all": "yarn run build && yarn run format && yarn test"
},
"repository": {
@@ -18,35 +22,29 @@
"docker",
"login"
],
"author": "Docker",
"contributors": [
{
"name": "CrazyMax",
"url": "https://crazymax.dev"
}
],
"license": "MIT",
"author": "Docker Inc.",
"license": "Apache-2.0",
"dependencies": {
"@actions/core": "^1.10.0",
"@aws-sdk/client-ecr": "^3.398.0",
"@aws-sdk/client-ecr-public": "^3.398.0",
"@docker/actions-toolkit": "^0.7.1",
"@docker/actions-toolkit": "^0.12.0",
"http-proxy-agent": "^7.0.0",
"https-proxy-agent": "^7.0.1"
},
"devDependencies": {
"@types/node": "^16.18.21",
"@typescript-eslint/eslint-plugin": "^5.56.0",
"@typescript-eslint/parser": "^5.56.0",
"@vercel/ncc": "^0.36.1",
"eslint": "^8.36.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-jest": "^27.2.1",
"eslint-plugin-prettier": "^4.2.1",
"jest": "^29.5.0",
"prettier": "^2.8.7",
"ts-jest": "^29.0.5",
"@types/node": "^20.5.9",
"@typescript-eslint/eslint-plugin": "^6.6.0",
"@typescript-eslint/parser": "^6.6.0",
"@vercel/ncc": "^0.38.0",
"eslint": "^8.48.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-jest": "^27.2.3",
"eslint-plugin-prettier": "^5.0.0",
"jest": "^29.6.4",
"prettier": "^3.0.3",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.1",
"typescript": "^4.9.5"
"typescript": "^5.2.2"
}
}
+828 -570
View File
File diff suppressed because it is too large. Load diff