Thành viên:Plantaest/Blog/Feverfew :: Quy trình CI/CD trên Toolforge
Feverfew được triển khai trên Toolforge với quy trình CI/CD cơ bản như sau. Khi có thêm thời gian, có thể áp dụng GitHub Actions để tự động hóa quy trình này.
Cấu trúc thư mục $HOME
Thư mục
caddy: Chứa Caddy v2.8.4jre: Chứa JRE 21 (Termurin) trong thư mục conjdk-21.0.3+9-jrehtml: Chứa các bản build của phần front-end (feverfew-client), gồm các thư mục con đặt tên theo versionjar: Chứa các bản build của phần back-end (feverfew-server), gồm các tệp JAR có kèm theo versionlogs: Chứa các log của phần back-end Quarkus
Tệp
deploy-client.sh: Cập nhật bản build mới cho phần front-enddeploy-server.sh: Cập nhật bản build mới cho phần back-endservice.template: Tệp cấu hình mặc định cho webservice, được sử dụng khi chạy lệnhwebservice start|restartstart.sh: Tệp kích hoạt khởi động máy chủ Caddy và QuarkusCaddyfile: Tệp cấu hình Caddy Server
Local
Phần front-end (feverfew-client)
pnpm build./upload.sh
Phần back-end (feverfew-server)
./mvnw clean package./upload.sh <VERSION>
Remote
LC_CTYPE=en_US.UTF-8 LC_ALL=en_US.UTF-8 ssh -i ~/.ssh/id_ed25519 plantaest@login.toolforge.orgbecome feverfew- Cập nhật version mới:
export VERSION=<VERSION>toolforge envvars create VERSION $VERSION
Deploy front-end
./deploy-client.sh <FILE_LINK>
Deploy back-end
./deploy-server.sh <FILE_LINK>
Start WebService
webservice start|restart- Theo dõi log:
webservice logs -f -l 20