# Bug DOC-96 - [Docker] - Gitlab integration plugin

Project: Docker
Status: closed
URL: https://community.openproject.org/work_packages/DOC-96

## Open points

_No work packages_

## Details

| Attribute | Value |
| --- | --- |
| Date |  |
| Priority | Medium |
| Module |  |
| Target versions | 12.1.0 |
| Observed in versions |  |
| Sprint |  |
| Backlog bucket |  |
| Bug found in version (deprecated) |  |
| Requires doc change | No |
| Pull preview |  |
| List |  |
| Labels |  |

## People

| Attribute | Value |
| --- | --- |
| Assignee |  |
| Accountable |  |
| Product manager |  |
| Developers |  |
| Designer |  |
| Signed off by |  |
| Interest by |  |

## Planning

| Attribute | Value |
| --- | --- |
| Relevance |  |

## Costs

| Attribute | Value |
| --- | --- |
| Votes |  |
| Work |  |

## Description

Good morning,

I develop a plugin for the integration with Gitlab (<https://github.com/btey/openproject-gitlab-integration>) that works in a manual installation environment. But I have two problems:

**1) Following the steps documented here I get Ruby errors:**

<https://www.openproject.org/docs/installation-and-operations/installation/docker/#openproject-plugins>

... appear some errors that I'm trying to resolve. In this issue in Github (<https://github.com/btey/openproject-gitlab-integration/issues/3>) you can see the errors that some other users have when try to use the plugin in Docker.

After some testing I think that the source of the plugin seems to be placed in a path (or setup) that needs additional "require" in the code, not only between the source files of the plugin but also the source files of OpenProject.

Is there a correct way to reference OpenProject code in the plugin (or between plugin files) that is compatible with the current OpenProject Docker image.

**2) The plugin implements the same functionality that the integration with Github, but the pre-compilation of the assets, currently, require this line of code in the main OpenProject code (outside of the plugin code):**

``` Shell
frontend/src/app/core/apiv3/endpoints/work_packages/api-v3-work-package-paths.ts
```

``` TypeScript
   // /api/v3/(?:projectPath)/work_packages/(:workPackageId)/gitlab_merge_requests
   public readonly gitlab_merge_requests = this.subResource('gitlab_merge_requests');
```

Would there be any way to apply this modification to the Docker image? Or would there be some other way to include this line in the plugin code that allows adding this new "resource" to the API?

Thank you very much\!

### **Environment**:

Your OpenProject Version: v12.0.7

Debian 10 / Firefox / OpenProject language: English

### **Logs**

See error logs reported by users in this issue:  
<https://github.com/btey/openproject-gitlab-integration/issues/3>

### **Steps to reproduce:**

1.  Follow the steps to create a Docker image with a plugin: <https://www.openproject.org/docs/installation-and-operations/installation/docker/#openproject-plugins>
      - Example Gemfile.plugin:

<!-- end list -->

``` ruby
group :opf_plugins do
  gem "openproject-gitlab_integration", git: "https://github.com/btey/openproject-gitlab-integration.git", ref: "fe4eb8ba638e2f6fbac53e6f95b7baec65f28c8d"
end
```

### **Actual Behavior**

During the build of the docker image Ruby errors (*NameError: uninitialized constant \<...\>*) are returned, when in a manual installation works without errors.

### **Expected Behavior**

No Ruby errors returned and correct execution of the plugin.
