switch to ESM and update config/test wiring
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
This commit is contained in:
@@ -62,7 +62,7 @@ module.exports = defineConfig([
|
|||||||
},
|
},
|
||||||
parser: tsParser,
|
parser: tsParser,
|
||||||
ecmaVersion: 2023,
|
ecmaVersion: 2023,
|
||||||
sourceType: 'commonjs'
|
sourceType: 'module'
|
||||||
},
|
},
|
||||||
|
|
||||||
rules: {
|
rules: {
|
||||||
@@ -75,7 +75,7 @@ module.exports = defineConfig([
|
|||||||
'import/no-unresolved': [
|
'import/no-unresolved': [
|
||||||
'error',
|
'error',
|
||||||
{
|
{
|
||||||
ignore: ['csv-parse/sync', '@octokit/openapi-types']
|
ignore: ['\\.js$', 'csv-parse/sync', '@octokit/openapi-types', '@octokit/core', '@octokit/plugin-rest-endpoint-methods']
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
'jest/no-disabled-tests': 0
|
'jest/no-disabled-tests': 0
|
||||||
@@ -38,13 +38,20 @@ module.exports = {
|
|||||||
setupFiles: ['dotenv/config'],
|
setupFiles: ['dotenv/config'],
|
||||||
testMatch: ['**/*.test.ts'],
|
testMatch: ['**/*.test.ts'],
|
||||||
transform: {
|
transform: {
|
||||||
'^.+\\.ts$': 'ts-jest'
|
'^.+\\.ts$': [
|
||||||
|
'ts-jest',
|
||||||
|
{
|
||||||
|
useESM: true
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
moduleNameMapper: {
|
moduleNameMapper: {
|
||||||
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs'
|
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs',
|
||||||
|
'^(\\.{1,2}/.*)\\.js$': '$1'
|
||||||
},
|
},
|
||||||
|
extensionsToTreatAsEsm: ['.ts'],
|
||||||
collectCoverageFrom: ['src/**/{!(index.ts),}.ts'],
|
collectCoverageFrom: ['src/**/{!(index.ts),}.ts'],
|
||||||
coveragePathIgnorePatterns: ['lib/', 'node_modules/', '__mocks__/', '__tests__/'],
|
coveragePathIgnorePatterns: ['lib/', 'node_modules/', '__mocks__/', '__tests__/'],
|
||||||
testResultsProcessor: '<rootDir>/__tests__/testResultsProcessor.js',
|
testResultsProcessor: '<rootDir>/__tests__/testResultsProcessor.cjs',
|
||||||
verbose: true
|
verbose: true
|
||||||
};
|
};
|
||||||
@@ -21,11 +21,18 @@ module.exports = {
|
|||||||
testMatch: ['**/*.test.itg.ts'],
|
testMatch: ['**/*.test.itg.ts'],
|
||||||
testTimeout: 1800000, // 30 minutes
|
testTimeout: 1800000, // 30 minutes
|
||||||
transform: {
|
transform: {
|
||||||
'^.+\\.ts$': 'ts-jest'
|
'^.+\\.ts$': [
|
||||||
|
'ts-jest',
|
||||||
|
{
|
||||||
|
useESM: true
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
moduleNameMapper: {
|
moduleNameMapper: {
|
||||||
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs'
|
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs',
|
||||||
|
'^(\\.{1,2}/.*)\\.js$': '$1'
|
||||||
},
|
},
|
||||||
testResultsProcessor: '<rootDir>/__tests__/testResultsProcessor.js',
|
extensionsToTreatAsEsm: ['.ts'],
|
||||||
|
testResultsProcessor: '<rootDir>/__tests__/testResultsProcessor.cjs',
|
||||||
verbose: false
|
verbose: false
|
||||||
};
|
};
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
"name": "@docker/actions-toolkit",
|
"name": "@docker/actions-toolkit",
|
||||||
"version": "0.0.0+unknown",
|
"version": "0.0.0+unknown",
|
||||||
"description": "Toolkit for Docker (GitHub) Actions",
|
"description": "Toolkit for Docker (GitHub) Actions",
|
||||||
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "tsc",
|
"build": "tsc",
|
||||||
"lint": "yarn run prettier && yarn run eslint",
|
"lint": "yarn run prettier && yarn run eslint",
|
||||||
@@ -12,9 +13,9 @@
|
|||||||
"prettier:fix": "prettier --write \"./**/*.ts\"",
|
"prettier:fix": "prettier --write \"./**/*.ts\"",
|
||||||
"test": "jest",
|
"test": "jest",
|
||||||
"test:coverage": "jest --coverage",
|
"test:coverage": "jest --coverage",
|
||||||
"test:itg": "jest -c jest.config.itg.js --runInBand",
|
"test:itg": "jest -c jest.config.itg.cjs --runInBand",
|
||||||
"test:itg-list": "jest -c jest.config.itg.js --listTests",
|
"test:itg-list": "jest -c jest.config.itg.cjs --listTests",
|
||||||
"test:itg-coverage": "jest -c jest.config.itg.js --coverage --runInBand"
|
"test:itg-coverage": "jest -c jest.config.itg.cjs --coverage --runInBand"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|||||||
@@ -17,12 +17,12 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
|
|
||||||
import {Buildx} from '../buildx/buildx';
|
import {Buildx} from '../buildx/buildx.js';
|
||||||
import {Builder} from '../buildx/builder';
|
import {Builder} from '../buildx/builder.js';
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {Config} from './config';
|
import {Config} from './config.js';
|
||||||
|
|
||||||
import {BuilderInfo, NodeInfo} from '../types/buildx/builder';
|
import {BuilderInfo, NodeInfo} from '../types/buildx/builder.js';
|
||||||
|
|
||||||
export interface BuildKitOpts {
|
export interface BuildKitOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
|
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
|
|
||||||
export class Config {
|
export class Config {
|
||||||
public resolveFromString(s: string): string {
|
public resolveFromString(s: string): string {
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitRef, GitURL, GitURLFragment, URLUserInfo} from '../types/buildkit/git';
|
import {GitRef, GitURL, GitURLFragment, URLUserInfo} from '../types/buildkit/git.js';
|
||||||
|
|
||||||
export class Git {
|
export class Git {
|
||||||
private static protoRegexp = new RegExp('^[a-zA-Z0-9]+://');
|
private static protoRegexp = new RegExp('^[a-zA-Z0-9]+://');
|
||||||
|
|||||||
@@ -18,15 +18,15 @@ import fs from 'fs';
|
|||||||
import path from 'path';
|
import path from 'path';
|
||||||
import {parse} from 'csv-parse/sync';
|
import {parse} from 'csv-parse/sync';
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {ExecOptions} from '@actions/exec';
|
import {ExecOptions} from '@actions/exec';
|
||||||
import {AttestEntry, BakeDefinition, CacheEntry, ExportEntry, SecretEntry, SSHEntry} from '../types/buildx/bake';
|
import {AttestEntry, BakeDefinition, CacheEntry, ExportEntry, SecretEntry, SSHEntry} from '../types/buildx/bake.js';
|
||||||
import {BuildMetadata} from '../types/buildx/build';
|
import {BuildMetadata} from '../types/buildx/build.js';
|
||||||
import {VertexWarning} from '../types/buildkit/client';
|
import {VertexWarning} from '../types/buildkit/client.js';
|
||||||
|
|
||||||
export interface BakeOpts {
|
export interface BakeOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -19,14 +19,14 @@ import path from 'path';
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import {parse} from 'csv-parse/sync';
|
import {parse} from 'csv-parse/sync';
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {BuildMetadata} from '../types/buildx/build';
|
import {BuildMetadata} from '../types/buildx/build.js';
|
||||||
import {VertexWarning} from '../types/buildkit/client';
|
import {VertexWarning} from '../types/buildkit/client.js';
|
||||||
import {ProvenancePredicate} from '../types/intoto/slsa_provenance/v0.2/provenance';
|
import {ProvenancePredicate} from '../types/intoto/slsa_provenance/v0.2/provenance.js';
|
||||||
|
|
||||||
export interface BuildOpts {
|
export interface BuildOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -16,10 +16,10 @@
|
|||||||
|
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
|
|
||||||
import {BuilderInfo, Device, GCPolicy, NodeInfo} from '../types/buildx/builder';
|
import {BuilderInfo, Device, GCPolicy, NodeInfo} from '../types/buildx/builder.js';
|
||||||
|
|
||||||
export interface BuilderOpts {
|
export interface BuilderOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -19,16 +19,16 @@ import path from 'path';
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
|
|
||||||
import {Git} from '../buildkit/git';
|
import {Git} from '../buildkit/git.js';
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {VertexWarning} from '../types/buildkit/client';
|
import {VertexWarning} from '../types/buildkit/client.js';
|
||||||
import {GitURL} from '../types/buildkit/git';
|
import {GitURL} from '../types/buildkit/git.js';
|
||||||
import {Cert, LocalRefsOpts, LocalRefsResponse, LocalState} from '../types/buildx/buildx';
|
import {Cert, LocalRefsOpts, LocalRefsResponse, LocalState} from '../types/buildx/buildx.js';
|
||||||
import {GitHubAnnotation} from '../types/github';
|
import {GitHubAnnotation} from '../types/github.js';
|
||||||
|
|
||||||
export interface BuildxOpts {
|
export interface BuildxOpts {
|
||||||
standalone?: boolean;
|
standalone?: boolean;
|
||||||
|
|||||||
@@ -21,14 +21,14 @@ import path from 'path';
|
|||||||
import {Readable, Writable} from 'stream';
|
import {Readable, Writable} from 'stream';
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {ExportOpts, ExportResponse, InspectOpts, InspectResponse, Summaries} from '../types/buildx/history';
|
import {ExportOpts, ExportResponse, InspectOpts, InspectResponse, Summaries} from '../types/buildx/history.js';
|
||||||
|
|
||||||
export interface HistoryOpts {
|
export interface HistoryOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -14,13 +14,13 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
|
|
||||||
import {Manifest as ImageToolsManifest} from '../types/buildx/imagetools';
|
import {Manifest as ImageToolsManifest} from '../types/buildx/imagetools.js';
|
||||||
import {Image} from '../types/oci/config';
|
import {Image} from '../types/oci/config.js';
|
||||||
import {Descriptor, Platform} from '../types/oci/descriptor';
|
import {Descriptor, Platform} from '../types/oci/descriptor.js';
|
||||||
import {Digest} from '../types/oci/digest';
|
import {Digest} from '../types/oci/digest.js';
|
||||||
|
|
||||||
export interface ImageToolsOpts {
|
export interface ImageToolsOpts {
|
||||||
buildx?: Buildx;
|
buildx?: Buildx;
|
||||||
|
|||||||
@@ -22,17 +22,17 @@ import * as tc from '@actions/tool-cache';
|
|||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import * as util from 'util';
|
import * as util from 'util';
|
||||||
|
|
||||||
import {Buildx} from './buildx';
|
import {Buildx} from './buildx.js';
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {Git} from '../git';
|
import {Git} from '../git.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {DownloadVersion} from '../types/buildx/buildx';
|
import {DownloadVersion} from '../types/buildx/buildx.js';
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
|
|
||||||
export interface InstallOpts {
|
export interface InstallOpts {
|
||||||
standalone?: boolean;
|
standalone?: boolean;
|
||||||
|
|||||||
@@ -16,8 +16,8 @@
|
|||||||
|
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
|
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
|
|
||||||
export interface ComposeOpts {
|
export interface ComposeOpts {
|
||||||
standalone?: boolean;
|
standalone?: boolean;
|
||||||
|
|||||||
@@ -22,13 +22,13 @@ import * as tc from '@actions/tool-cache';
|
|||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import * as util from 'util';
|
import * as util from 'util';
|
||||||
|
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Docker} from '../docker/docker';
|
import {Docker} from '../docker/docker.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
|
|
||||||
import {DownloadVersion} from '../types/compose/compose';
|
import {DownloadVersion} from '../types/compose/compose.js';
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
|
|
||||||
export interface InstallOpts {
|
export interface InstallOpts {
|
||||||
standalone?: boolean;
|
standalone?: boolean;
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import path from 'path';
|
|||||||
import * as tmp from 'tmp';
|
import * as tmp from 'tmp';
|
||||||
import * as github from '@actions/github';
|
import * as github from '@actions/github';
|
||||||
|
|
||||||
import {GitHub} from './github';
|
import {GitHub} from './github.js';
|
||||||
|
|
||||||
export class Context {
|
export class Context {
|
||||||
private static readonly _tmpDir = fs.mkdtempSync(path.join(Context.ensureDirExists(process.env.RUNNER_TEMP || os.tmpdir()), 'docker-actions-toolkit-'));
|
private static readonly _tmpDir = fs.mkdtempSync(path.join(Context.ensureDirExists(process.env.RUNNER_TEMP || os.tmpdir()), 'docker-actions-toolkit-'));
|
||||||
|
|||||||
@@ -17,9 +17,9 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import {BUNDLE_V03_MEDIA_TYPE, SerializedBundle} from '@sigstore/bundle';
|
import {BUNDLE_V03_MEDIA_TYPE, SerializedBundle} from '@sigstore/bundle';
|
||||||
|
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import {MEDIATYPE_EMPTY_JSON_V1} from '../types/oci/mediatype';
|
import {MEDIATYPE_EMPTY_JSON_V1} from '../types/oci/mediatype.js';
|
||||||
|
|
||||||
export interface CosignOpts {
|
export interface CosignOpts {
|
||||||
binPath?: string;
|
binPath?: string;
|
||||||
|
|||||||
@@ -25,17 +25,17 @@ import {toSignedEntity, toTrustMaterial, Verifier} from '@sigstore/verify';
|
|||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import * as util from 'util';
|
import * as util from 'util';
|
||||||
|
|
||||||
import {Buildx} from '../buildx/buildx';
|
import {Buildx} from '../buildx/buildx.js';
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {Git} from '../git';
|
import {Git} from '../git.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {DownloadVersion} from '../types/cosign/cosign';
|
import {DownloadVersion} from '../types/cosign/cosign.js';
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
import {dockerfileContent} from './dockerfile';
|
import {dockerfileContent} from './dockerfile.js';
|
||||||
|
|
||||||
export interface DownloadOpts {
|
export interface DownloadOpts {
|
||||||
version: string;
|
version: string;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
|
|
||||||
export const setupDockerWinPs1 = (): string => {
|
export const setupDockerWinPs1 = (): string => {
|
||||||
return get('docker-setup-win.ps1', setupDockerWinPs1Data);
|
return get('docker-setup-win.ps1', setupDockerWinPs1Data);
|
||||||
|
|||||||
@@ -21,12 +21,12 @@ import * as core from '@actions/core';
|
|||||||
import {ExecOptions, ExecOutput} from '@actions/exec';
|
import {ExecOptions, ExecOutput} from '@actions/exec';
|
||||||
import * as io from '@actions/io';
|
import * as io from '@actions/io';
|
||||||
|
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {ConfigFile, ContextInfo} from '../types/docker/docker';
|
import {ConfigFile, ContextInfo} from '../types/docker/docker.js';
|
||||||
|
|
||||||
export class Docker {
|
export class Docker {
|
||||||
static get configDir(): string {
|
static get configDir(): string {
|
||||||
|
|||||||
@@ -25,18 +25,18 @@ import * as core from '@actions/core';
|
|||||||
import * as io from '@actions/io';
|
import * as io from '@actions/io';
|
||||||
import * as tc from '@actions/tool-cache';
|
import * as tc from '@actions/tool-cache';
|
||||||
|
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Docker} from './docker';
|
import {Docker} from './docker.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {Regctl} from '../regclient/regctl';
|
import {Regctl} from '../regclient/regctl.js';
|
||||||
import {Undock} from '../undock/undock';
|
import {Undock} from '../undock/undock.js';
|
||||||
import {Util} from '../util';
|
import {Util} from '../util.js';
|
||||||
|
|
||||||
import {limaYamlData, dockerServiceLogsPs1, setupDockerWinPs1} from './assets';
|
import {limaYamlData, dockerServiceLogsPs1, setupDockerWinPs1} from './assets.js';
|
||||||
|
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
import {Image} from '../types/oci/config';
|
import {Image} from '../types/oci/config.js';
|
||||||
|
|
||||||
export interface InstallSourceImage {
|
export interface InstallSourceImage {
|
||||||
type: 'image';
|
type: 'image';
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import * as core from '@actions/core';
|
|||||||
import * as httpm from '@actions/http-client';
|
import * as httpm from '@actions/http-client';
|
||||||
import {HttpCodes} from '@actions/http-client';
|
import {HttpCodes} from '@actions/http-client';
|
||||||
|
|
||||||
import {RepositoryRequest, RepositoryResponse, RepositoryTagsRequest, RepositoryTagsResponse, TokenRequest, TokenResponse, UpdateRepoDescriptionRequest} from './types/dockerhub';
|
import {RepositoryRequest, RepositoryResponse, RepositoryTagsRequest, RepositoryTagsResponse, TokenRequest, TokenResponse, UpdateRepoDescriptionRequest} from './types/dockerhub.js';
|
||||||
|
|
||||||
export interface DockerHubOpts {
|
export interface DockerHubOpts {
|
||||||
credentials: TokenRequest;
|
credentials: TokenRequest;
|
||||||
|
|||||||
@@ -18,11 +18,11 @@ import * as core from '@actions/core';
|
|||||||
import {Octokit} from '@octokit/core';
|
import {Octokit} from '@octokit/core';
|
||||||
import {restEndpointMethods} from '@octokit/plugin-rest-endpoint-methods';
|
import {restEndpointMethods} from '@octokit/plugin-rest-endpoint-methods';
|
||||||
|
|
||||||
import {Exec} from './exec';
|
import {Exec} from './exec.js';
|
||||||
import {GitHub} from './github';
|
import {GitHub} from './github.js';
|
||||||
import {Context} from '@actions/github/lib/context';
|
import {Context} from '@actions/github/lib/context';
|
||||||
|
|
||||||
import {Context as GitContext} from './types/git';
|
import {Context as GitContext} from './types/git.js';
|
||||||
|
|
||||||
export class Git {
|
export class Git {
|
||||||
public static async context(): Promise<GitContext> {
|
public static async context(): Promise<GitContext> {
|
||||||
|
|||||||
@@ -36,9 +36,9 @@ import {TransferProgressEvent} from '@azure/core-rest-pipeline';
|
|||||||
import {BlobClient, BlobHTTPHeaders} from '@azure/storage-blob';
|
import {BlobClient, BlobHTTPHeaders} from '@azure/storage-blob';
|
||||||
import {jwtDecode, JwtPayload} from 'jwt-decode';
|
import {jwtDecode, JwtPayload} from 'jwt-decode';
|
||||||
|
|
||||||
import {Util} from './util';
|
import {Util} from './util.js';
|
||||||
|
|
||||||
import {BuildSummaryOpts, GitHubActionsRuntimeToken, GitHubActionsRuntimeTokenAC, GitHubContentOpts, GitHubRelease, GitHubRepo, UploadArtifactOpts, UploadArtifactResponse} from './types/github';
|
import {BuildSummaryOpts, GitHubActionsRuntimeToken, GitHubActionsRuntimeTokenAC, GitHubContentOpts, GitHubRelease, GitHubRepo, UploadArtifactOpts, UploadArtifactResponse} from './types/github.js';
|
||||||
|
|
||||||
export interface GitHubOpts {
|
export interface GitHubOpts {
|
||||||
token?: string;
|
token?: string;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
|
|
||||||
import {Cache} from './cache';
|
import {Cache} from './cache.js';
|
||||||
|
|
||||||
const isPost = !!process.env['STATE_isPost'];
|
const isPost = !!process.env['STATE_isPost'];
|
||||||
if (!isPost) {
|
if (!isPost) {
|
||||||
|
|||||||
@@ -20,13 +20,13 @@ import * as path from 'path';
|
|||||||
import {Readable} from 'stream';
|
import {Readable} from 'stream';
|
||||||
import * as tar from 'tar-stream';
|
import * as tar from 'tar-stream';
|
||||||
|
|
||||||
import {Archive, LoadArchiveOpts} from '../types/oci/oci';
|
import {Archive, LoadArchiveOpts} from '../types/oci/oci.js';
|
||||||
import {Index} from '../types/oci';
|
import {Index} from '../types/oci/index.js';
|
||||||
import {Platform} from '../types/oci/descriptor';
|
import {Platform} from '../types/oci/descriptor.js';
|
||||||
import {Manifest} from '../types/oci/manifest';
|
import {Manifest} from '../types/oci/manifest.js';
|
||||||
import {Image} from '../types/oci/config';
|
import {Image} from '../types/oci/config.js';
|
||||||
import {IMAGE_BLOBS_DIR_V1, IMAGE_INDEX_FILE_V1, IMAGE_LAYOUT_FILE_V1, ImageLayout} from '../types/oci/layout';
|
import {IMAGE_BLOBS_DIR_V1, IMAGE_INDEX_FILE_V1, IMAGE_LAYOUT_FILE_V1, ImageLayout} from '../types/oci/layout.js';
|
||||||
import {MEDIATYPE_IMAGE_INDEX_V1, MEDIATYPE_IMAGE_MANIFEST_V1} from '../types/oci/mediatype';
|
import {MEDIATYPE_IMAGE_INDEX_V1, MEDIATYPE_IMAGE_MANIFEST_V1} from '../types/oci/mediatype.js';
|
||||||
|
|
||||||
export class OCI {
|
export class OCI {
|
||||||
public static defaultPlatform(): Platform {
|
public static defaultPlatform(): Platform {
|
||||||
|
|||||||
@@ -22,12 +22,12 @@ import * as tc from '@actions/tool-cache';
|
|||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import * as util from 'util';
|
import * as util from 'util';
|
||||||
|
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
|
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
import {DownloadVersion} from '../types/regclient/regclient';
|
import {DownloadVersion} from '../types/regclient/regclient.js';
|
||||||
|
|
||||||
export interface InstallOpts {
|
export interface InstallOpts {
|
||||||
githubToken?: string;
|
githubToken?: string;
|
||||||
|
|||||||
@@ -17,9 +17,9 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
|
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
|
|
||||||
import {Manifest} from '../types/oci/manifest';
|
import {Manifest} from '../types/oci/manifest.js';
|
||||||
|
|
||||||
export interface RegctlOpts {
|
export interface RegctlOpts {
|
||||||
binPath?: string;
|
binPath?: string;
|
||||||
|
|||||||
@@ -22,13 +22,13 @@ import * as core from '@actions/core';
|
|||||||
import {bundleFromJSON, bundleToJSON} from '@sigstore/bundle';
|
import {bundleFromJSON, bundleToJSON} from '@sigstore/bundle';
|
||||||
import {Artifact, Bundle, CIContextProvider, DSSEBundleBuilder, FulcioSigner, RekorWitness, TSAWitness, Witness} from '@sigstore/sign';
|
import {Artifact, Bundle, CIContextProvider, DSSEBundleBuilder, FulcioSigner, RekorWitness, TSAWitness, Witness} from '@sigstore/sign';
|
||||||
|
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {Cosign} from '../cosign/cosign';
|
import {Cosign} from '../cosign/cosign.js';
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
import {ImageTools} from '../buildx/imagetools';
|
import {ImageTools} from '../buildx/imagetools.js';
|
||||||
|
|
||||||
import {MEDIATYPE_PAYLOAD as INTOTO_MEDIATYPE_PAYLOAD, Subject} from '../types/intoto/intoto';
|
import {MEDIATYPE_PAYLOAD as INTOTO_MEDIATYPE_PAYLOAD, Subject} from '../types/intoto/intoto.js';
|
||||||
import {
|
import {
|
||||||
Endpoints,
|
Endpoints,
|
||||||
FULCIO_URL,
|
FULCIO_URL,
|
||||||
@@ -44,7 +44,7 @@ import {
|
|||||||
VerifySignedArtifactsResult,
|
VerifySignedArtifactsResult,
|
||||||
VerifySignedManifestsOpts,
|
VerifySignedManifestsOpts,
|
||||||
VerifySignedManifestsResult
|
VerifySignedManifestsResult
|
||||||
} from '../types/sigstore/sigstore';
|
} from '../types/sigstore/sigstore.js';
|
||||||
|
|
||||||
export interface SigstoreOpts {
|
export interface SigstoreOpts {
|
||||||
cosign?: Cosign;
|
cosign?: Cosign;
|
||||||
|
|||||||
@@ -14,22 +14,22 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHub} from './github';
|
import {GitHub} from './github.js';
|
||||||
import {Buildx} from './buildx/buildx';
|
import {Buildx} from './buildx/buildx.js';
|
||||||
import {Build as BuildxBuild} from './buildx/build';
|
import {Build as BuildxBuild} from './buildx/build.js';
|
||||||
import {Bake as BuildxBake} from './buildx/bake';
|
import {Bake as BuildxBake} from './buildx/bake.js';
|
||||||
import {Install as BuildxInstall} from './buildx/install';
|
import {Install as BuildxInstall} from './buildx/install.js';
|
||||||
import {Builder} from './buildx/builder';
|
import {Builder} from './buildx/builder.js';
|
||||||
import {BuildKit} from './buildkit/buildkit';
|
import {BuildKit} from './buildkit/buildkit.js';
|
||||||
import {Compose} from './compose/compose';
|
import {Compose} from './compose/compose.js';
|
||||||
import {Install as ComposeInstall} from './compose/install';
|
import {Install as ComposeInstall} from './compose/install.js';
|
||||||
import {Cosign} from './cosign/cosign';
|
import {Cosign} from './cosign/cosign.js';
|
||||||
import {Install as CosignInstall} from './cosign/install';
|
import {Install as CosignInstall} from './cosign/install.js';
|
||||||
import {Regctl} from './regclient/regctl';
|
import {Regctl} from './regclient/regctl.js';
|
||||||
import {Install as RegctlInstall} from './regclient/install';
|
import {Install as RegctlInstall} from './regclient/install.js';
|
||||||
import {Undock} from './undock/undock';
|
import {Undock} from './undock/undock.js';
|
||||||
import {Install as UndockInstall} from './undock/install';
|
import {Install as UndockInstall} from './undock/install.js';
|
||||||
import {Sigstore} from './sigstore/sigstore';
|
import {Sigstore} from './sigstore/sigstore.js';
|
||||||
|
|
||||||
export interface ToolkitOpts {
|
export interface ToolkitOpts {
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Digest} from '../oci/digest';
|
import {Digest} from '../oci/digest.js';
|
||||||
import {ProgressGroup, Range, SourceInfo} from './ops';
|
import {ProgressGroup, Range, SourceInfo} from './ops.js';
|
||||||
|
|
||||||
// https://github.com/moby/buildkit/blob/v0.14.0/client/graph.go#L10-L19
|
// https://github.com/moby/buildkit/blob/v0.14.0/client/graph.go#L10-L19
|
||||||
export interface Vertex {
|
export interface Vertex {
|
||||||
|
|||||||
@@ -14,10 +14,10 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Descriptor} from '../oci/descriptor';
|
import {Descriptor} from '../oci/descriptor.js';
|
||||||
import {Digest} from '../oci/digest';
|
import {Digest} from '../oci/digest.js';
|
||||||
import {ProgressGroup, Range, SourceInfo} from './ops';
|
import {ProgressGroup, Range, SourceInfo} from './ops.js';
|
||||||
import {RpcStatus} from './rpc';
|
import {RpcStatus} from './rpc.js';
|
||||||
|
|
||||||
// https://github.com/moby/buildkit/blob/v0.14.0/api/services/control/control.pb.go#L1504-L1525
|
// https://github.com/moby/buildkit/blob/v0.14.0/api/services/control/control.pb.go#L1504-L1525
|
||||||
export interface BuildHistoryRecord {
|
export interface BuildHistoryRecord {
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHubContentOpts} from '../github';
|
import {GitHubContentOpts} from '../github.js';
|
||||||
|
|
||||||
export interface Cert {
|
export interface Cert {
|
||||||
cacert?: string;
|
cacert?: string;
|
||||||
|
|||||||
@@ -14,9 +14,9 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Versioned} from '../oci/versioned';
|
import {Versioned} from '../oci/versioned.js';
|
||||||
import {Descriptor} from '../oci/descriptor';
|
import {Descriptor} from '../oci/descriptor.js';
|
||||||
import {Digest} from '../oci/digest';
|
import {Digest} from '../oci/digest.js';
|
||||||
|
|
||||||
// https://github.com/docker/buildx/blob/62857022a08552bee5cad0c3044a9a3b185f0b32/util/imagetools/printers.go#L109-L123
|
// https://github.com/docker/buildx/blob/62857022a08552bee5cad0c3044a9a3b185f0b32/util/imagetools/printers.go#L109-L123
|
||||||
export interface Manifest extends Versioned {
|
export interface Manifest extends Versioned {
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHubContentOpts} from '../github';
|
import {GitHubContentOpts} from '../github.js';
|
||||||
|
|
||||||
export interface DownloadVersion {
|
export interface DownloadVersion {
|
||||||
key: string;
|
key: string;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHubContentOpts} from '../github';
|
import {GitHubContentOpts} from '../github.js';
|
||||||
|
|
||||||
export interface DownloadVersion {
|
export interface DownloadVersion {
|
||||||
version: string;
|
version: string;
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ import {AnnotationProperties} from '@actions/core';
|
|||||||
import {components as OctoOpenApiTypes} from '@octokit/openapi-types';
|
import {components as OctoOpenApiTypes} from '@octokit/openapi-types';
|
||||||
import {JwtPayload} from 'jwt-decode';
|
import {JwtPayload} from 'jwt-decode';
|
||||||
|
|
||||||
import {BakeDefinition} from './buildx/bake';
|
import {BakeDefinition} from './buildx/bake.js';
|
||||||
import {ExportResponse} from './buildx/history';
|
import {ExportResponse} from './buildx/history.js';
|
||||||
|
|
||||||
export interface GitHubRelease {
|
export interface GitHubRelease {
|
||||||
id: number;
|
id: number;
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Digest} from './digest';
|
import {Digest} from './digest.js';
|
||||||
import {Platform} from './descriptor';
|
import {Platform} from './descriptor.js';
|
||||||
|
|
||||||
export interface ImageConfig {
|
export interface ImageConfig {
|
||||||
User?: string;
|
User?: string;
|
||||||
|
|||||||
@@ -14,9 +14,9 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Digest} from './digest';
|
import {Digest} from './digest.js';
|
||||||
|
|
||||||
import {MEDIATYPE_EMPTY_JSON_V1} from './mediatype';
|
import {MEDIATYPE_EMPTY_JSON_V1} from './mediatype.js';
|
||||||
|
|
||||||
export interface Descriptor {
|
export interface Descriptor {
|
||||||
mediaType: string;
|
mediaType: string;
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Versioned} from './versioned';
|
import {Versioned} from './versioned.js';
|
||||||
import {Descriptor} from './descriptor';
|
import {Descriptor} from './descriptor.js';
|
||||||
|
|
||||||
export interface Index extends Versioned {
|
export interface Index extends Versioned {
|
||||||
mediaType?: string;
|
mediaType?: string;
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Descriptor} from './descriptor';
|
import {Descriptor} from './descriptor.js';
|
||||||
import {Versioned} from './versioned';
|
import {Versioned} from './versioned.js';
|
||||||
|
|
||||||
export interface Manifest extends Versioned {
|
export interface Manifest extends Versioned {
|
||||||
mediaType?: string;
|
mediaType?: string;
|
||||||
|
|||||||
@@ -14,10 +14,10 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Index} from './index';
|
import {Index} from './index.js';
|
||||||
import {ImageLayout} from './layout';
|
import {ImageLayout} from './layout.js';
|
||||||
import {Manifest} from './manifest';
|
import {Manifest} from './manifest.js';
|
||||||
import {Image} from './config';
|
import {Image} from './config.js';
|
||||||
|
|
||||||
export interface LoadArchiveOpts {
|
export interface LoadArchiveOpts {
|
||||||
file: string;
|
file: string;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHubContentOpts} from '../github';
|
import {GitHubContentOpts} from '../github.js';
|
||||||
|
|
||||||
export interface DownloadVersion {
|
export interface DownloadVersion {
|
||||||
version: string;
|
version: string;
|
||||||
|
|||||||
@@ -16,8 +16,8 @@
|
|||||||
|
|
||||||
import type {SerializedBundle} from '@sigstore/bundle';
|
import type {SerializedBundle} from '@sigstore/bundle';
|
||||||
|
|
||||||
import {Subject} from '../intoto/intoto';
|
import {Subject} from '../intoto/intoto.js';
|
||||||
import {Platform} from '../oci/descriptor';
|
import {Platform} from '../oci/descriptor.js';
|
||||||
|
|
||||||
export const FULCIO_URL = 'https://fulcio.sigstore.dev';
|
export const FULCIO_URL = 'https://fulcio.sigstore.dev';
|
||||||
export const REKOR_URL = 'https://rekor.sigstore.dev';
|
export const REKOR_URL = 'https://rekor.sigstore.dev';
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {GitHubContentOpts} from '../github';
|
import {GitHubContentOpts} from '../github.js';
|
||||||
|
|
||||||
export interface DownloadVersion {
|
export interface DownloadVersion {
|
||||||
version: string;
|
version: string;
|
||||||
|
|||||||
@@ -22,12 +22,12 @@ import * as tc from '@actions/tool-cache';
|
|||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
import * as util from 'util';
|
import * as util from 'util';
|
||||||
|
|
||||||
import {Cache} from '../cache';
|
import {Cache} from '../cache.js';
|
||||||
import {Context} from '../context';
|
import {Context} from '../context.js';
|
||||||
import {GitHub} from '../github';
|
import {GitHub} from '../github.js';
|
||||||
|
|
||||||
import {GitHubRelease} from '../types/github';
|
import {GitHubRelease} from '../types/github.js';
|
||||||
import {DownloadVersion} from '../types/undock/undock';
|
import {DownloadVersion} from '../types/undock/undock.js';
|
||||||
|
|
||||||
export interface InstallOpts {
|
export interface InstallOpts {
|
||||||
githubToken?: string;
|
githubToken?: string;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as semver from 'semver';
|
import * as semver from 'semver';
|
||||||
|
|
||||||
import {Exec} from '../exec';
|
import {Exec} from '../exec.js';
|
||||||
|
|
||||||
export interface UndockOpts {
|
export interface UndockOpts {
|
||||||
binPath?: string;
|
binPath?: string;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
|
"module": "es2020",
|
||||||
|
"moduleResolution": "bundler",
|
||||||
"esModuleInterop": true,
|
"esModuleInterop": true,
|
||||||
"target": "es6",
|
|
||||||
"module": "node16",
|
|
||||||
"isolatedModules": true,
|
"isolatedModules": true,
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"declaration": true,
|
"declaration": true,
|
||||||
@@ -14,6 +14,7 @@
|
|||||||
"noImplicitAny": false,
|
"noImplicitAny": false,
|
||||||
"resolveJsonModule": true,
|
"resolveJsonModule": true,
|
||||||
"useUnknownInCatchVariables": false,
|
"useUnknownInCatchVariables": false,
|
||||||
|
"skipLibCheck": true,
|
||||||
},
|
},
|
||||||
"exclude": [
|
"exclude": [
|
||||||
"./__mocks__/**/*",
|
"./__mocks__/**/*",
|
||||||
|
|||||||
Reference in New Issue
Block a user