coder / coder/backstage-plugins

Auto-cloning a Gitlab repo fails with "unable to update url base from redirection"

Abierto
#144 1 comentario 0 reacciones 0 asignados Ver en GitHub
bug help wanted
Lenguaje dominante
TypeScript
Estrellas
67
Forks
9
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Background

My organisation is exploring Coder with the Backstage plugin and Gitlab.com (Gitlab SaaS, i.e. not self-hosted).

In Backstage, before creating anything, the plugin shows:

> No workspaces found for repo
> https://gitlab.com/myorg/myrepo/-/blob/main/?ref_type=heads

We see #117 and the fact a change was made, and also that a merge was made to the git clone module in PR [210](https://github.com/coder/modules/pull/210#issue-2217313475), but we are yet to be able to make it work.

### Challenge

With a template that auto-clones, for example using the `git_clone` module:

```hcl
data "coder_parameter" "repo_url" {
name = "repo_url"
display_name = "Git repository"
}

module "git_clone" {
source = "registry.coder.com/modules/git-clone/coder"
version = "1.0.18"
agent_id = coder_agent.main.id
url = data.coder_parameter.repo_url.value
}
```

We see the clone fail after redirection:

```
Cloning https://gitlab.com/myorg/myrepo/-/blob/main/ to /home/coder/main...
Cloning into '/home/coder/main'...

fatal: unable to update url base from redirection:
asked for: https://gitlab.com/myorg/myrepo/-/blob/main/info/refs?service=git-upload-pack
redirect: https://gitlab.com/groups/myorg/-/saml/sso?redirect=%2Fmyorg%2Fmyrepo%2F-%2Fblob%2Fmain%2Finfo%2Frefs%3Fservice%3Dgit-upload-pack&token=
```

We enforce single sign-on, which may explain the saml/sso redirection.

### Alternatives

If we do not "auto-clone", and instead try and clone from the Workspace template directly (providing "Git repository" in the GUI), providing "https://gitlab.com/myorg/myrepo", then it works.

The downside is that the Backstage plugin won't "match" the Workspace as being related to the Backstage entity (presumably because we omitted the `-/blob/main/?ref_type=heads` suffix).

Has anyone been able to make this work with Gitlab yet please?

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Start with the Backstage plugin and the git_clone module referenced in the template; review issue #117 and PR 210 first. Reproduce with the GitLab URL ending in /-/blob/main/?ref_type=heads and compare it with the working repository-root URL. Done means auto-cloning succeeds under GitLab SAML SSO while the workspace still matches the Backstage entity.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
git, typescript
Área
developer-experience
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.