File tree Expand file tree Collapse file tree 8 files changed +9350
-0
lines changed
Expand file tree Collapse file tree 8 files changed +9350
-0
lines changed Original file line number Diff line number Diff line change 1+ node_modules
Original file line number Diff line number Diff line change 1+ v12
Original file line number Diff line number Diff line change 1+ name : ' Enable Github Automerge'
2+ description : ' Enable Github auto-merge for specific pull-requests'
3+ branding :
4+ icon : ' git-merge'
5+ color : ' green'
6+ inputs :
7+ github-token :
8+ description : ' The GITHUB_TOKEN secret'
9+ required : true
10+ runs :
11+ using : ' node12'
12+ main : ' dist/index.js'
Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change 1+ {
2+ "name" : " enable-github-automerge-action" ,
3+ "version" : " 0.0.0-alpha.1" ,
4+ "description" : " " ,
5+ "main" : " dist/main.ts" ,
6+ "scripts" : {
7+ "build" : " ncc build src/main.ts" ,
8+ "format" : " prettier --write **/*.ts" ,
9+ "format-check" : " prettier --check **/*.ts"
10+ },
11+ "author" : " Alex Wilson <alex@alexwilson.tech>" ,
12+ "license" : " ISC" ,
13+ "devDependencies" : {
14+ "@types/node" : " ^14.14.25" ,
15+ "@vercel/ncc" : " ^0.27.0" ,
16+ "prettier" : " ^2.2.1" ,
17+ "typescript" : " ^4.1.3"
18+ },
19+ "dependencies" : {
20+ "@actions/core" : " ^1.2.6" ,
21+ "@actions/github" : " ^4.0.0"
22+ }
23+ }
Original file line number Diff line number Diff line change 1+ import * as core from "@actions/core" ;
2+ import * as github from "@actions/github" ;
3+
4+ async function run ( ) {
5+ try {
6+ const token = core . getInput ( "github-token" , { required : true } ) ;
7+ const client = github . getOctokit ( token ) ;
8+
9+ const { pull_request : pullRequest } = github . context . payload ;
10+ if ( ! pullRequest ) {
11+ throw new Error ( "Event payload missing `pull_request`" ) ;
12+ }
13+
14+ core . debug ( `Enabling auto-merge for pull-request #${ pullRequest . number } ` ) ;
15+ client . graphql ( `
16+ mutation {
17+ enablePullRequestAutoMerge(input:{
18+ pullRequestId: "${ pullRequest . node_id } "
19+ }) {
20+ clientMutationId
21+ pullRequest {
22+ id
23+ state
24+ }
25+ }
26+ }
27+ ` ) ;
28+ core . debug (
29+ `Successfully enabled auto-merge for pull-request #${ pullRequest . number } `
30+ ) ;
31+ } catch ( error ) {
32+ core . setFailed ( error . message ) ;
33+ }
34+ }
35+
36+ run ( ) ;
Original file line number Diff line number Diff line change 1+ {
2+ "compilerOptions" : {
3+ "target" : " es6" ,
4+ "module" : " commonjs" ,
5+ "outDir" : " ./lib" ,
6+ "rootDir" : " ./src" ,
7+ "strict" : true ,
8+ "noImplicitAny" : false ,
9+ "esModuleInterop" : true
10+ },
11+ "exclude" : [" node_modules" , " **/*.test.ts" ]
12+ }
13+
You can’t perform that action at this time.
0 commit comments