kandi background
Explore Kits

jenkins-gitlab-merge-request-builder-plugin | allows jenkins to build merge requests | Plugin library

 by   timols Java Version: Current License: Non-SPDX

 by   timols Java Version: Current License: Non-SPDX

Download this library from

kandi X-RAY | jenkins-gitlab-merge-request-builder-plugin Summary

jenkins-gitlab-merge-request-builder-plugin is a Java library typically used in Plugin, Ruby On Rails, Gradle applications. jenkins-gitlab-merge-request-builder-plugin has no bugs, it has no vulnerabilities, it has build file available and it has low support. However jenkins-gitlab-merge-request-builder-plugin has a Non-SPDX License. You can download it from GitHub.
A plugin that allows jenkins to build merge requests in Gitlab
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • jenkins-gitlab-merge-request-builder-plugin has a low active ecosystem.
  • It has 341 star(s) with 127 fork(s). There are 23 watchers for this library.
  • It had no major release in the last 12 months.
  • There are 65 open issues and 86 have been closed. On average issues are closed in 89 days. There are 4 open pull requests and 0 closed requests.
  • It has a neutral sentiment in the developer community.
  • The latest version of jenkins-gitlab-merge-request-builder-plugin is current.
This Library - Support
Best in #Plugin
Average in #Plugin
This Library - Support
Best in #Plugin
Average in #Plugin

quality kandi Quality

  • jenkins-gitlab-merge-request-builder-plugin has 0 bugs and 0 code smells.
This Library - Quality
Best in #Plugin
Average in #Plugin
This Library - Quality
Best in #Plugin
Average in #Plugin

securitySecurity

  • jenkins-gitlab-merge-request-builder-plugin has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
  • jenkins-gitlab-merge-request-builder-plugin code analysis shows 0 unresolved vulnerabilities.
  • There are 0 security hotspots that need review.
This Library - Security
Best in #Plugin
Average in #Plugin
This Library - Security
Best in #Plugin
Average in #Plugin

license License

  • jenkins-gitlab-merge-request-builder-plugin has a Non-SPDX License.
  • Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.
This Library - License
Best in #Plugin
Average in #Plugin
This Library - License
Best in #Plugin
Average in #Plugin

buildReuse

  • jenkins-gitlab-merge-request-builder-plugin releases are not available. You will need to build from source code and install.
  • Build file is available. You can build the component from source.
  • Installation instructions are available. Examples and code snippets are not available.
  • jenkins-gitlab-merge-request-builder-plugin saves you 840 person hours of effort in developing the same functionality from scratch.
  • It has 1925 lines of code, 170 functions and 28 files.
  • It has medium code complexity. Code complexity directly impacts maintainability of the code.
This Library - Reuse
Best in #Plugin
Average in #Plugin
This Library - Reuse
Best in #Plugin
Average in #Plugin
Top functions reviewed by kandi - BETA

kandi has reviewed jenkins-gitlab-merge-request-builder-plugin and discovered the below as its top functions. This is intended to give you an instant insight into jenkins-gitlab-merge-request-builder-plugin implemented functionality, and help decide if they suit your requirements.

  • Start the request .
    • Generate a Git message .
      • Start a job
        • Add environment variables to the gitlab environment .
          • Checks if the target should be filtered .
            • Called when a queue item is entered .
              • Checks if merge request exists .
                • Called when a build has started
                  • Checks if the path is authenticated or not .
                    • Returns a string representation of this push .

                      Get all kandi verified functions for this library.

                      Get all kandi verified functions for this library.

                      jenkins-gitlab-merge-request-builder-plugin Key Features

                      A plugin that allows jenkins to build merge requests in Gitlab

                      Community Discussions

                      Trending Discussions on jenkins-gitlab-merge-request-builder-plugin
                      • GitLab: Editing the merge request description triggers a merge request hook being sent
                      Trending Discussions on jenkins-gitlab-merge-request-builder-plugin

                      QUESTION

                      GitLab: Editing the merge request description triggers a merge request hook being sent

                      Asked 2019-Dec-18 at 14:12

                      For my repository on GitLab I have a Merge Request Hook configured which triggers a build on a Jenkins CI machine. The hooks works as expected when a merge request is opened.

                      The webhook is configured with the following triggers:

                      Lately, when I edit the description of the merge requests then the hook also notifies the CI machine.
                      Here is an example POST request:

                      Request headers:
                      Content-Type: application/json
                      X-Gitlab-Event: Merge Request Hook
                      
                      Request body:
                      {
                        "object_kind": "merge_request",
                        "event_type": "merge_request",
                        "user": {
                          "name": "User Name",
                          "username": "username",
                          "avatar_url": "https://gitlab.example.com/uploads/-/system/user/avatar/145/avatar.png"
                        },
                        "project": {
                          "id": 39,
                          "name": "app",
                          "description": "Lorem ipsum.",
                          "web_url": "https://gitlab.example.com/projects/app",
                          "avatar_url": "https://gitlab.example.com/uploads/-/system/project/avatar/39/app.png",
                          "git_ssh_url": "git@gitlab.example.com:projects/app.git",
                          "git_http_url": "https://gitlab.example.com/projects/app.git",
                          "namespace": "projects",
                          "visibility_level": 0,
                          "path_with_namespace": "projects/app",
                          "default_branch": "develop",
                          "ci_config_path": null,
                          "homepage": "https://gitlab.example.com/projects/app",
                          "url": "git@gitlab.example.com:projects/app.git",
                          "ssh_url": "git@gitlab.example.com:projects/app.git",
                          "http_url": "https://gitlab.example.com/projects/app.git"
                        },
                        "object_attributes": {
                          "assignee_id": null,
                          "author_id": 5,
                          "created_at": "2019-03-19 16:42:28 UTC",
                          "description": "- s. https://fabric.io/development/projects/apps/com.example.app/issues/5974e5ffbe077a4dcc044254?time=last-thirty-days\r\n- Lorem ipsum.",
                          "head_pipeline_id": 7473,
                          "id": 9258,
                          "iid": 844,
                          "last_edited_at": "2019-03-20 09:00:21 UTC",
                          "last_edited_by_id": 145,
                          "merge_commit_sha": null,
                          "merge_error": null,
                          "merge_params": {
                            "force_remove_source_branch": "1"
                          },
                          "merge_status": "can_be_merged",
                          "merge_user_id": null,
                          "merge_when_pipeline_succeeds": false,
                          "milestone_id": null,
                          "source_branch": "fix/random",
                          "source_project_id": 39,
                          "state": "opened",
                          "target_branch": "develop",
                          "target_project_id": 39,
                          "time_estimate": 0,
                          "title": "Fix random",
                          "updated_at": "2019-03-20 09:00:21 UTC",
                          "updated_by_id": 145,
                          "url": "https://gitlab.example.com/projects/app/merge_requests/844",
                          "source": {
                            "id": 39,
                            "name": "app",
                            "description": "Lorem ipsum.",
                            "web_url": "https://gitlab.example.com/projects/app",
                            "avatar_url": "https://gitlab.example.com/uploads/-/system/project/avatar/39/app.png",
                            "git_ssh_url": "git@gitlab.example.com:projects/app.git",
                            "git_http_url": "https://gitlab.example.com/projects/app.git",
                            "namespace": "projects",
                            "visibility_level": 0,
                            "path_with_namespace": "projects/app",
                            "default_branch": "develop",
                            "ci_config_path": null,
                            "homepage": "https://gitlab.example.com/projects/app",
                            "url": "git@gitlab.example.com:projects/app.git",
                            "ssh_url": "git@gitlab.example.com:projects/app.git",
                            "http_url": "https://gitlab.example.com/projects/app.git"
                          },
                          "target": {
                            "id": 39,
                            "name": "app",
                            "description": "Lorem ipsum.",
                            "web_url": "https://gitlab.example.com/projects/app",
                            "avatar_url": "https://gitlab.example.com/uploads/-/system/project/avatar/39/app.png",
                            "git_ssh_url": "git@gitlab.example.com:projects/app.git",
                            "git_http_url": "https://gitlab.example.com/projects/app.git",
                            "namespace": "projects",
                            "visibility_level": 0,
                            "path_with_namespace": "projects/app",
                            "default_branch": "develop",
                            "ci_config_path": null,
                            "homepage": "https://gitlab.example.com/projects/app",
                            "url": "git@gitlab.example.com:projects/app.git",
                            "ssh_url": "git@gitlab.example.com:projects/app.git",
                            "http_url": "https://gitlab.example.com/projects/app.git"
                          },
                          "last_commit": {
                            "id": "cdda6f7d200468955ecbd224f0437932db607087",
                            "message": "Fix random\n\n",
                            "timestamp": "2019-03-20T08:45:40Z",
                            "url": "https://gitlab.example.com/projects/app/commit/cdda6f7d200468955ecbd224f0437932db607087",
                            "author": {
                              "name": "User Name",
                              "email": "username"
                            }
                          },
                          "work_in_progress": false,
                          "total_time_spent": 0,
                          "human_total_time_spent": null,
                          "human_time_estimate": null,
                          "action": "update"
                        },
                        "labels": [
                          {
                            "id": 22,
                            "title": "Bug fix",
                            "color": "#FF0000",
                            "project_id": null,
                            "created_at": "2018-10-19 09:55:26 UTC",
                            "updated_at": "2018-11-05 15:17:08 UTC",
                            "template": false,
                            "description": "",
                            "type": "GroupLabel",
                            "group_id": 15
                          }
                        ],
                        "changes": {
                          "description": {
                            "previous": "s. https://fabric.io/development/projects/apps/com.example.app/issues/5974e5ffbe077a4dcc044254?time=last-thirty-days\r\nLorem ipsum.",
                            "current": "- s. https://fabric.io/development/projects/apps/com.example.app/issues/5974e5ffbe077a4dcc044254?time=last-thirty-days\r\n- Lorem ipsum."
                          },
                          "last_edited_at": {
                            "previous": "2019-03-19 16:42:50 UTC",
                            "current": "2019-03-20 09:00:21 UTC"
                          },
                          "last_edited_by_id": {
                            "previous": 5,
                            "current": 145
                          },
                          "updated_at": {
                            "previous": "2019-03-20 08:52:38 UTC",
                            "current": "2019-03-20 09:00:21 UTC"
                          },
                          "updated_by_id": {
                            "previous": 5,
                            "current": 145
                          }
                        },
                        "repository": {
                          "name": "app",
                          "url": "git@gitlab.example.com:projects/app.git",
                          "description": "Lorem ipsum.",
                          "homepage": "https://gitlab.example.com/projects/app"
                        }
                      }
                      
                      Response headers:
                      Server: nginx/1.10.3 (Ubuntu)
                      Date: Wed, 20 Mar 2019 09:00:21 GMT
                      Transfer-Encoding: chunked
                      Connection: close
                      X-Content-Type-Options: nosniff
                      

                      The Jenkins plugin looks like this:

                      Jenkins GitLab plugin

                      On the Jenkins machine the following GitLab plugins are installed:

                      Installed Jenkins GitLab plugins

                      How can I configure that a POST request is only sent to the CI machine when I create or update the branch of the pull request?

                      ANSWER

                      Answered 2019-Apr-02 at 12:25

                      Under triggers (Settings -> integrations) perform the below:

                      1. Enable push events (optional branch name - Branch is created via push events even before MR is possible)
                      2. Enable MR event triggers in your project repo

                      This URL will be triggered when a merge request is created/updated/merged

                      enter image description here

                      In Jenkins Plugin configuration -

                      1. Check "Push Events" (Any commits by way of direct Push or Creation)
                      2. Un-check "Opened Merge Request Events"
                      3. Check "Accepted Merge Request Events" (Any commits by way of Merge Request)

                      Source https://stackoverflow.com/questions/55284986

                      Community Discussions, Code Snippets contain sources that include Stack Exchange Network

                      Vulnerabilities

                      No vulnerabilities reported

                      Install jenkins-gitlab-merge-request-builder-plugin

                      Ensure that a Jenkins user exists within GitLab and has access to the repository. For GitLab version < 8.4.X: ensure that the user has Reporter level access to the project. For GitLab version >= 8.4.X: ensure that the user has Developer level access to the project. Please note that if you would like to use the Auto-merge feature Jenkins needs to have Developer access to the project.
                      Install the plugin in Jenkins. The plugin is hosted on the Jenkins Plugin repository Go to Jenkins -> Manage Plugins -> Available Search for GitLab Merge Request Builder And install it Ensure you restart Jenkins
                      Go to Manage Jenkins -> Configure System -> GitLab Merge Request Builder
                      Set the GitLab Host URL to the base URL of your GitLab server
                      Set your Jenkins Username for the Jenkins user (defaults to jenkins)
                      Set your Jenkins API Token for the Jenkins user. This can be found by logging into GitLab as Jenkins and going to the user profile section.
                      Set/change any of the other available parameters as necessary. If you host GitLab over an SSL connection you may want to enable ignoring certificate errors.
                      Save to preserve your changes.
                      Go to Manage Jenkins -> Configure Global Security and set Markup Formatter to Safe HTML. It will make Jenkins display links in build history properly.

                      Support

                      GitLab version < 8.1: use v1.2.4 of this pluginGitLab version >= 8.1 < 11: use v2.0.1 of this pluginGitLab version >= 11: use the latest version of this plugin

                      DOWNLOAD this Library from

                      Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
                      over 430 million Knowledge Items
                      Find more libraries
                      Reuse Solution Kits and Libraries Curated by Popular Use Cases
                      Explore Kits

                      Save this library and start creating your kit

                      Explore Related Topics

                      Share this Page

                      share link
                      Consider Popular Plugin Libraries
                      Try Top Libraries by timols
                      Compare Plugin Libraries with Highest Support
                      Compare Plugin Libraries with Highest Quality
                      Compare Plugin Libraries with Highest Security
                      Compare Plugin Libraries with Permissive License
                      Compare Plugin Libraries with Highest Reuse
                      Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
                      over 430 million Knowledge Items
                      Find more libraries
                      Reuse Solution Kits and Libraries Curated by Popular Use Cases
                      Explore Kits

                      Save this library and start creating your kit

                      • © 2022 Open Weaver Inc.