Hudson / Jenkins lưu trữ dữ liệu ở đâu và như thế nào?


18

Tôi đã cài đặt Jenkins trên Ubuntu 10.10 và tôi không thể tìm thấy bất kỳ đề cập nào về việc thiết lập cơ sở dữ liệu để duy trì dữ liệu.

Vì vậy, câu hỏi đầu tiên là dữ liệu được lưu trữ ở đâu và thứ hai, chúng ta có thể thiết lập Hudson / Jenkins với myQuery không? hoặc cơ sở dữ liệu tương tự?


Trong một hệ thống tập tin, thông thường, một cái gì đó như /var/lib/jenkins/, /var/jenkins_home/hoặc /home/jenkins/.
Ondra ižka

Câu trả lời:


11

Hudson / Jenkins không hoạt động theo cách đó. Nó lưu cấu hình và thông tin công việc /var/lib/jenkinstheo mặc định (nếu bạn đang sử dụng gói .deb). Nếu bạn muốn thiết lập tính bền bỉ cho một ứng dụng cụ thể, đó là điều bạn sẽ muốn tự xử lý - Hudson là một máy chủ tích hợp liên tục, không phải là khung kiểm tra.

Kiểm tra bài viết Wiki về Tích hợp liên tục để biết tổng quan về những gì mong đợi.


2
@Redmumba Tôi hiểu Máy chủ CI của mình, nhưng tôi chỉ xem xét khả năng nó được sử dụng để kiểm tra đơn vị và duy trì kết quả trong cơ sở dữ liệu thay vì các tệp flar. Vì Jenkins CÓ THỂ được sử dụng để lái xe và hiển thị các bài kiểm tra. Có suy nghĩ gì không?
kamal

Bản dựng không chỉ là một bản biên dịch (hoặc các biến thể ngôn ngữ động của nó). Bản dựng có thể bao gồm phần tổng hợp, kiểm tra, kiểm tra và triển khai trong số những thứ khác. Bản dựng đóng vai trò là quá trình kết hợp mã nguồn với nhau và xác minh rằng phần mềm hoạt động như một đơn vị gắn kết.
kamal

1
Như tôi đã nói, Jenkins chỉ là một máy chủ CI - nó không phải là một khung. Đối với tất cả các mục đích và mục đích, Jenkins chỉ chạy các tập lệnh mà bạn chỉ định - nó không quan tâm đến việc lưu trữ liên tục, ngôn ngữ bạn sử dụng hoặc thậm chí cả những gì bạn đang làm. Đó là nơi tôi nghĩ rằng việc ngắt kết nối là - Jenkins không cung cấp dung lượng lưu trữ liên tục cho ứng dụng của bạn, v.v.
Andrew M.

1
ref: từ cuốn sách "Tích hợp liên tục: Nhiều người coi CI mà không tự động, kiểm tra liên tục không phải là CI. Chúng tôi không thể đồng ý nhiều hơn. Nếu không có kiểm tra tự động, rất khó để các nhà phát triển hoặc các bên liên quan khác của dự án có niềm tin vào thay đổi phần mềm. nhà phát triển trên các dự án sử dụng hệ thống CI sử dụng các công cụ kiểm tra đơn vị như JUnit, NUnit hoặc các khung xUnit khác để chạy thử nghiệm. Ngoài ra, bạn có thể chạy các loại thử nghiệm khác nhau từ hệ thống CI để tăng tốc các bản dựng của mình. đơn vị, thành phần, hệ thống, tải / hiệu suất, bảo mật và các thứ khác.
kamal

1
Đúng; Vì vậy, chúng tôi trên cùng một trang. Jenkins điều hành những thứ này - nó không quản lý các lớp kiên trì, khung kiểm tra, công cụ xây dựng (trừ kiến), v.v. Bạn sẽ cần xây dựng lớp kiên trì và kiểm tra riêng. Jenkins có thể vẽ biểu đồ không đáng tin nếu chúng được xuất ra ở định dạng xunit, đây là điều mà các khung kiểm tra Java cung cấp; nhiều ngôn ngữ khác (như mũi của Python) cũng sẽ xuất ra ở định dạng đó.
Andrew M.

6

Jenkins có vẻ như đang lưu trữ dữ liệu, dựa trên những gì tập lệnh của bạn đang làm và làm thế nào.

Làm ví dụ; các tập lệnh chạy các bản dựng cam kết hàng ngày của bạn có thể được thiết lập để xử lý các kết quả "đạt / không đạt" cho Jenkins để lưu trữ trong tệp XML. Sau đó, nếu bạn quan tâm đến việc đưa ra các kết quả "vượt qua / thất bại" lịch sử và sử dụng chúng ở đâu đó ngoài GUI của Jenkins, bạn có thể thực hiện cuộc gọi vào API Jenkins và nhận lại XML đó. Phân tích cú pháp và bạn đã có dữ liệu bạn cần.

Nhưng - Khác với việc này, Jenkins không có hệ thống kho lưu trữ nào cả.

Ngoài ra, sau đây là thông tin api của jenkins: https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API


2

Câu trả lời là jenkins sẽ không thiết lập điều này cho bạn. Bạn cần nói cho nó cách thiết lập môi trường và cách thực hiện các kiểm tra của nó. Điều này thường được thực hiện trong phần các bước xây dựng. Nếu bạn sẽ cung cấp thêm thông tin về việc bạn đang sử dụng nền tảng nào thì có lẽ chúng tôi có thể cung cấp cho bạn câu trả lời cụ thể hơn. Bạn có thể có một tập lệnh shell sẽ cài đặt ứng dụng của bạn và chạy thử nghiệm, và sau đó bạn gọi nó từ hudson. Làm cho dữ liệu đầu ra của người chạy thử nghiệm theo cách thân thiện với hudson để cuối cùng nhận được kết quả thử nghiệm của bạn vào webUI để xem những dữ liệu đó.


2

Nó lưu trữ dữ liệu trong thư mục nhà của bạn trong một .jenkins thư mục. Bạn có thể tìm thấy tất cả các thông tin liên quan đến bản dựng của bạn trong thư mục này.

Jenkins không cung cấp hỗ trợ xây dựng để kết nối với bất kỳ cơ sở dữ liệu nào.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.