mirror of
https://github.com/peaceiris/actions-gh-pages.git
synced 2025-07-16 07:03:13 +08:00
test: skipOnFork()
This commit is contained in:
parent
5c097c0f86
commit
6f9a5b7a66
@ -5,7 +5,8 @@ import {
|
||||
getWorkDirName,
|
||||
createWorkDir,
|
||||
addNoJekyll,
|
||||
addCNAME
|
||||
addCNAME,
|
||||
skipOnFork
|
||||
} from '../src/utils';
|
||||
|
||||
beforeEach(() => {
|
||||
@ -203,3 +204,30 @@ describe('addCNAME()', () => {
|
||||
fs.unlinkSync(filepath);
|
||||
});
|
||||
});
|
||||
|
||||
describe('skipOnFork()', () => {
|
||||
test('return false on upstream', async () => {
|
||||
const test = await skipOnFork(false, 'token', '', '');
|
||||
expect(test).toBeFalsy();
|
||||
});
|
||||
|
||||
test('return false on fork with github_token', async () => {
|
||||
const test = await skipOnFork(true, 'token', '', '');
|
||||
expect(test).toBeFalsy();
|
||||
});
|
||||
|
||||
test('return false on fork with deploy_key', async () => {
|
||||
const test = await skipOnFork(true, '', 'deploy_key', '');
|
||||
expect(test).toBeFalsy();
|
||||
});
|
||||
|
||||
test('return false on fork with personal_token', async () => {
|
||||
const test = await skipOnFork(true, '', '', 'personal_token');
|
||||
expect(test).toBeFalsy();
|
||||
});
|
||||
|
||||
test('return true on fork with empty deploy_key or personal_token', async () => {
|
||||
const test = await skipOnFork(true, '', '', '');
|
||||
expect(test).toBeTruthy();
|
||||
});
|
||||
});
|
||||
|
@ -1,3 +1,4 @@
|
||||
import {context} from '@actions/github';
|
||||
import * as core from '@actions/core';
|
||||
import * as exec from '@actions/exec';
|
||||
import {Inputs} from './interfaces';
|
||||
@ -11,7 +12,11 @@ export async function run(): Promise<void> {
|
||||
const inps: Inputs = getInputs();
|
||||
showInputs(inps);
|
||||
|
||||
const isForkRepository =
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
(context.payload as any).repository.fork === 'true';
|
||||
const isSkipOnFork = await skipOnFork(
|
||||
isForkRepository,
|
||||
inps.GithubToken,
|
||||
inps.DeployKey,
|
||||
inps.PersonalToken
|
||||
|
@ -1,4 +1,3 @@
|
||||
import {context} from '@actions/github';
|
||||
import * as core from '@actions/core';
|
||||
import * as io from '@actions/io';
|
||||
import path from 'path';
|
||||
@ -65,20 +64,17 @@ export async function addCNAME(
|
||||
}
|
||||
|
||||
export async function skipOnFork(
|
||||
isForkRepository: boolean,
|
||||
githubToken: string,
|
||||
deployKey: string,
|
||||
personalToken: string
|
||||
): Promise<boolean> {
|
||||
const isForkRepository =
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
(context.payload as any).repository.fork === 'true';
|
||||
|
||||
if (isForkRepository) {
|
||||
if (githubToken) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!deployKey && !personalToken) {
|
||||
if (deployKey === '' && personalToken === '') {
|
||||
core.warning(
|
||||
'Action runs on fork and deploy_key or personal_token is empty'
|
||||
);
|
||||
|
Loading…
x
Reference in New Issue
Block a user