Skip to content

Commit

Permalink
#2590: Add missing gitlab trigger event types
Browse files Browse the repository at this point in the history
See issue #2590
  • Loading branch information
tennox committed Dec 22, 2021
1 parent 316904d commit d5361ca
Showing 1 changed file with 65 additions and 41 deletions.
106 changes: 65 additions & 41 deletions packages/nodes-base/nodes/Gitlab/GitlabTrigger.node.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,69 @@ import {
gitlabApiRequest,
} from './GenericFunctions';

const GITLAB_EVENTS = [
{
name: 'Comment',
value: 'note',
description: 'Triggered when a new comment is made on commits, merge requests, issues, and code snippets.',
},
{
name: 'Confidential Issues',
value: 'confidential_issues',
description: 'Triggered on confidential issues\' events.',
},
{
name: 'Confidential Comments',
value: 'confidential_note',
description: 'Triggered when a confidential comment is made.',
},
{
name: 'Deployments',
value: 'deployment',
description: 'Triggered when a deployment starts/succeeds/fails/is cancelled.',
},
{
name: 'Issue',
value: 'issues',
description: 'Triggered when a new issue is created or an existing issue was updated/closed/reopened.',
},
{
name: 'Job',
value: 'job',
description: 'Triggered on status change of a job.',
},
{
name: 'Merge Request',
value: 'merge_requests',
description: 'Triggered when a new merge request is created, an existing merge request was updated/merged/closed or a commit is added in the source branch.',
},
{
name: 'Pipeline',
value: 'pipeline',
description: 'Triggered on status change of Pipeline.',
},
{
name: 'Push',
value: 'push',
description: 'Triggered when you push to the repository except when pushing tags.',
},
{
name: 'Release',
value: 'releases',
description: 'Release events are triggered when a release is created or updated.',
},
{
name: 'Tag',
value: 'tag_push',
description: 'Triggered when you create (or delete) tags to the repository.',
},
{
name: 'Wiki Page',
value: 'wiki_page',
description: 'Triggered when a wiki page is created, updated or deleted.',
},
];

export class GitlabTrigger implements INodeType {
description: INodeTypeDescription = {
displayName: 'GitLab Trigger',
Expand Down Expand Up @@ -104,51 +167,12 @@ export class GitlabTrigger implements INodeType {
name: 'events',
type: 'multiOptions',
options: [
...GITLAB_EVENTS,
{
name: '*',
value: '*',
description: 'Any time any event is triggered (Wildcard Event).',
},
{
name: 'Comment',
value: 'note',
description: 'Triggered when a new comment is made on commits, merge requests, issues, and code snippets.',
},
{
name: 'Issue',
value: 'issues',
description: 'Triggered when a new issue is created or an existing issue was updated/closed/reopened.',
},
{
name: 'Job',
value: 'job',
description: 'Triggered on status change of a job.',
},
{
name: 'Merge Request',
value: 'merge_requests',
description: 'Triggered when a new merge request is created, an existing merge request was updated/merged/closed or a commit is added in the source branch.',
},
{
name: 'Pipeline',
value: 'pipeline',
description: 'Triggered on status change of Pipeline.',
},
{
name: 'Push',
value: 'push',
description: 'Triggered when you push to the repository except when pushing tags.',
},
{
name: 'Tag',
value: 'tag_push',
description: 'Triggered when you create (or delete) tags to the repository.',
},
{
name: 'Wiki Page',
value: 'wiki_page',
description: 'Triggered when a wiki page is created, updated or deleted.',
},
],
required: true,
default: [],
Expand Down Expand Up @@ -206,7 +230,7 @@ export class GitlabTrigger implements INodeType {

let eventsArray = this.getNodeParameter('events', []) as string[];
if (eventsArray.includes('*')) {
eventsArray = ['note', 'issues', 'job', 'merge_requests', 'pipeline', 'push', 'tag_push', 'wiki_page'];
eventsArray = GITLAB_EVENTS.map(e => e.value);
}

const events: { [key: string]: boolean } = {};
Expand Down

0 comments on commit d5361ca

Please sign in to comment.