@@ -17,7 +17,8 @@ use http::HeaderValue;
1717use k8s_openapi:: {
1818 api:: {
1919 apps:: v1:: Deployment ,
20- core:: v1:: { Affinity , ResourceRequirements , Service , Toleration } ,
20+ core:: v1:: { Affinity , ConfigMap , ResourceRequirements , Service , Toleration } ,
21+ networking:: v1:: NetworkPolicy ,
2122 } ,
2223 apiextensions_apiserver:: pkg:: apis:: apiextensions:: v1:: CustomResourceColumnDefinition ,
2324} ;
@@ -335,14 +336,14 @@ async fn run(args: Args) -> Result<(), anyhow::Error> {
335336 clusterd_node_selector : args. clusterd_node_selector ,
336337 clusterd_affinity : args. clusterd_affinity ,
337338 clusterd_tolerations : args. clusterd_tolerations ,
338- console_node_selector : args. console_node_selector ,
339- console_affinity : args. console_affinity ,
340- console_tolerations : args. console_tolerations ,
341- console_default_resources : args. console_default_resources ,
339+ console_node_selector : args. console_node_selector . clone ( ) ,
340+ console_affinity : args. console_affinity . clone ( ) ,
341+ console_tolerations : args. console_tolerations . clone ( ) ,
342+ console_default_resources : args. console_default_resources . clone ( ) ,
342343 image_pull_policy : args. image_pull_policy ,
343344 network_policies_internal_enabled : args. network_policies_internal_enabled ,
344345 network_policies_ingress_enabled : args. network_policies_ingress_enabled ,
345- network_policies_ingress_cidrs : args. network_policies_ingress_cidrs ,
346+ network_policies_ingress_cidrs : args. network_policies_ingress_cidrs . clone ( ) ,
346347 network_policies_egress_enabled : args. network_policies_egress_enabled ,
347348 network_policies_egress_cidrs : args. network_policies_egress_cidrs ,
348349 environmentd_cluster_replica_sizes : args. environmentd_cluster_replica_sizes ,
@@ -399,12 +400,12 @@ async fn run(args: Args) -> Result<(), anyhow::Error> {
399400 enable_security_context : args. enable_security_context ,
400401 enable_prometheus_scrape_annotations : args. enable_prometheus_scrape_annotations ,
401402 image_pull_policy : args. image_pull_policy ,
402- scheduler_name : args. scheduler_name ,
403+ scheduler_name : args. scheduler_name . clone ( ) ,
403404 balancerd_node_selector : args. balancerd_node_selector ,
404405 balancerd_affinity : args. balancerd_affinity ,
405406 balancerd_tolerations : args. balancerd_tolerations ,
406407 balancerd_default_resources : args. balancerd_default_resources ,
407- default_certificate_specs : args. default_certificate_specs ,
408+ default_certificate_specs : args. default_certificate_specs . clone ( ) ,
408409 environmentd_sql_port : args. environmentd_sql_port ,
409410 environmentd_http_port : args. environmentd_http_port ,
410411 balancerd_sql_port : args. balancerd_sql_port ,
@@ -440,6 +441,67 @@ async fn run(args: Args) -> Result<(), anyhow::Error> {
440441 . run ( ) ,
441442 ) ;
442443
444+ mz_ore:: task:: spawn (
445+ || "console controller" ,
446+ k8s_controller:: Controller :: namespaced_all (
447+ client. clone ( ) ,
448+ controller:: console:: Context :: new (
449+ controller:: console:: Config {
450+ enable_security_context : args. enable_security_context ,
451+ enable_prometheus_scrape_annotations : args. enable_prometheus_scrape_annotations ,
452+ image_pull_policy : args. image_pull_policy ,
453+ scheduler_name : args. scheduler_name ,
454+ console_node_selector : args. console_node_selector ,
455+ console_affinity : args. console_affinity ,
456+ console_tolerations : args. console_tolerations ,
457+ console_default_resources : args. console_default_resources ,
458+ network_policies_ingress_enabled : args. network_policies_ingress_enabled ,
459+ network_policies_ingress_cidrs : args. network_policies_ingress_cidrs ,
460+ default_certificate_specs : args. default_certificate_specs ,
461+ console_http_port : args. console_http_port ,
462+ balancerd_http_port : args. balancerd_http_port ,
463+ } ,
464+ client. clone ( ) ,
465+ )
466+ . await ,
467+ watcher:: Config :: default ( ) . timeout ( 29 ) ,
468+ )
469+ . with_controller ( |controller| {
470+ controller
471+ . owns (
472+ Api :: < Deployment > :: all ( client. clone ( ) ) ,
473+ watcher:: Config :: default ( )
474+ . labels ( "materialize.cloud/mz-resource-id" )
475+ . timeout ( 29 ) ,
476+ )
477+ . owns (
478+ Api :: < Service > :: all ( client. clone ( ) ) ,
479+ watcher:: Config :: default ( )
480+ . labels ( "materialize.cloud/mz-resource-id" )
481+ . timeout ( 29 ) ,
482+ )
483+ . owns (
484+ Api :: < Certificate > :: all ( client. clone ( ) ) ,
485+ watcher:: Config :: default ( )
486+ . labels ( "materialize.cloud/mz-resource-id" )
487+ . timeout ( 29 ) ,
488+ )
489+ . owns (
490+ Api :: < NetworkPolicy > :: all ( client. clone ( ) ) ,
491+ watcher:: Config :: default ( )
492+ . labels ( "materialize.cloud/mz-resource-id" )
493+ . timeout ( 29 ) ,
494+ )
495+ . owns (
496+ Api :: < ConfigMap > :: all ( client. clone ( ) ) ,
497+ watcher:: Config :: default ( )
498+ . labels ( "materialize.cloud/mz-resource-id" )
499+ . timeout ( 29 ) ,
500+ )
501+ } )
502+ . run ( ) ,
503+ ) ;
504+
443505 info ! ( "All tasks started successfully." ) ;
444506
445507 future:: pending ( ) . await
0 commit comments