2012-12-19 29 views
9

Từ Oozie CLI tôi muốn làm một cái gì đó như thế này:Tôi có thể gửi công việc oozie với nhiều tệp cấu hình không?

oozie job -oozie http://host:port/oozie -config jobConfig.properties, baseConfig.properties -submit 

Tôi có rất nhiều công việc khác nhau Tôi đang chạy, nơi một phần của tập tin .properties là giống hệt nhau. Tôi muốn có thể di chuyển phần được sao chép đó thành một tệp baseConfig.properties duy nhất và kết hợp phần này với phần công việc cụ thể khi tôi gửi công việc.

Trả lời

8

Nếu số lượng thuộc tính ghi đè nhỏ, bạn chỉ có thể tham khảo tệp cấu hình cơ sở, sau đó sử dụng ký hiệu -Dprop1=value cho mỗi thuộc tính bạn muốn tùy chỉnh.

Nếu không tôi nghĩ rằng bạn có hai (có thể là ba) lựa chọn thay thế (như bạn không thể vượt qua nhiều tùy chọn cấu hình cho khách hàng OOZIE hiện hành):

  1. Tạo một kịch bản mà concatenates các cơ sở và công việc của các file tài sản cụ thể với nhau, và chạy oozie với tên của tập tin sáp nhập
  2. Sử dụng nguồn từ OozieCLI như là một điểm khởi đầu, hãy viết một lớp mở rộng có thể xử lý một giá trị CSV cho các tùy chọn -config, hoặc có thể xử lý nhiều -config trường hợp tranh cãi
  3. Bạn có thể di chuyển các thuộc tính phổ biến thành các tệp jobXml tĩnh cho mỗi hành động, sau đó bạn sẽ chỉ cần một tệp cấu hình duy nhất cho sự khác biệt thực sự giữa công việc đang chạy.
+0

Cảm ơn, Chris. Tôi đã loại nghi ngờ tôi sẽ phải làm cho kịch bản xây dựng của tôi nối hai tập tin, nhưng bạn đã cho tôi một loạt các lựa chọn tốt khác. –

+0

@TimGoodman bạn đã làm gì? Tôi có một trường hợp sử dụng tương tự. –

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