29 lines
777 B
Ruby
29 lines
777 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Gitlab
|
|
module Kubernetes
|
|
module KubectlCmd
|
|
class << self
|
|
def delete(*args)
|
|
%w(kubectl delete).concat(args).shelljoin
|
|
end
|
|
|
|
def apply_file(filename, *args)
|
|
raise ArgumentError, "filename is not present" unless filename.present?
|
|
|
|
%w(kubectl apply -f).concat([filename], args).shelljoin
|
|
end
|
|
|
|
def delete_crds_from_group(group)
|
|
api_resources_args = %w(-o name --api-group).push(group)
|
|
|
|
PodCmd.retry_command(api_resources(*api_resources_args) + " | xargs -r " + delete('--ignore-not-found', 'crd'))
|
|
end
|
|
|
|
def api_resources(*args)
|
|
%w(kubectl api-resources).concat(args).shelljoin
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|