Nhóm có mối quan tâm đặc biệt về Bazel

Bazel tổ chức các Nhóm có mối quan tâm đặc biệt (SIG) để tập trung cộng tác vào các lĩnh vực cụ thể, đồng thời hỗ trợ việc liên lạc và phối hợp giữa chủ sở hữu, nhà bảo trì và người đóng góp của Bazel. Chính sách này áp dụng cho bazelbuild.

SIG làm việc ở nơi công cộng. Phạm vi lý tưởng cho SIG bao gồm một miền được xác định rõ ràng, trong đó phần lớn người dùng tham gia là từ cộng đồng. SIG có thể tập trung vào kho lưu trữ do cộng đồng duy trì trong bazelbuild (chẳng hạn như quy tắc ngôn ngữ) hoặc tập trung vào các khu vực mã trong kho lưu trữ Bazel (chẳng hạn như Thực thi từ xa).

Mặc dù không phải mọi SIG đều có cùng mức năng lượng, phạm vi hoặc mô hình quản trị, nhưng cần có đủ bằng chứng cho thấy các thành viên trong cộng đồng sẵn sàng tham gia và đóng góp nếu nhóm mối quan tâm được xác lập. Trước khi tham gia, hãy xem lại công việc của nhóm, sau đó liên hệ với trưởng nhóm SIG. Chính sách hội viên thay đổi theo từng SIG.

Xem danh sách đầy đủ Bazel SIG.

Không phải mục tiêu: SIG là gì thì không phải là

Mục đích của SIG là hỗ trợ hoạt động cộng tác trong công việc chung. Do đó, SIG:

  • Không phải diễn đàn hỗ trợ: một danh sách gửi thư và SIG là hai khái niệm khác
  • Không bắt buộc ngay: khi bắt đầu dự án, bạn có thể không biết liệu mình có chia sẻ công việc hoặc cộng tác viên hay không
  • Không phải lao động tự do: cần có năng lượng để phát triển và điều phối công việc cộng tác

Chủ sở hữu Bazel có phương pháp tiếp cận thận trọng khi tạo SIG, nhờ việc dễ dàng bắt đầu dự án trên GitHub, nên có nhiều cách để cộng tác mà không cần SIG.

Vòng đời của SIG

Phần này trình bày cách tạo SIG.

Nghiên cứu và tham vấn

Để đề xuất một nhóm SIG mới, trước tiên, hãy thu thập bằng chứng để phê duyệt, như nêu rõ dưới đây. Một số cách có thể cân nhắc là:

  • Một vấn đề hoặc một tập hợp các vấn đề được xác định rõ ràng mà nhóm sẽ giải quyết
  • Tham khảo ý kiến của các thành viên trong cộng đồng – những người sẽ nhận được lợi ích, đánh giá cả lợi ích và mức độ sẵn sàng cam kết của họ
  • Đối với các dự án hiện tại, bằng chứng từ các vấn đề và PR mà cộng tác viên quan tâm về chủ đề
  • Mục tiêu tiềm năng mà nhóm cần đạt được
  • Yêu cầu về tài nguyên để điều hành nhóm

Ngay cả khi nhu cầu cần có SIG là hiển nhiên, thì việc nghiên cứu và tham vấn vẫn đóng vai trò quan trọng đối với sự thành công của nhóm.

Tạo nhóm mới

Nhóm mới nên tuân theo quy trình thuê bao dưới đây. Cụ thể, dữ liệu này phải thể hiện:

  • Mục đích và lợi ích rõ ràng cho Bazel (xoay quanh một dự án phụ hoặc khu vực ứng dụng)
  • Hai hoặc nhiều cộng tác viên sẵn sàng làm trưởng nhóm, sự tồn tại của các cộng tác viên khác và bằng chứng về nhu cầu tham gia nhóm
  • Mỗi nhóm cần sử dụng ít nhất một danh sách gửi thư có thể truy cập công khai. SIG có thể sử dụng lại một trong các danh sách công khai, chẳng hạn như bazel-discuss, yêu cầu danh sách cho @bazel.build hoặc tạo danh sách riêng
  • Các tài nguyên mà SIG yêu cầu ban đầu (thường là danh sách gửi thư và cuộc gọi video thông thường).
  • SIG có thể phân phát tài liệu và tệp từ thư mục của chúng trong bazelbuild/community hoặc từ kho lưu trữ riêng trong tổ chức GitHub bazelbuild. SIG có thể liên kết với các tài nguyên bên ngoài nếu họ chọn sắp xếp công việc bên ngoài tổ chức GitHub bazelbuild
  • Chủ sở hữu Bazel phê duyệt hoặc từ chối đơn đăng ký SIG và tham khảo ý kiến của các bên liên quan khác nếu cần

Trước khi nhập các phần chính thức của quy trình, bạn nên tham khảo ý kiến của nhóm sản phẩm Bazel, theo địa chỉ product@bazel.build. Hầu hết các SIG đều yêu cầu trò chuyện và lặp lại trước khi phê duyệt.

Yêu cầu chính thức cho nhóm mới được thực hiện bằng cách gửi một điều lệ dưới dạng PR cho bazelbuild/community, và đưa yêu cầu đó vào các nhận xét về PR theo mẫu bên dưới. Sau khi được chấp thuận, PR cho nhóm sẽ được hợp nhất và các tài nguyên bắt buộc sẽ được tạo.

Yêu cầu mẫu cho SIG mới

Để yêu cầu SIG mới, hãy sử dụng mẫu trong kho lưu trữ cộng đồng: SIG-request-template.md.

Thuê tàu

Để thành lập một nhóm, bạn cần có điều lệ và phải tuân theo quy tắc ứng xử của Bazel. Bản lưu trữ của nhóm sẽ ở chế độ công khai. Tư cách thành viên có thể được mở cho tất cả mọi người mà không cần sự phê duyệt hoặc có sẵn theo yêu cầu, đang chờ quản trị viên nhóm phê duyệt.

Điều lệ phải chỉ định một quản trị viên. Cũng là quản trị viên, nhóm phải bao gồm ít nhất một người làm trưởng nhóm (những người này có thể là cùng một người), đóng vai trò là đầu mối liên hệ để phối hợp theo yêu cầu với nhóm sản phẩm Bazel.

Người tạo nhóm phải đăng điều lệ của mình lên danh sách gửi thư của nhóm. Kho lưu trữ cộng đồng trong tổ chức Bazel GitHub là nơi lưu trữ những tài liệu và chính sách đó. Khi các nhóm phát triển phương pháp và quy ước, họ nên cập nhật biểu đồ của mình trong phần liên quan của kho lưu trữ cộng đồng.

Cộng tác và hoà nhập

Mặc dù không bắt buộc, nhưng nhóm nên chọn tận dụng hoạt động cộng tác thông qua cuộc gọi hội nghị truyền hình theo lịch hoặc kênh trò chuyện để tiến hành cuộc họp. Bạn nên thông báo về mọi cuộc họp như vậy trong danh sách gửi thư và sau đó ghi chú sẽ được đăng lên danh sách gửi thư. Các cuộc họp định kỳ giúp thúc đẩy trách nhiệm giải trình và tiến độ trong một SIG.

Các thành viên trong nhóm sản phẩm của Bazel có thể chủ động giám sát và khuyến khích nhóm thảo luận và hành động khi thích hợp.

Triển khai SIG

Hoạt động bắt buộc:

Hoạt động không bắt buộc:

  • Tạo một bài đăng trên blog cho blog của Bazel

Trạng thái và chấm dứt SIG

Chủ sở hữu kênh Bazel luôn nỗ lực hết sức để đảm bảo sức khoẻ cho SIG. Chủ sở hữu Bazel đôi khi yêu cầu trưởng nhóm SIG báo cáo về công việc của SIG, để thông báo cho cộng đồng Bazel rộng lớn hơn về hoạt động của nhóm.

Nếu không còn có mục đích hữu ích hoặc không còn quan tâm đến cộng đồng, thì SIG có thể được lưu trữ và ngừng hoạt động. Nhóm sản phẩm Bazel giữ quyền lưu trữ các SIG không hoạt động như vậy để duy trì tình trạng tổng thể của dự án, mặc dù đây là kết quả ít được mong đợi hơn. SIG cũng có thể chọn ngừng hoạt động nếu nhận thấy rằng nó đã hết thời gian sử dụng hữu ích.

Lưu ý

Nội dung này được áp dụng từ cẩm nang SIG của Tensorflow kèm theo một số điểm sửa đổi.