Top Level Namespace

Included Modules

Extended Modules

Defined in:

Constant Summary

BASE_CONFIG = "./config.yml"
CHAOS_CONTAINER_KILL = Base64.decode_string("YXBpVmVyc2lvbjogY2hhb3MtbWVzaC5vcmcvdjFhbHBoYTEKa2luZDogUG9kQ2hhb3MKbWV0YWRh\ndGE6CiAgbmFtZTogY29udGFpbmVyLWtpbGwKICBuYW1lc3BhY2U6IGRlZmF1bHQKc3BlYzoKICBh\nY3Rpb246IGNvbnRhaW5lci1raWxsCiAgbW9kZTogb25lCiAgY29udGFpbmVyTmFtZTogInRlc3Qt\nc2VsZWN0b3IiCiAgc2VsZWN0b3I6CiAgICBsYWJlbFNlbGVjdG9yczoKICAgICAgJ3Rlc3Qtc2Vs\nZWN0b3InOiAndGVzdC1zZWxlY3RvcicKICBzY2hlZHVsZXI6CiAgICBjcm9uOiAiQGV2ZXJ5IDMw\ncyIK\n")
CHAOS_CPU_HOG = Base64.decode_string("YXBpVmVyc2lvbjogY2hhb3MtbWVzaC5vcmcvdjFhbHBoYTEKa2luZDogU3RyZXNzQ2hhb3MKbWV0\nYWRhdGE6CiAgbmFtZTogY3B1LWhvZy10ZXN0CiAgbmFtZXNwYWNlOiBkZWZhdWx0CnNwZWM6CiAg\nbW9kZTogb25lCiAgc2VsZWN0b3I6CiAgICBsYWJlbFNlbGVjdG9yczoKICAgICAgJ3Rlc3Qtc2Vs\nZWN0b3InOiAndGVzdC1zZWxlY3RvcicKICBzdHJlc3NvcnM6IAogICAgY3B1OiAKICAgICAgd29y\na2VyczogMQogICAgICBsb2FkOiAxMDAKICBkdXJhdGlvbjogIjMwcyIKICBzY2hlZHVsZXI6CiAg\nICBjcm9uOiAiQGV2ZXJ5IDJtIgo=\n")
CHAOS_MESH_OFFLINE_DIR = "#{TarClient::TAR_REPOSITORY_DIR}/chaos-mesh_chaos-mesh"
CHAOS_MESH_VERSION = "v0.8.0"
CHAOS_NETWORK_LOSS = Base64.decode_string("YXBpVmVyc2lvbjogY2hhb3MtbWVzaC5vcmcvdjFhbHBoYTEKa2luZDogTmV0d29ya0NoYW9zCm1l\ndGFkYXRhOgogIG5hbWU6IG5ldHdvcmstbG9zcy10ZXN0CiAgbmFtZXNwYWNlOiBkZWZhdWx0CnNw\nZWM6CiAgYWN0aW9uOiBsb3NzCiAgbW9kZTogb25lCiAgc2VsZWN0b3I6CiAgICBsYWJlbFNlbGVj\ndG9yczoKICAgICAgJ3Rlc3Qtc2VsZWN0b3InOiAndGVzdC1zZWxlY3RvcicKICBsb3NzOgogICAg\nbG9zczogJzEwMCcKICAgIGNvcnJlbGF0aW9uOiAnMTAwJwogIGR1cmF0aW9uOiAnNDBzJwogIHNj\naGVkdWxlcjoKICAgIGNyb246ICdAZXZlcnkgNjAwcycK\n")
CNF_DIR = "cnfs"
CONFIG_FILE = "cnf-testsuite.yml"
CRI_TOOLS = Base64.decode_string("YXBpVmVyc2lvbjogYXBwcy92MQpraW5kOiBEYWVtb25TZXQKbWV0YWRhdGE6CiAgICBuYW1lOiBj\ncmktdG9vbHMKc3BlYzoKICBzZWxlY3RvcjoKICAgIG1hdGNoTGFiZWxzOgogICAgICBuYW1lOiBj\ncmktdG9vbHMKICB0ZW1wbGF0ZToKICAgIG1ldGFkYXRhOgogICAgICBsYWJlbHM6CiAgICAgICAg\nbmFtZTogY3JpLXRvb2xzCiAgICBzcGVjOgogICAgICBjb250YWluZXJzOgogICAgICAgIC0gbmFt\nZTogY3JpLXRvb2xzCiAgICAgICAgICBpbWFnZTogY29uZm9ybWFuY2UvY3JpLXRvb2xzOmxhdGVz\ndAogICAgICAgICAgY29tbWFuZDogWyIvYmluL3NoIl0KICAgICAgICAgIGFyZ3M6IFsiLWMiLCAi\nc2xlZXAgaW5maW5pdHkiXQogICAgICAgICAgdm9sdW1lTW91bnRzOgogICAgICAgICAgLSBtb3Vu\ndFBhdGg6IC9ydW4vY29udGFpbmVyZC9jb250YWluZXJkLnNvY2sKICAgICAgICAgICAgbmFtZTog\nY29udGFpbmVyZC12b2x1bWUKICAgICAgdm9sdW1lczoKICAgICAgLSBuYW1lOiBjb250YWluZXJk\nLXZvbHVtZQogICAgICAgIGhvc3RQYXRoOgogICAgICAgICAgcGF0aDogL3Zhci9ydW4vY29udGFp\nbmVyZC9jb250YWluZXJkLnNvY2sK\n")

CRI_TOOLS = File.read("./tools/cri-tools/manifest.yml")

DEFAULT_POINTSFILENAME = "points_v1.yml"

todo move to helm module CHART_YAML = "Chart.yaml"

EMPTY_JSON = JSON.parse("{}")
FAILED = "failed"
IGNORED_SECRET_TYPES = ["kubernetes.io/service-account-token", "kubernetes.io/dockercfg", "kubernetes.io/dockerconfigjson", "helm.sh/release.v1"]
LOGGING = LogginGenerator.new
NA = "na"
NODE_FAILED_VALUES = Base64.decode_string("dG9sZXJhdGlvbnM6Ci0ga2V5OiAibm9kZS5rdWJlcm5ldGVzLmlvL3VucmVhY2hhYmxlIgogIG9w\nZXJhdG9yOiAiRXhpc3RzIgogIGVmZmVjdDogIk5vRXhlY3V0ZSIKICB0b2xlcmF0aW9uU2Vjb25k\nczogMQotIGtleTogIm5vZGUua3ViZXJuZXRlcy5pby9ub3QtcmVhZHkiCiAgb3BlcmF0b3I6ICJF\neGlzdHMiCiAgZWZmZWN0OiAiTm9FeGVjdXRlIgogIHRvbGVyYXRpb25TZWNvbmRzOiAxCgo=\n")

NODE_FAILED_VALUES = File.read("./embedded_files/node_failure_values.yml")

OFFLINE_MANIFESTS_PATH = "/tmp/manifests"
PASSED = "passed"
POINTSFILE = Base64.decode_string("LS0tCi0gbmFtZTogZGVmYXVsdF9zY29yaW5nCiAgdGFnczogCiAgcGFzczogNQogIGZhaWw6IC0x\nIAogIHNraXBwZWQ6IDAgCiAgbmE6IDAgCgotIG5hbWU6IHJlYXNvbmFibGVfaW1hZ2Vfc2l6ZQog\nIHRhZ3M6IG1pY3Jvc2VydmljZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiByZWFzb25hYmxl\nX3N0YXJ0dXBfdGltZSAKICB0YWdzOiBtaWNyb3NlcnZpY2UsIGR5bmFtaWMsIHdvcmtsb2FkCi0g\nbmFtZTogc2luZ2xlX3Byb2Nlc3NfdHlwZSAKICB0YWdzOiBtaWNyb3NlcnZpY2UsIGR5bmFtaWMs\nIHdvcmtsb2FkCgojLSBuYW1lOiBjbmlfc3BlYyAKIyAgdGFnczogY29tcGF0aWJpbGl0eSwgZHlu\nYW1pYwojLSBuYW1lOiBhcGlfc25vb3BfYWxwaGEgCiMgIHRhZ3M6IGNvbXBhdGliaWxpdHksIGR5\nbmFtaWMKIy0gbmFtZTogYXBpX3Nub29wX2JldGEgCiMgIHRhZ3M6IGNvbXBhdGliaWxpdHksIGR5\nbmFtaWMKIy0gbmFtZTogYXBpX3Nub29wX2dlbmVyYWxfYXBpcyAKIyAgdGFnczogY29tcGF0aWJp\nbGl0eSwgZHluYW1pYwoKIy0gbmFtZTogcmVzZXRfY25mIAojICB0YWdzOiBzdGF0ZSwgZHluYW1p\nYywgY29uZmlndXJhdGlvbl9saWZlY3ljbGUKIy0gbmFtZTogY2hlY2tfcmVhcGVkIAojICB0YWdz\nOiBzdGF0ZSwgZHluYW1pYywgY29uZmlndXJhdGlvbl9saWZlY3ljbGUKCi0gbmFtZTogcHJpdmls\nZWdlZCAKICB0YWdzOiBzZWN1cml0eSwgZHluYW1pYywgd29ya2xvYWQKICByZXF1aXJlZDogdHJ1\nZQojLSBuYW1lOiBzaGVsbHMgCiMgIHRhZ3M6IHNlY3VyaXR5LCBkeW5hbWljCiMtIG5hbWU6IHBy\nb3RlY3RlZF9hY2Nlc3MgCiMgIHRhZ3M6IHNlY3VyaXR5LCBkeW5hbWljCgotIG5hbWU6IGluY3Jl\nYXNlX2NhcGFjaXR5IAogIHRhZ3M6IHNjYWxhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAogIHBh\nc3M6IDEwCiAgZmFpbDogLTUgCi0gbmFtZTogZGVjcmVhc2VfY2FwYWNpdHkgCiAgdGFnczogc2Nh\nbGFiaWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkCiAgcGFzczogMTAKICBmYWlsOiAtNSAKIy0gbmFt\nZTogc21hbGxfYXV0b3NjYWxpbmcgCiMgIHRhZ3M6IHNjYWxhYmlsaXR5LCBkeW5hbWljLCB3b3Jr\nbG9hZAojLSBuYW1lOiBsYXJnZV9hdXRvc2NhbGluZyAKIyAgdGFnczogc2NhbGFiaWxpdHksIGR5\nbmFtaWMsIHdvcmtsb2FkCi0gbmFtZTogbmV0d29ya19jaGFvcyAKICB0YWdzOiBzY2FsYWJpbGl0\neSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiBwb2RfbmV0d29ya19sYXRlbmN5CiAgdGFnczog\nc2NhbGFiaWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkCi0gbmFtZTogZGlza19maWxsCiAgdGFnczog\nc2NhbGFiaWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkICAKIy0gbmFtZTogZXh0ZXJuYWxfcmV0cnkg\nCiMgIHRhZ3M6IHNjYWxhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAoKIy0gbmFtZTogdmVyc2lv\nbmVkX2hlbG1fY2hhcnQKIyAgdGFnczogY29uZmlndXJhdGlvbl9saWZlY3ljbGUsIGR5bmFtaWMs\nIHdvcmtsb2FkCi0gbmFtZTogaXBfYWRkcmVzc2VzCiAgcGFzczogMAogIGZhaWw6IC0xIAogIHRh\nZ3M6IGNvbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBzdGF0aWMsIHdvcmtsb2FkCi0gbmFtZTogbGl2\nZW5lc3MKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1pYywgd29ya2xvYWQK\nLSBuYW1lOiByZWFkaW5lc3MKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1p\nYywgd29ya2xvYWQKIy0gbmFtZTogbm9fdm9sdW1lX3dpdGhfY29uZmlndXJhdGlvbgojICB0YWdz\nOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1pYwotIG5hbWU6IHJvbGxpbmdfdXBkYXRl\nCiAgdGFnczogY29uZmlndXJhdGlvbl9saWZlY3ljbGUsIGR5bmFtaWMsIHdvcmtsb2FkCi0gbmFt\nZTogcm9sbGluZ19kb3duZ3JhZGUKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHlu\nYW1pYywgd29ya2xvYWQKLSBuYW1lOiByb2xsaW5nX3ZlcnNpb25fY2hhbmdlCiAgdGFnczogY29u\nZmlndXJhdGlvbl9saWZlY3ljbGUsIGR5bmFtaWMsIHdvcmtsb2FkCi0gbmFtZTogcm9sbGJhY2sK\nICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1l\nOiBub2RlcG9ydF9ub3RfdXNlZAogIHRhZ3M6IGNvbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBkeW5h\nbWljLCB3b3JrbG9hZAotIG5hbWU6IGhhcmRjb2RlZF9pcF9hZGRyZXNzZXNfaW5fazhzX3J1bnRp\nbWVfY29uZmlndXJhdGlvbgogIHRhZ3M6IGNvbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBkeW5hbWlj\nLCB3b3JrbG9hZAotIG5hbWU6IHNlY3JldHNfdXNlZAogIHRhZ3M6IGNvbmZpZ3VyYXRpb25fbGlm\nZWN5Y2xlLCBkeW5hbWljLCB3b3JrbG9hZAogIHBhc3M6IDUKICBmYWlsOiAwIAotIG5hbWU6IGlt\nbXV0YWJsZV9jb25maWdtYXAKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1p\nYywgd29ya2xvYWQKICBwYXNzOiAxCiAgZmFpbDogMCAKCiMtIG5hbWU6IGZsdWVudGRfdHJhZmZp\nYwojICB0YWdzOiBvYnNlcnZhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAojLSBuYW1lOiBqYWVn\nZXJfdHJhZmZpYwojICB0YWdzOiBvYnNlcnZhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAojLSBu\nYW1lOiBwcm9tZXRoZXVzX3RyYWZmaWMKIyAgdGFnczogb2JzZXJ2YWJpbGl0eSwgZHluYW1pYywg\nd29ya2xvYWQKIy0gbmFtZTogb3BlbnRlbGVtZXRyeV9jb21wYXRpYmxlCiMgIHRhZ3M6IG9ic2Vy\ndmFiaWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkCiMtIG5hbWU6IG9wZW5tZXRyaWNfY29tcGF0aWJs\nZQojICB0YWdzOiBvYnNlcnZhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAoKLSBuYW1lOiBoZWxt\nX2RlcGxveQogIHRhZ3M6IGluc3RhbGxhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6\nIGluc3RhbGxfc2NyaXB0X2hlbG0KICB0YWdzOiBpbnN0YWxsYWJpbGl0eSwgc3RhdGljLCB3b3Jr\nbG9hZAotIG5hbWU6IGhlbG1fY2hhcnRfdmFsaWQKICB0YWdzOiBpbnN0YWxsYWJpbGl0eSwgZHlu\nYW1pYywgd29ya2xvYWQKLSBuYW1lOiBoZWxtX2NoYXJ0X3B1Ymxpc2hlZAogIHRhZ3M6IGluc3Rh\nbGxhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAogIAojIC0gbmFtZTogY2hhb3NfbmV0d29ya19s\nb3NzIAojICAgdGFnczogcmVzaWxpZW5jZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiBjaGFv\nc19jcHVfaG9nCiAgdGFnczogcmVzaWxpZW5jZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiBj\naGFvc19jb250YWluZXJfa2lsbAogIHRhZ3M6IHJlc2lsaWVuY2UsIGR5bmFtaWMsIHdvcmtsb2Fk\nCgotIG5hbWU6IHZvbHVtZV9ob3N0cGF0aF9ub3RfZm91bmQKICB0YWdzOiBzdGF0ZSwgZHluYW1p\nYywgd29ya2xvYWQKLSBuYW1lOiBub19sb2NhbF92b2x1bWVfY29uZmlndXJhdGlvbiAKICB0YWdz\nOiBzdGF0ZSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTogaGFyZHdhcmVfYW5kX3NjaGVkdWxp\nbmcKIyAgdGFnczogaGFyZHdhcmUsIGR5bmFtaWMsIHdvcmtsb2FkCiMtIG5hbWU6IHN0YXRpY19h\nY2Nlc3NpbmdfaGFyZHdhcmUgCiMgIHRhZ3M6IGhhcmR3YXJlLCBzdGF0aWMsIHdvcmtsb2FkCiMt\nIG5hbWU6IGR5bmFtaWNfYWNjZXNzaW5nX2hhcmR3YXJlIAojICB0YWdzOiBoYXJkd2FyZSwgZHlu\nYW1pYywgd29ya2xvYWQKIy0gbmFtZTogZGlyZWN0X2h1Z2VwYWdlcwojICB0YWdzOiBoYXJkd2Fy\nZSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTogcGVyZm9ybWFuY2UKIyAgdGFnczogaGFyZHdh\ncmUsIGR5bmFtaWMsIHdvcmtsb2FkCgotIG5hbWU6IGs4c19jb25mb3JtYW5jZQogIHRhZ3M6IHBs\nYXRmb3JtLCBkeW5hbWljCi0gbmFtZTogd29ya2VyX3JlYm9vdF9yZWNvdmVyeSAKICB0YWdzOiBw\nbGF0Zm9ybSwgcGxhdGZvcm06cmVzaWxpZW5jZSwgZHluYW1pYwotIG5hbWU6IG9jaV9jb21wbGlh\nbnQKICB0YWdzOiBwbGF0Zm9ybSwgcGxhdGZvcm06aGFyZHdhcmVfYW5kX3NjaGVkdWxpbmcsIGR5\nbmFtaWMK\n")
PRIVILEGED_WHITELIST_CONTAINERS = ["chaos-daemon"]
REASONABLE_STARTUP_BUFFER = 10.0
REBOOT_DAEMON = Base64.decode_string("YXBpVmVyc2lvbjogYXBwcy92MQpraW5kOiBEYWVtb25TZXQKbWV0YWRhdGE6CiAgICBuYW1lOiBy\nZWJvb3QKc3BlYzoKICBzZWxlY3RvcjoKICAgIG1hdGNoTGFiZWxzOgogICAgICBuYW1lOiByZWJv\nb3QKICB0ZW1wbGF0ZToKICAgIG1ldGFkYXRhOgogICAgICBsYWJlbHM6CiAgICAgICAgbmFtZTog\ncmVib290CiAgICBzcGVjOgogICAgICBjb250YWluZXJzOgogICAgICAgIC0gbmFtZTogcmVib290\nCiAgICAgICAgICBpbWFnZTogY29uZm9ybWFuY2UvcmVib290X2RhZW1vbjpsYXRlc3QKICAgICAg\nICAgIGNvbW1hbmQ6IFsiL2VudHJ5cG9pbnQuc2giXQogICAgICAgICAgdm9sdW1lTW91bnRzOgog\nICAgICAgICAgLSBtb3VudFBhdGg6IC9zeXNycQogICAgICAgICAgICBuYW1lOiBzeXNycS12b2x1\nbWUKICAgICAgdm9sdW1lczoKICAgICAgLSAgbmFtZTogc3lzcnEtdm9sdW1lCiAgICAgICAgIGhv\nc3RQYXRoOgogICAgICAgICAgIHBhdGg6IC9wcm9jL3N5c3JxLXRyaWdnZXIK\n")
SKIPPED = "skipped"
SONOBUOY_K8S_VERSION = "0.19.0"
SONOBUOY_OS = "linux"
TOOLS_DIR = "tools"
VERBOSE_LOGGING = VerboseLogginGenerator.new

Method Summary

Method Detail

def acceptable_kubectl_version?(kubectl_response, verbose = false) #

Check if client version is not 3 minor versions behind server version


[View source]
def change_capacity(base_replicas, target_replica_count, args, config, resource = {kind: "", metadata: {name: ""}}) #

[View source]
def chaos_template_container_kill #

[View source]
def chaos_template_disk_fill #

[View source]
def chaos_template_pod_delete #

[View source]
def chaos_template_pod_io_stress #

[View source]
def chaos_template_pod_memory_hog #

[View source]
def chaos_template_pod_network_latency #

[View source]
def check_alpha(args) #

if the alpha flag or wip flag is true, then alpha tests should be run


[View source]
def check_alpha #

if the alpha flag or wip flag is true, then alpha tests should be run


[View source]
def check_beta(args) #

if the beta flag or alpha flag is true, then beta tests should be run


[View source]
def check_beta #

if the beta flag or alpha flag is true, then beta tests should be run


[View source]
def check_cnf_config(args) #

[View source]
def check_destructive(args) #

[View source]
def check_destructive #

[View source]
def check_dockerd(wait_count = 1) #

Checks to see if dockerd is already installed. Alternatively

can be used to wait for dockerd is installed by passing a higher wait_count)


[View source]
def check_feature_level(args) #

check feature level e.g. --beta

if no feature level then feature level = ga


[View source]
def check_poc(args) #

[View source]
def check_poc #

[View source]
def check_verbose(args) #

[View source]
def check_wip(args) #

[View source]
def check_wip #

[View source]
def clusterctl_global_response(verbose = false) #

[View source]
def clusterctl_installation(verbose = false) #

todo collection in modules similar to ohai: https://github.com/chef/ohai


[View source]
def clusterctl_local_response(verbose = false) #

[View source]
def clusterctl_version(clusterctl_response, verbose = false) #

[View source]
def configmap_template #

https://www.cloudytuts.com/tutorials/kubernetes/how-to-create-immutable-configmaps-and-secrets/


[View source]
def cpu_chaos_template #

[View source]
def curl_global_response(verbose = false) #

[View source]
def curl_installation(verbose = false) #

[View source]
def curl_local_response(verbose = false) #

[View source]
def curl_version(curl_response, verbose = false) #

[View source]
def dockerd_filename #

[View source]
def dockerd_name_helper #

[View source]
def dockerd_tempname #

[View source]
def dockerd_tempname_helper #

[View source]
def git_global_response(verbose = false) #

[View source]
def git_installation(verbose = false) #

[View source]
def git_local_response(verbose = false) #

[View source]
def git_version(git_response, verbose = false) #

[View source]
def helm_global_response(verbose = false) #

[View source]
def helm_installation(verbose = false) #

TODO put this in a module


[View source]
def helm_local_response(verbose = false) #

[View source]
def helm_v2_version(helm_response) #

[View source]
def helm_v3_version(helm_response) #

[View source]
def helm_version(helm_response, verbose = false) #

[View source]
def image_pull(yml) #

[View source]
def increase_decrease_capacity_failure_msg(target_replicas, emoji) #

[View source]
def kubectl_global_response(verbose = false) #

[View source]
def kubectl_installation(verbose = false, offline_mode = false) #

[View source]
def kubectl_local_response(verbose = false) #

[View source]
def kubectl_version(kubectl_response, version_for = "client", verbose = false) #

Extracts Kubernetes client version or server version

version = kubectl_version(kubectl_response, "client")
version # => "1.12"

version = kubectl_version(kubectl_response, "server")
version # => "1.12"

For reference, below are example client and server version strings from "kubectl version" output

Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:31:21Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.2", GitCommit:"faecb196815e248d3ecfb03c680a4507229c2a56", GitTreeState:"clean", BuildDate:"2021-01-21T01:11:42Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}

TODO Function could be updated to rely on the JSON output of "kubectl version -o json" instead of regex parsing

Returns the version as a string (Example: 1.12, 1.20, etc)


[View source]
def local_helm_installed? #

[View source]
def log_formatter #

[View source]
def loglevel #

[View source]
def named_sha_list(resp_json) #

[View source]
def network_chaos_template #

[View source]
def optional_key_as_string(totem_config, key_name) #

this method extracts a string value from a config section if it exists if the value is an integer it will be converted to a string before extraction


[View source]
def secrets_used_skipped_msg(emoji) #

[View source]
def sonobuoy_details(cmd_path : String) #

[View source]
def stdout_failure(msg) #

[View source]
def stdout_info(msg) #

[View source]
def stdout_score(test_name) #

[View source]
def stdout_success(msg) #

[View source]
def stdout_warning(msg) #

[View source]
def toggle(toggle_name) #

[View source]
def update_yml(yml_file, top_level_key, value) #

[View source]
def upsert_failed_task(task, message) #

[View source]
def upsert_na_task(task, message) #

[View source]
def upsert_passed_task(task, message) #

[View source]
def upsert_skipped_task(task, message) #

[View source]
def version_less_than(v1str, v2str) #

compare 2 SemVer strings and return true if v1 is less than v2


[View source]
def wait_for_scaling(resource, target_replica_count, args) #

[View source]
def wget_global_response(verbose = false) #

[View source]
def wget_installation(verbose = false) #

[View source]
def wget_local_response(verbose = false) #

[View source]
def wget_version(wget_response, verbose = false) #

[View source]