coder / coder/backstage-plugins

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

Đang mở
#144 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
bug help wanted
Ngôn ngữ chính
TypeScript
Star
67
Fork
9
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

### 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?

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu với plugin Backstage và module git_clone được tham chiếu trong template; trước tiên hãy xem lại issue #117 và PR 210. Tái hiện bằng URL GitLab kết thúc bằng /-/blob/main/?ref_type=heads và so sánh với URL thư mục gốc của repository đang hoạt động. Hoàn tất khi tự động clone thành công với GitLab SAML SSO và workspace vẫn khớp với Backstage entity.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
git, typescript
Lĩnh vực
developer-experience
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.