coder / coder/envbuilder

Add support for feature order definition in devcontainer definitions

Đang mở
#226 0 bình luận 4 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Go
Star
300
Fork
64
Merge trung bình
20 phút
Pull request đã merge (30 ngày)
1

Mô tả

Currently, the order that features are executed as part of the container build is alphabetically sorted in the following code, where there is a TODO to implement support for the "installation order" that is part of the devcontainer spec: https://containers.dev/implementors/features/#installation-order

https://github.com/coder/envbuilder/blob/c72728897e91e713958a8ca0c7211574784ae79e/devcontainer/devcontainer.go#L236-L244

The ask in this issue is to implement support for:

> - The `dependsOn` property defined as a part of a Feature’s devcontainer-feature.json.
> - The `installsAfter` property defined as part of a Feature’s devcontainer-feature.json.
> - The `overrideFeatureInstallOrder` property in user’s devcontainer.json. Allows users to control the order of execution of their Features.

I wasn't able to find an existing issue tracking this, but let me know if there is! Happy to also provide more context on why this is a useful feature if that helps in prioritizing this. Features with any sort of dependencies are unusable in most cases unless the alphabetical ordering happens to line up.

---

In the meantime, it would be helpful to have this documented in the way that this PR did for other unsupported features: https://github.com/coder/envbuilder/pull/219

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 trong devcontainer/devcontainer.go tại phần mã được liên kết về việc sắp xếp thứ tự feature và đọc mục về thứ tự cài đặt trong đặc tả devcontainer. Theo dõi cách siêu dữ liệu feature từ devcontainer-feature.json và cấu hình từ devcontainer.json được tải. Được xem là hoàn thành khi dependsOn, installsAfter và overrideFeatureInstallOrder ảnh hưởng đến thứ tự thực thi, đồng thời hành vi không được hỗ trợ được ghi lại như PR #219 đã chỉ ra.

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

Đánh giá

Công nghệ
go
Lĩnh vực
build-system, devops
Loại issue
Tính năng
Độ 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.