2011-03-28 37 views
12

Bản sao có thể xảy ra:
Setting up a deployment/build/CI cycle for PHP projects
Recommended server for Continuous Integration for PHP ProjectCông cụ tích hợp liên tục nào phù hợp với php?

Xin chào, chàng trai! Gần đây tôi đã gặp phải sự cần thiết phải tích hợp liên tục cho một số dự án của tôi. Và, với sự ngạc nhiên của tôi, có nhiều công cụ cho mục đích này như CruiseControl với plugin PhpUnderControl, Xinc (viết bằng PHP), Hudson với rất nhiều chức năng, v.v. Tôi đã nghiên cứu vấn đề và, theo như tôi đã hiểu, cài đặt và cấu hình một công cụ như vậy mất khá nhiều thời gian. Vì vậy, nó sẽ rất dissapointing để dành nhiều thời gian để thiết lập tất cả mọi thứ lên và nhận biết rằng công cụ thiếu một số chức năng quan trọng. Tôi đề cập đến những người có kinh nghiệm về vấn đề này và có thể đưa ra một lời khuyên hợp lý. Cảm ơn bạn!

Cập nhật 26.04.2017: Năm trôi qua, tôi vẫn sử dụng CI, nhưng bị bỏ rơi Jenkins ủng hộ Gitlab CI: có vẻ đơn giản hơn, công việc CI có thể được cấu hình trực tiếp trong kho dự án. Và cùng với Docker, tôi tin rằng, đó là một giải pháp rất mạnh mẽ có thể được điều chỉnh cho hầu như bất kỳ loại dự án nào.

+3

Tôi thích PHPCI: https://www.phptesting.org/ – DanFromGermany

Trả lời

13

Jenkins (trước đây là Hudson) là giải pháp tốt nhất. Nó có tích hợp PHP tốt đẹp (xem http://jenkins-php.org/)

+0

thanx, tôi đã cài đặt Jenkins và nó kháng cáo cho tôi cho đến nay – Yaronius

3

tôi không thể cung cấp cho bạn một câu trả lời dứt khoát như những gì công cụ là tốt nhất (đó là một câu hỏi rất chủ quan, và thậm chí nếu có một nhà lãnh đạo rõ ràng, nó có thể không vẫn là tốt nhất trong tương lai), nhưng tôi sẽ làm điều tốt nhất tiếp theo và cho bạn biết những gì chúng tôi đang chạy:

Chúng tôi có cài đặt Hudson chạy một bộ tập lệnh Phing. Các kịch bản Phing chạy PHPUnit (và một vài công cụ khác). Một số bài kiểm tra PHPUnit là các bài kiểm tra đơn vị độc lập; những người khác chạy Selenium và kiểm tra phần mềm trong nhiều trình duyệt khác nhau.

Từ những gì tôi thu thập, điều này có vẻ là một thiết lập khá phổ biến và nó hoạt động tốt cho chúng tôi.

Điều đó nói rằng, chúng tôi sử dụng nhiều hơn chỉ là PHP trong nhà - chúng tôi cũng có các nhóm Java và .Net. Một số công cụ có thể đã được chọn để giúp chúng tôi duy trì một giao diện nhất quán cho việc tích hợp liên tục của chúng tôi qua các nhóm khác nhau.

Hy vọng điều đó sẽ hữu ích.

+2

Cảm ơn bạn đã trả lời, Spudley! Đối với câu hỏi này là chủ quan, tôi đồng ý. Nhưng khi tôi thấy nhiều câu trả lời chủ quan trùng khớp, tôi cho rằng, tôi thấy một số sự kiện khách quan: nếu hầu hết các nhà phát triển php có kinh nghiệm chọn công cụ này, điều đó có nghĩa là công cụ này thực sự hữu ích. – Yaronius

Các vấn đề liên quan