mirror of
https://github.com/peaceiris/actions-gh-pages.git
synced 2025-07-15 06:33:17 +08:00
fix: skip deployment on forks (#156)
* fix: skip on forks * chore(release): 3.5.4-6 Close #153
This commit is contained in:
parent
ff31e77830
commit
4f06df820b
63
CHANGELOG.md
63
CHANGELOG.md
@ -2,6 +2,69 @@
|
|||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||||
|
|
||||||
|
## [3.5.4-6](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-5...v3.5.4-6) (2020-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* skip logic ([44bdada](https://github.com/peaceiris/actions-gh-pages/commit/44bdada02c71f646d23ffefe1ea07d16386dbf83))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-5](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-4...v3.5.4-5) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* property access ([72f58a0](https://github.com/peaceiris/actions-gh-pages/commit/72f58a06cf5db88d3eb982f57de8dbc266e39232))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-4](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-3...v3.5.4-4) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### test
|
||||||
|
|
||||||
|
* skipOnFork() ([6f9a5b7](https://github.com/peaceiris/actions-gh-pages/commit/6f9a5b7a66bbf855cadc34099fa6450c40eff4a2))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-3](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-2...v3.5.4-3) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* skip logic ([01976c9](https://github.com/peaceiris/actions-gh-pages/commit/01976c9d9b95b42997caa2a85c2d737eb75e852e))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-2](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-1...v3.5.4-2) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* skip logic ([c97a39a](https://github.com/peaceiris/actions-gh-pages/commit/c97a39a35f681badbf7490c2786eddf06b17316d))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-1](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.4-0...v3.5.4-1) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* isForkRepository ([6546aa9](https://github.com/peaceiris/actions-gh-pages/commit/6546aa96085e89bd91adc56f58be665766e93a1e))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## [3.5.4-0](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.3...v3.5.4-0) (2020-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### fix
|
||||||
|
|
||||||
|
* skip on forks ([c320668](https://github.com/peaceiris/actions-gh-pages/commit/c320668126b104ad2c15ea1b583a75cd3978c2f3)), closes [#153](https://github.com/peaceiris/actions-gh-pages/issues/153)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## [3.5.3](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.2...v3.5.3) (2020-03-13)
|
## [3.5.3](https://github.com/peaceiris/actions-gh-pages/compare/v3.5.2...v3.5.3) (2020-03-13)
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,7 +5,8 @@ import {
|
|||||||
getWorkDirName,
|
getWorkDirName,
|
||||||
createWorkDir,
|
createWorkDir,
|
||||||
addNoJekyll,
|
addNoJekyll,
|
||||||
addCNAME
|
addCNAME,
|
||||||
|
skipOnFork
|
||||||
} from '../src/utils';
|
} from '../src/utils';
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
@ -203,3 +204,30 @@ describe('addCNAME()', () => {
|
|||||||
fs.unlinkSync(filepath);
|
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 no tokens', async () => {
|
||||||
|
const test = await skipOnFork(true, '', '', '');
|
||||||
|
expect(test).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "actions-github-pages",
|
"name": "actions-github-pages",
|
||||||
"version": "3.5.3",
|
"version": "3.5.4-6",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "actions-github-pages",
|
"name": "actions-github-pages",
|
||||||
"version": "3.5.3",
|
"version": "3.5.4-6",
|
||||||
"description": "GitHub Actions for GitHub Pages",
|
"description": "GitHub Actions for GitHub Pages",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"engines": {
|
"engines": {
|
||||||
|
18
src/main.ts
18
src/main.ts
@ -1,16 +1,32 @@
|
|||||||
|
import {context} from '@actions/github';
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import * as exec from '@actions/exec';
|
import * as exec from '@actions/exec';
|
||||||
import {Inputs} from './interfaces';
|
import {Inputs} from './interfaces';
|
||||||
import {showInputs, getInputs} from './get-inputs';
|
import {showInputs, getInputs} from './get-inputs';
|
||||||
import {setTokens} from './set-tokens';
|
import {setTokens} from './set-tokens';
|
||||||
import {setRepo, setCommitAuthor, commit, push, pushTag} from './git-utils';
|
import {setRepo, setCommitAuthor, commit, push, pushTag} from './git-utils';
|
||||||
import {getWorkDirName, addNoJekyll, addCNAME} from './utils';
|
import {getWorkDirName, addNoJekyll, addCNAME, skipOnFork} from './utils';
|
||||||
|
|
||||||
export async function run(): Promise<void> {
|
export async function run(): Promise<void> {
|
||||||
try {
|
try {
|
||||||
const inps: Inputs = getInputs();
|
const inps: Inputs = getInputs();
|
||||||
showInputs(inps);
|
showInputs(inps);
|
||||||
|
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||||
|
const isForkRepository = (context.payload as any).repository.fork;
|
||||||
|
const isSkipOnFork = await skipOnFork(
|
||||||
|
isForkRepository,
|
||||||
|
inps.GithubToken,
|
||||||
|
inps.DeployKey,
|
||||||
|
inps.PersonalToken
|
||||||
|
);
|
||||||
|
if (isSkipOnFork) {
|
||||||
|
core.warning(
|
||||||
|
'This action runs on a fork and not found auth token, Skip deployment'
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const remoteURL = await setTokens(inps);
|
const remoteURL = await setTokens(inps);
|
||||||
core.debug(`[INFO] remoteURL: ${remoteURL}`);
|
core.debug(`[INFO] remoteURL: ${remoteURL}`);
|
||||||
|
|
||||||
|
15
src/utils.ts
15
src/utils.ts
@ -62,3 +62,18 @@ export async function addCNAME(
|
|||||||
fs.writeFileSync(filepath, content + '\n');
|
fs.writeFileSync(filepath, content + '\n');
|
||||||
core.info(`[INFO] Created ${filepath}`);
|
core.info(`[INFO] Created ${filepath}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function skipOnFork(
|
||||||
|
isForkRepository: boolean,
|
||||||
|
githubToken: string,
|
||||||
|
deployKey: string,
|
||||||
|
personalToken: string
|
||||||
|
): Promise<boolean> {
|
||||||
|
if (isForkRepository) {
|
||||||
|
if (githubToken === '' && deployKey === '' && personalToken === '') {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user