Nhảy tới nội dung
Phiên bản: 1.x

Extension Manager

This contains an explanation of how the extension manager works and what it has to offer.

slightly outdated: see the extensions guide for more.

Nội dung

Yêu cầu

Có một số trở ngại cần được lưu ý trước khi sử dụng.

Quyền đối với tệp

User web cần có quyền đọc và ghi các tệp và thư mục như: vendor, composer.json, composer.lockstorage. Ngay bây giờ, một cảnh báo sẽ hiển thị khi trường hợp này không xảy ra, điều này tốt nhất nên được thay đổi để chỉ đề cập đến các tệp/thư mục thiếu quyền thay vì tất cả.

flarum lan_admin (3)

Đường dẫn kho lưu trữ

Trong môi trường phát triển (và sản xuất trong các tình huống hiếm gặp) nên có một kho lưu trữ đường dẫn đến một thư mục chứa các gói (chủ yếu là dev), đường dẫn đến thư mục này phải được thay đổi thành một đường dẫn tuyệt đối, nếu không trình soạn thảo sẽ gặp khó khăn khi chạy bất kỳ lệnh nào. Additionally the path repository by default has higher priority, so requiring an extension that exists in that repository will probably fail, unless a *@dev constraint is specified, in which case the extension manager should not be used for dev purposes anyway.

There is currently now hint of any of this in the extension manager UI.

Các hành động phổ biến

Mỗi một trong số các tính năng được liệt kê ở trên về cơ bản là một hoặc hai lệnh của Composer, và có những hành động/hành vi chung giữa tất cả chúng.

  • Hạn chế quyền truy cập vào quản trị viên.
  • Xác thực tên gói được cung cấp hoặc id phần mở rộng nếu được cung cấp.
  • Lỗi nếu cài đặt tiện ích mở rộng hiện có, cập nhật hoặc xóa tiện ích mở rộng không hiện có ... vv
  • Đang chạy lệnh tự động ghi lại nhật ký đầu ra.
  • Lỗi do lỗi câu lệnh.
  • Phái một sự kiện.
  • Nếu đang chạy bản cập nhật:
    • Xóa bộ nhớ cache.
    • Chạy di chuyển.
    • Xuất bản nội dung.
    • Chạy kiểm tra cập nhật và ghi lại bất kỳ tiện ích mở rộng nào không cập nhật lên phiên bản mới nhất của chúng trong quá trình cập nhật.

Ghi nhật ký lệnh đầu ra

Xem xét điều này vẫn đang thử nghiệm và đặc biệt là để hỗ trợ dễ dàng hơn, mỗi đầu ra lệnh được ghi vào storage/logs/composer giống như các bản ghi lỗi Flarum, cho phép quay lại và xem điều gì đã xảy ra trong một lệnh chấp hành.

Lệnh thất bại

Khi một lệnh Composer không thành công (được mã thoát nhận dạng), một ngoại lệ được đưa ra có chứa lý do ngoại lệ đó đoán ra dựa trên văn bản đầu ra của lệnh. Các nguyên nhân được phỏng đoán hiển thị thành các thông báo cảnh báo giải thích thích hợp trên giao diện người dùng.

Kiểm tra các bản cập nhật

Thao tác này thực thi lệnh composer outdated -D --format json kiểm tra các bản cập nhật của các gói được yêu cầu trực tiếp trong thư mục gốc composer.json và xuất ra kết quả ở định dạng JSON. Chỉ những gói được đánh dấu là semver-safe-updateupdate-could bởi Composer mới được hiển thị.

Thông tin về lần kiểm tra cập nhật cuối cùng được lưu vào cài đặt JSON.

flarum lan_admin (4)

Cập nhật toàn bộ Flarum

Chỉ cần chạy lệnh command update --prefer-dist --no-dev -a --with-all-dependencies, hữu ích để cập nhật tất cả các gói.

Cập nhật Flarum bản vá lỗi nhỏ

Điều này thay đổi trực tiếp các phiên bản gói được yêu cầu thành * và sau đó thực thi lệnh command update --prefer-dist --no-dev -a --with-all-dependencies.

flarum lan_admin (5)

Cập nhật Flarum chính

Điều này thay đổi trực tiếp các phiên bản gói được yêu cầu thành *, thay đổi cốt lõi thành yêu cầu phiên bản chính mới nhất và sau đó thực hiện lệnh tương tự ở trên. Khi thất bại, có thể đoán chính xác rằng một số tiện ích mở rộng không tương thích với phiên bản chính mới, các chi tiết ngoại lệ sẽ bao gồm một loạt các tên gói tiện ích mở rộng không tương thích và nó sẽ được hiển thị trong giao diện người dùng, với khả năng chạy composer why-not flarum/core 2.0 để biết thêm chi tiết.

cập nhật giao diện người dùng chính

Cập nhật Flarum (toàn bộ, phụ, chính)

Thông tin về các bản cập nhật cuối cùng đã chạy được lưu trong cài đặt last_update_run JSON, có thể chứa một loạt các tên gói phần mở rộng không cập nhật lên phiên bản mới nhất của chúng trong quá trình này, điều này được hiển thị trong giao diện người dùng dưới dạng các nút biểu tượng cảnh báo trên các mục tiện ích mở rộng, nhấp vào chúng sẽ thực hiện composer why-not, hiển thị chi tiết về lỗi trong một phương thức.

Giao diện người dùng với danh sách các tiện ích mở rộng chứa các nút biểu tượng cảnh báo Giao diện người dùng với phương thức hiển thị chi tiết

Nhiệm vụ nền

Để giải quyết các vấn đề về thời gian chờ, các lệnh của trình soạn nhạc cũng có thể chạy trên nền bằng cách sử dụng hàng đợi. Người dùng có thể được hướng tới Blomstra's Database Queue Implementation như một giải pháp hàng đợi cơ bản. Nó chứa các hướng dẫn về cách kích hoạt hàng đợi thông qua một công việc cron.

Phiên bản quy trình PHP Job Cron

Các máy chủ chia sẻ thường có phiên bản php thấp được sử dụng trong SSH, người dùng phải được chỉ ra thực tế rằng họ phải đảm bảo quy trình php là phiên bản tương thích với Flarum. Bằng cách kiểm tra thủ công hoặc bằng cách hỏi máy chủ của họ.

Extension Manager Queue Table Preview

TODO

  • Hãy thử trên dịch vụ lưu trữ được chia sẻ.
  • Giải thích tốt hơn trên giao diện người dùng về các tác vụ nền.