diff --git a/app/models/miq_ui_worker.rb b/app/models/miq_ui_worker.rb index 520f1069d37..2b24ebc9f4b 100644 --- a/app/models/miq_ui_worker.rb +++ b/app/models/miq_ui_worker.rb @@ -36,4 +36,11 @@ def container_image_name def container_image ENV["UI_WORKER_IMAGE"] || default_image end + + def configure_service_worker_deployment(definition) + super + + definition[:spec][:template][:spec][:containers].first[:volumeMounts] << {:name => "ui-httpd-configs", :mountPath => "/etc/httpd/conf.d"} + definition[:spec][:template][:spec][:volumes] << {:name=>"ui-httpd-configs", :configMap=>{:name=>"ui-httpd-configs", :defaultMode=>420}} + end end diff --git a/app/models/miq_worker/service_worker.rb b/app/models/miq_worker/service_worker.rb index 5e11097ceba..3a82721c76d 100644 --- a/app/models/miq_worker/service_worker.rb +++ b/app/models/miq_worker/service_worker.rb @@ -9,21 +9,9 @@ def create_container_objects orchestrator.create_deployment(worker_deployment_name) do |definition| configure_worker_deployment(definition) + configure_service_worker_deployment(definition) - definition[:spec][:template][:metadata][:labels].merge!(service_label) - - container = definition[:spec][:template][:spec][:containers].first - container[:ports] = [{:containerPort => SERVICE_PORT}] - container[:env] << {:name => "PORT", :value => container_port.to_s} - container[:env] << {:name => "BINDING_ADDRESS", :value => "0.0.0.0"} - add_readiness_probe(container) - container[:volumeMounts] ||= [] - definition[:spec][:template][:spec][:volumes] ||= [] - - if kind_of?(MiqUiWorker) - container[:volumeMounts] << {:name => "ui-httpd-configs", :mountPath => "/etc/httpd/conf.d"} - definition[:spec][:template][:spec][:volumes] << {:name=>"ui-httpd-configs", :configMap=>{:name=>"ui-httpd-configs", :defaultMode=>420}} - end + add_readiness_probe(definition[:spec][:template][:spec][:containers].first) end scale_deployment @@ -46,6 +34,17 @@ def add_readiness_probe(container_definition) } end + def configure_service_worker_deployment(definition) + definition[:spec][:template][:metadata][:labels].merge!(service_label) + + container = definition[:spec][:template][:spec][:containers].first + container[:ports] = [{:containerPort => SERVICE_PORT}] + container[:env] << {:name => "PORT", :value => container_port.to_s} + container[:env] << {:name => "BINDING_ADDRESS", :value => "0.0.0.0"} + container[:volumeMounts] ||= [] + definition[:spec][:template][:spec][:volumes] ||= [] + end + def service_label {:service => worker_deployment_name.delete_prefix(deployment_prefix)} end