class Gitlab::QA::Service::KubernetesCluster
def admin_user
def admin_user @admin_user ||= "#{@provider.cluster_name}-admin" end
def apply_manifest(manifest)
def apply_manifest(manifest) shell('kubectl apply -f -', stdin_data: manifest) end
def cluster_name
def cluster_name @provider.cluster_name end
def create!
def create! validate_dependencies @provider.validate_dependencies @provider.setup self end
def create_registry_mirror
def create_registry_mirror @provider.create_registry_mirror end
def create_secret(secret, secret_name)
def create_secret(secret, secret_name) shell("kubectl create secret generic #{secret_name} --from-literal=token='#{secret}'", mask_secrets: [secret]) end
def initialize(provider_class: QA::Service::ClusterProvider::K3d)
def initialize(provider_class: QA::Service::ClusterProvider::K3d) @provider = provider_class.new end
def remove!
def remove! @provider.teardown end
def to_s
def to_s cluster_name end
def validate_dependencies
def validate_dependencies find_executable('kubectl') || raise("You must first install `kubectl` executable to run these tests.") end