mirror of
https://github.com/Raghu-Ch/angular-challenges.git
synced 2026-02-10 04:43:03 -05:00
feat: add add loabl
This commit is contained in:
11
.github/github-action/action.yml
vendored
11
.github/github-action/action.yml
vendored
@@ -1,13 +1,10 @@
|
||||
name: 'Hello World'
|
||||
description: 'Greet someone and record the time'
|
||||
inputs:
|
||||
who-to-greet: # id of input
|
||||
description: 'Who to greet'
|
||||
required: true
|
||||
default: 'World'
|
||||
outputs:
|
||||
time: # id of output
|
||||
description: 'The time we greeted you'
|
||||
github_token:
|
||||
description: A GitHub token.
|
||||
required: false
|
||||
default: ${{ github.token }}
|
||||
runs:
|
||||
using: 'node20'
|
||||
main: 'index.js'
|
||||
|
||||
16
.github/github-action/contributors.js
vendored
Normal file
16
.github/github-action/contributors.js
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
const contributors = [
|
||||
'tomalaforge',
|
||||
'alcaidio',
|
||||
'svenson95',
|
||||
'jdegand',
|
||||
'DeveshChau',
|
||||
'stillst',
|
||||
'wandri',
|
||||
'webbomj',
|
||||
'kabrunko-dev',
|
||||
'Sanjar1304'
|
||||
];
|
||||
|
||||
module.exports = {
|
||||
contributors
|
||||
};
|
||||
55
.github/github-action/index.js
vendored
55
.github/github-action/index.js
vendored
@@ -1,15 +1,48 @@
|
||||
const core = require('@actions/core');
|
||||
const github = require('@actions/github');
|
||||
const core = require('@actions/core');
|
||||
const contributors = require('./contributors');
|
||||
|
||||
async function run() {
|
||||
try {
|
||||
// `who-to-greet` input defined in action metadata file
|
||||
const nameToGreet = core.getInput('who-to-greet');
|
||||
console.log(`Hello ${nameToGreet}!`);
|
||||
const time = (new Date()).toTimeString();
|
||||
core.setOutput("time", time);
|
||||
// Get the JSON webhook payload for the event that triggered the workflow
|
||||
const payload = JSON.stringify(github.context.payload, undefined, 2)
|
||||
console.log(`The event payload: ${payload}`);
|
||||
} catch (error) {
|
||||
core.setFailed(error.message);
|
||||
const title = github.context.payload.pull_request.title;
|
||||
const labels = [];
|
||||
|
||||
if(!title.startsWith('Answer:')) {
|
||||
return;
|
||||
}
|
||||
labels.push('answer');
|
||||
|
||||
const match = title.match(/Answer:\s*(\d+)/);
|
||||
if (match) {
|
||||
labels.push(parseInt(match[1], 10));
|
||||
}
|
||||
|
||||
const actor = github.context.actor;
|
||||
if(contributors.includes(actor)) {
|
||||
labels.push('to be reviewed');
|
||||
}
|
||||
|
||||
const githubToken = core.getInput('github_token');
|
||||
|
||||
const [owner, repo] = core.getInput('repo').split('/');
|
||||
const number =
|
||||
core.getInput('number') === ''
|
||||
? github.context.issue.number
|
||||
: parseInt(core.getInput('number'));
|
||||
|
||||
const octokit = github.getOctokit(githubToken);
|
||||
await octokit.rest.issues.addLabels({
|
||||
labels,
|
||||
owner,
|
||||
repo,
|
||||
issue_number: number
|
||||
});
|
||||
} catch (e) {
|
||||
if (e instanceof Error) {
|
||||
core.error(e);
|
||||
core.setFailed(e.message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
run();
|
||||
|
||||
21
.github/workflows/label-issue.yml
vendored
21
.github/workflows/label-issue.yml
vendored
@@ -14,24 +14,7 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: npm i @actions/core @actions/github
|
||||
|
||||
- name: add supporter labels
|
||||
uses: actions-ecosystem/action-add-labels@v1
|
||||
if: ${{ contains( fromJson('[ "tomalaforge", "alcaidio" , "svenson95", "jdegand", "DeveshChau", "stillst", "wandri", "webbomj", "kabrunko-dev", "Sanjar1304"]'), github.actor ) && startsWith(github.event.pull_request.title, 'Answer') }}
|
||||
with:
|
||||
github_token: ${{ secrets.github_token }}
|
||||
labels: supporter
|
||||
|
||||
- name: add answer labels
|
||||
uses: actions-ecosystem/action-add-labels@v1
|
||||
if: ${{ startsWith(github.event.pull_request.title, 'Answer') }}
|
||||
with:
|
||||
github_token: ${{ secrets.github_token }}
|
||||
labels: answer
|
||||
|
||||
- name: Hello world action step
|
||||
- name: Add labels
|
||||
uses: ./.github/github-action/
|
||||
id: hello
|
||||
with:
|
||||
who-to-greet: 'Mona the Octocat'
|
||||
- name: Get the output time
|
||||
run: echo "The time was ${{ steps.hello.outputs.time }}"
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
Reference in New Issue
Block a user