Skip to content

Self-hosted Gitlab Integration not Working #195

@necouchman

Description

@necouchman

I think this has been reported in the past, but I'm still unable to get a self-hosted version of DrawIO to integrate correctly with a self-hosted version of Gitlab for storing diagrams.

Environment

  • Gitlab CE running on Rocky Linux 9
  • DrawIO running in a Pod in OKD 4.19 (Kubernetes 1.32.5)
    • Image is jgraph/drawio:latest

Process

  • Gitlab is installed and running, I can successfully log in, have repos, etc.
  • Create an application in Gitlab called "DrawIO" and set the callback URL to https://diagrams.apps.okd.local/gitlab.html
  • Create the Gitlab pod with the following details:
    • Create a custom service account with the "anyuid" privilege
    • Set the runAsUser and runAsGroup parameters for the DrawIO container.
    • Set the DRAWIO_GITLAB_URL an DRAWIO_GITLAB_ID variables to the URL of my Gitlab instance and the application ID created above.
    • Set image to jgraph/drawio:latest
  • Open the https://diagrams.apps.okd.local URL, and the DrawIO application launches successfully.
  • From the File menu within the web application, select Open From -> Gitlab
  • Click the Authorize button when it appears.
  • Receive the error from Gitlab: The redirect URI included is not valid.
  • Upon examining the URL, note that the ".html" is missing from the end of the "gitlab" portion in the diagrams redirect:
    • Expected value: &redirect_uri=https%3A%2F%2Fdiagrams.apps.okd.local%2Fgitlab.html&response_type=
    • Observed value: &redirect_uri=https%3A%2F%2Fdiagrams.apps.okd.local%2Fgitlab&response_type=
  • By manually adding the .html to the end of the redirect_uri argument, the authorization appears to succeed and the page closes.
  • However, in the DrawIO window an error appears: Access Denied with a Try Again and Cancel button.
  • If, instead, I change the URL of the application to not include the .html, the redirect back to the DrawIO page fails with HTTP 500.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions