lib/cron_kubernetes/cron_tab.rb in cron-kubernetes-0.1.0 vs lib/cron_kubernetes/cron_tab.rb in cron-kubernetes-1.1.0

- old
+ new

@@ -1,17 +1,10 @@ # frozen_string_literal: true module CronKubernetes # The "table" of Kubernetes CronJobs that we manage in the cluster. class CronTab - attr_reader :client - private :client - - def initialize - @client = CronKubernetes::KubernetesClient.new.batch_beta1_client - end - # "Apply" the new configuration # - remove from cluster any cron_jobs that are no longer in the schedule # - add new jobs # - update cron_jobs that exist (deleting a cron_job deletes the job and pod) def update(schedule = nil) @@ -22,12 +15,16 @@ change.each { |job| update_cron_job(job) } end private + def client + @client ||= CronKubernetes::KubernetesClient.new.batch_beta1_client + end + # Define a label for our jobs based on an identifier def label_selector - {"cron-kubernetes-identifier" => CronKubernetes.identifier} + {label_selector: "cron-kubernetes-identifier=#{CronKubernetes.identifier}"} end # Find all k8s CronJobs by our label for the identifier def current_cron_jobs client.get_cron_jobs(label_selector)