module Utilities
Public Instance Methods
trigger_cronjob(namespace, cronjob_name, restart_policy = 'Never')
click to toggle source
Trigger a cronjob
# File lib/ruby-kubernetes-controller/utilities.rb, line 38 def trigger_cronjob(namespace, cronjob_name, restart_policy = 'Never') cronjob_json = JSON.parse(get_single_namespaced_cronjob(namespace, cronjob_name)) cronjob_json['spec']['jobTemplate']['spec']['template']['spec']['restartPolicy'] = restart_policy cronjob_json['metadata']['name'] += '-' + ('a'..'z').to_a.shuffle[0,8].join json_config = '{ "kind": "Job", "apiVersion": "batch/v1", "metadata": { "name": ' + cronjob_json['metadata']['name'].to_json + ' }, "spec": { "template": { "spec": ' + cronjob_json['spec']['jobTemplate']['spec']['template']['spec'].to_json + ' } } }' create_new_job(namespace, json_config) end