mirror of
https://gitea.com/actions/setup-java.git
synced 2024-09-20 20:00:41 +02:00
b53500dabc
* actions/setup-java@v2 - Support different distributions (#132) * Implement support for custom vendors in setup-java * minor improvements * minor refactoring * Add unit tests and e2e tests * Update documentation for setup-java@v2 release * minor improvements * regenerate dist * fix comments * resolve comments * resolve comments * fix tests * Update README.md Co-authored-by: George Adams <george.adams@microsoft.com> * Apply suggestions from code review Co-authored-by: Konrad Pabjan <konradpabjan@github.com> * fix minor nitpicks * handle 4th digit * pull latest main * Update README.md * rename adoptium to adopt * rename adoptium to adopt * rename adoptium to adopt * Update README.md * make java-version and distribution required for action * update readme * fix tests * fix e2e tests Co-authored-by: George Adams <george.adams@microsoft.com> Co-authored-by: Konrad Pabjan <konradpabjan@github.com> * Add "overwrite-settings" input parameter (#136) * add overwrite-settings parameter * fix e2e tests * print debug * fix e2e tests * add comment * remove comment * Add "Contents/Home" postfix on macOS if provider creates it (#139) * Update e2e-versions.yml * Update e2e-versions.yml * implement fix * Update e2e-versions.yml * Update installer.ts * fix filter logic * Update e2e-versions.yml * remove extra logic * Update e2e-versions.yml * Add check-latest flag (#141) * add changes for check-latest * run prerelease script * resolving comments * fixing tests * fix spelling * improve core.info messages * run format * run prerelease * change version to fix test * resolve comment for check-latest * Update README.md * added hosted tool cache section * Apply suggestions from code review Co-authored-by: Maxim Lobanov <v-malob@microsoft.com> Co-authored-by: Konrad Pabjan <konradpabjan@github.com> * Avoid "+" sign in Java path in v2-preview (#145) * try to handle _ versions * more logs * more debug * test 1 * more fixes * fix typo * Update e2e-versions.yml * add unit-tests * remove debug info from tests * debug pre-cached versions * change e2e tests to ubuntu-latest * update npm licenses Co-authored-by: George Adams <george.adams@microsoft.com> Co-authored-by: Konrad Pabjan <konradpabjan@github.com> Co-authored-by: Dmitry Shibanov <dmitry-shibanov@github.com>
47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
import * as fs from 'fs';
|
|
import * as path from 'path';
|
|
import * as io from '@actions/io';
|
|
import * as exec from '@actions/exec';
|
|
import * as util from './util';
|
|
import { ExecOptions } from '@actions/exec/lib/interfaces';
|
|
|
|
export const PRIVATE_KEY_FILE = path.join(util.getTempDir(), 'private-key.asc');
|
|
|
|
const PRIVATE_KEY_FINGERPRINT_REGEX = /\w{40}/;
|
|
|
|
export async function importKey(privateKey: string) {
|
|
fs.writeFileSync(PRIVATE_KEY_FILE, privateKey, {
|
|
encoding: 'utf-8',
|
|
flag: 'w'
|
|
});
|
|
|
|
let output = '';
|
|
|
|
const options: ExecOptions = {
|
|
silent: true,
|
|
listeners: {
|
|
stdout: (data: Buffer) => {
|
|
output += data.toString();
|
|
}
|
|
}
|
|
};
|
|
|
|
await exec.exec(
|
|
'gpg',
|
|
['--batch', '--import-options', 'import-show', '--import', PRIVATE_KEY_FILE],
|
|
options
|
|
);
|
|
|
|
await io.rmRF(PRIVATE_KEY_FILE);
|
|
|
|
const match = output.match(PRIVATE_KEY_FINGERPRINT_REGEX);
|
|
return match && match[0];
|
|
}
|
|
|
|
export async function deleteKey(keyFingerprint: string) {
|
|
await exec.exec('gpg', ['--batch', '--yes', '--delete-secret-keys', keyFingerprint], {
|
|
silent: true
|
|
});
|
|
await exec.exec('gpg', ['--batch', '--yes', '--delete-keys', keyFingerprint], { silent: true });
|
|
}
|