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"
CONSTRAINT_TEMPLATE = Base64.decode_string("YXBpVmVyc2lvbjogdGVtcGxhdGVzLmdhdGVrZWVwZXIuc2gvdjFiZXRhMQpraW5kOiBDb25zdHJh\naW50VGVtcGxhdGUKbWV0YWRhdGE6CiAgbmFtZTogcmVxdWlyZXRhZ3MKc3BlYzoKICBjcmQ6CiAg\nICBzcGVjOgogICAgICBuYW1lczoKICAgICAgICBraW5kOiBSZXF1aXJlVGFncwogIHRhcmdldHM6\nCiAgICAtIHRhcmdldDogYWRtaXNzaW9uLms4cy5nYXRla2VlcGVyLnNoCiAgICAgIHJlZ286IHwK\nICAgICAgICBwYWNrYWdlIHJlcXVpcmV0YWdzCiAgICAgICAgdmlvbGF0aW9uW3sibXNnIjogbXNn\nLCAiZGV0YWlscyI6IHt9fV17CiAgICAgICAgICBpbnB1dC5yZXZpZXcua2luZC5raW5kID09ICJQ\nb2QiCiAgICAgICAgICBpbWFnZSA6PSBpbnB1dC5yZXZpZXcub2JqZWN0LnNwZWMuY29udGFpbmVy\nc1tfXS5pbWFnZQogICAgICAgICAgZW5zdXJlKGltYWdlKQogICAgICAgICAgbXNnIDo9IHNwcmlu\ndGYoIlZpb2xhdGlvbiBmb3IgUG9kICV2LCBpdCB1c2VzIGFuIGltYWdlIHRhZyB0aGF0IGlzIG5v\ndCB2ZXJzaW9uZWQiLCBbaW5wdXQucmV2aWV3Lm9iamVjdC5tZXRhZGF0YS5uYW1lXSkKICAgICAg\nICB9CiAgICAgICAgCiAgICAgICAgZW5zdXJlKGltYWdlKSB7CiAgICAgICAgICBjb250YWlucyhp\nbWFnZSwgIjpsYXRlc3QiKQogICAgICAgIH0KICAgICAgICBlbnN1cmUoaW1hZ2UpIHsKICAgICAg\nICAgIG5vdCBjb250YWlucyhpbWFnZSwiOiIpCiAgICAgICAgfQoK\n")
CRI_TOOLS = Base64.decode_string("YXBpVmVyc2lvbjogYXBwcy92MQpraW5kOiBEYWVtb25TZXQKbWV0YWRhdGE6CiAgICBuYW1lOiBj\ncmktdG9vbHMKc3BlYzoKICBzZWxlY3RvcjoKICAgIG1hdGNoTGFiZWxzOgogICAgICBuYW1lOiBj\ncmktdG9vbHMKICB0ZW1wbGF0ZToKICAgIG1ldGFkYXRhOgogICAgICBsYWJlbHM6CiAgICAgICAg\nbmFtZTogY3JpLXRvb2xzCiAgICBzcGVjOgogICAgICBjb250YWluZXJzOgogICAgICAgIC0gbmFt\nZTogY3JpLXRvb2xzCiAgICAgICAgICBpbWFnZTogY29uZm9ybWFuY2UvY3JpLXRvb2xzOmxhdGVz\ndAogICAgICAgICAgY29tbWFuZDogWyIvYmluL3NoIl0KICAgICAgICAgIGFyZ3M6IFsiLWMiLCAi\nc2xlZXAgaW5maW5pdHkiXQogICAgICAgICAgdm9sdW1lTW91bnRzOgogICAgICAgICAgLSBtb3Vu\ndFBhdGg6IC9ydW4vY29udGFpbmVyZC9jb250YWluZXJkLnNvY2sKICAgICAgICAgICAgbmFtZTog\nY29udGFpbmVyZC12b2x1bWUKICAgICAgdm9sdW1lczoKICAgICAgLSBuYW1lOiBjb250YWluZXJk\nLXZvbHVtZQogICAgICAgIGhvc3RQYXRoOgogICAgICAgICAgcGF0aDogL3Zhci9ydW4vY29udGFp\nbmVyZC9jb250YWluZXJkLnNvY2sK\n")
DEFAULT_POINTSFILENAME = "points_v1.yml"

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

EMPTY_JSON = JSON.parse("{}")
ENFORCE_IMAGE_TAG = Base64.decode_string("YXBpVmVyc2lvbjogY29uc3RyYWludHMuZ2F0ZWtlZXBlci5zaC92MWJldGExCmtpbmQ6IFJlcXVp\ncmVUYWdzCm1ldGFkYXRhOgogIG5hbWU6IGJsb2NrLWxhdGVzdC10YWcKc3BlYzoKICBtYXRjaDoK\nICAgIGtpbmRzOgogICAgICAtIGFwaUdyb3VwczogWyIiXQogICAgICAgIGtpbmRzOiBbIlBvZCJd\nCiAgICAgIAo=\n")
FAILED = "failed"
FALCO_OFFLINE_DIR = "#{TarClient::TAR_REPOSITORY_DIR}/falcosecurity_falco"
FALCO_RULES = Base64.decode_string("Y3VzdG9tUnVsZXM6CiAgcnVsZXMtcm9vdC55YW1sOiB8LQogICAgLSBydWxlOiBEZXRlY3QgUm9v\ndCBDb250YWluZXIgUHJvY2Vzc2VzLgogICAgICBkZXNjOiBMaXN0IGNvbnRhaW5lciBwcm9jZXNz\nIHJ1biBieSBhIHJvb3QgdXNlci4KICAgICAgY29uZGl0aW9uOiAoZXZ0LnR5cGUgIT0gY29udGFp\nbmVyIGFuZCBjb250YWluZXIgYW5kIGs4cy5wb2QubmFtZSAhPSAiPE5BPiIgYW5kIHVzZXIudWlk\nID0gMCkKICAgICAgb3V0cHV0OiA+CiAgICAgICAgQSBjb250YWluZXIgd2l0aCBhIHJvb3QgcHJv\nY2Nlc3Mgd2FzIGRldGVjdGVkLiAoazhzX3BvZD0lazhzLnBvZC5uYW1lKSBwcm9jX25hbWU9JXBy\nb2MubmFtZSB1c2VyX3VpZD0ldXNlci51aWQKICAgICAgcHJpb3JpdHk6IE5PVElDRQogICAgICB0\nYWdzOiBbY29udGFpbmVyLCByb290XQoKICAgICAgICAK\n")
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")
OFFLINE_MANIFESTS_PATH = "/tmp/manifests"
OPA_OFFLINE_DIR = "#{TarClient::TAR_REPOSITORY_DIR}/gatekeeper_gatekeeper"
PASSED = "passed"
POINTSFILE = Base64.decode_string("LS0tCi0gbmFtZTogZGVmYXVsdF9zY29yaW5nCiAgdGFnczogCiAgcGFzczogNQogIGZhaWw6IC0x\nIAogIHNraXBwZWQ6IDAgCiAgbmE6IDAgCgotIG5hbWU6IHJlYXNvbmFibGVfaW1hZ2Vfc2l6ZQog\nIHRhZ3M6IG1pY3Jvc2VydmljZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiByZWFzb25hYmxl\nX3N0YXJ0dXBfdGltZSAKICB0YWdzOiBtaWNyb3NlcnZpY2UsIGR5bmFtaWMsIHdvcmtsb2FkCi0g\nbmFtZTogc2luZ2xlX3Byb2Nlc3NfdHlwZSAKICB0YWdzOiBtaWNyb3NlcnZpY2UsIGR5bmFtaWMs\nIHdvcmtsb2FkCgojLSBuYW1lOiBjbmlfc3BlYyAKIyAgdGFnczogY29tcGF0aWJpbGl0eSwgZHlu\nYW1pYwojLSBuYW1lOiBhcGlfc25vb3BfYWxwaGEgCiMgIHRhZ3M6IGNvbXBhdGliaWxpdHksIGR5\nbmFtaWMKIy0gbmFtZTogYXBpX3Nub29wX2JldGEgCiMgIHRhZ3M6IGNvbXBhdGliaWxpdHksIGR5\nbmFtaWMKIy0gbmFtZTogYXBpX3Nub29wX2dlbmVyYWxfYXBpcyAKIyAgdGFnczogY29tcGF0aWJp\nbGl0eSwgZHluYW1pYwoKIy0gbmFtZTogcmVzZXRfY25mIAojICB0YWdzOiBzdGF0ZSwgZHluYW1p\nYywgY29uZmlndXJhdGlvbl9saWZlY3ljbGUKIy0gbmFtZTogY2hlY2tfcmVhcGVkIAojICB0YWdz\nOiBzdGF0ZSwgZHluYW1pYywgY29uZmlndXJhdGlvbl9saWZlY3ljbGUKCi0gbmFtZTogcHJpdmls\nZWdlZCAKICB0YWdzOiBzZWN1cml0eSwgZHluYW1pYywgd29ya2xvYWQKICByZXF1aXJlZDogdHJ1\nZQotIG5hbWU6IG5vbl9yb290X3VzZXIgCiAgdGFnczogc2VjdXJpdHksIGR5bmFtaWMsIHdvcmts\nb2FkCiMtIG5hbWU6IHNoZWxscyAKIyAgdGFnczogc2VjdXJpdHksIGR5bmFtaWMKIy0gbmFtZTog\ncHJvdGVjdGVkX2FjY2VzcyAKIyAgdGFnczogc2VjdXJpdHksIGR5bmFtaWMKCi0gbmFtZTogaW5j\ncmVhc2VfY2FwYWNpdHkgCiAgdGFnczogc2NhbGFiaWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkCiAg\ncGFzczogMTAKICBmYWlsOiAtNSAKLSBuYW1lOiBkZWNyZWFzZV9jYXBhY2l0eSAKICB0YWdzOiBz\nY2FsYWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQKICBwYXNzOiAxMAogIGZhaWw6IC01IAojLSBu\nYW1lOiBzbWFsbF9hdXRvc2NhbGluZyAKIyAgdGFnczogc2NhbGFiaWxpdHksIGR5bmFtaWMsIHdv\ncmtsb2FkCiMtIG5hbWU6IGxhcmdlX2F1dG9zY2FsaW5nIAojICB0YWdzOiBzY2FsYWJpbGl0eSwg\nZHluYW1pYywgd29ya2xvYWQKIyAtIG5hbWU6IG5ldHdvcmtfY2hhb3MgCiMgICB0YWdzOiByZXNp\nbGllbmNlLCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6IHBvZF9uZXR3b3JrX2xhdGVuY3kKICB0\nYWdzOiByZXNpbGllbmNlLCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6IHBvZF9uZXR3b3JrX2Nv\ncnJ1cHRpb24KICB0YWdzOiByZXNpbGllbmNlLCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6IHBv\nZF9uZXR3b3JrX2R1cGxpY2F0aW9uCiAgdGFnczogcmVzaWxpZW5jZSwgZHluYW1pYywgd29ya2xv\nYWQKLSBuYW1lOiBwb2RfZGVsZXRlCiAgdGFnczogcmVzaWxpZW5jZSwgZHluYW1pYywgd29ya2xv\nYWQgIAotIG5hbWU6IHBvZF9pb19zdHJlc3MKICB0YWdzOiByZXNpbGllbmNlLCBkeW5hbWljLCB3\nb3JrbG9hZCAgCi0gbmFtZTogcG9kX21lbW9yeV9ob2cKICB0YWdzOiByZXNpbGllbmNlLCBkeW5h\nbWljLCB3b3JrbG9hZCAgCi0gbmFtZTogZGlza19maWxsCiAgdGFnczogcmVzaWxpZW5jZSwgZHlu\nYW1pYywgd29ya2xvYWQgIAojLSBuYW1lOiBleHRlcm5hbF9yZXRyeSAKIyAgdGFnczogc2NhbGFi\naWxpdHksIGR5bmFtaWMsIHdvcmtsb2FkCgojLSBuYW1lOiB2ZXJzaW9uZWRfaGVsbV9jaGFydAoj\nICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1l\nOiBpcF9hZGRyZXNzZXMKICBwYXNzOiAwCiAgZmFpbDogLTEgCiAgdGFnczogY29uZmlndXJhdGlv\nbl9saWZlY3ljbGUsIHN0YXRpYywgd29ya2xvYWQKLSBuYW1lOiBsaXZlbmVzcwogIHRhZ3M6IGNv\nbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6IHJlYWRpbmVz\ncwogIHRhZ3M6IGNvbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBkeW5hbWljLCB3b3JrbG9hZAojLSBu\nYW1lOiBub192b2x1bWVfd2l0aF9jb25maWd1cmF0aW9uCiMgIHRhZ3M6IGNvbmZpZ3VyYXRpb25f\nbGlmZWN5Y2xlLCBkeW5hbWljCi0gbmFtZTogcm9sbGluZ191cGRhdGUKICB0YWdzOiBjb25maWd1\ncmF0aW9uX2xpZmVjeWNsZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiByb2xsaW5nX2Rvd25n\ncmFkZQogIHRhZ3M6IGNvbmZpZ3VyYXRpb25fbGlmZWN5Y2xlLCBkeW5hbWljLCB3b3JrbG9hZAot\nIG5hbWU6IHJvbGxpbmdfdmVyc2lvbl9jaGFuZ2UKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVj\neWNsZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiByb2xsYmFjawogIHRhZ3M6IGNvbmZpZ3Vy\nYXRpb25fbGlmZWN5Y2xlLCBkeW5hbWljLCB3b3JrbG9hZAotIG5hbWU6IG5vZGVwb3J0X25vdF91\nc2VkCiAgdGFnczogY29uZmlndXJhdGlvbl9saWZlY3ljbGUsIGR5bmFtaWMsIHdvcmtsb2FkCi0g\nbmFtZTogaG9zdHBvcnRfbm90X3VzZWQKICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwg\nZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiBoYXJkY29kZWRfaXBfYWRkcmVzc2VzX2luX2s4c19y\ndW50aW1lX2NvbmZpZ3VyYXRpb24KICB0YWdzOiBjb25maWd1cmF0aW9uX2xpZmVjeWNsZSwgZHlu\nYW1pYywgd29ya2xvYWQKLSBuYW1lOiBzZWNyZXRzX3VzZWQKICB0YWdzOiBjb25maWd1cmF0aW9u\nX2xpZmVjeWNsZSwgZHluYW1pYywgd29ya2xvYWQKICBwYXNzOiA1CiAgZmFpbDogMCAKLSBuYW1l\nOiBpbW11dGFibGVfY29uZmlnbWFwCiAgdGFnczogY29uZmlndXJhdGlvbl9saWZlY3ljbGUsIGR5\nbmFtaWMsIHdvcmtsb2FkCiAgcGFzczogMQogIGZhaWw6IDAgCgojLSBuYW1lOiBmbHVlbnRkX3Ry\nYWZmaWMKIyAgdGFnczogb2JzZXJ2YWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTog\namFlZ2VyX3RyYWZmaWMKIyAgdGFnczogb2JzZXJ2YWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQK\nIy0gbmFtZTogcHJvbWV0aGV1c190cmFmZmljCiMgIHRhZ3M6IG9ic2VydmFiaWxpdHksIGR5bmFt\naWMsIHdvcmtsb2FkCiMtIG5hbWU6IG9wZW50ZWxlbWV0cnlfY29tcGF0aWJsZQojICB0YWdzOiBv\nYnNlcnZhYmlsaXR5LCBkeW5hbWljLCB3b3JrbG9hZAojLSBuYW1lOiBvcGVubWV0cmljX2NvbXBh\ndGlibGUKIyAgdGFnczogb2JzZXJ2YWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQKCi0gbmFtZTog\naGVsbV9kZXBsb3kKICB0YWdzOiBpbnN0YWxsYWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQKLSBu\nYW1lOiBpbnN0YWxsX3NjcmlwdF9oZWxtCiAgdGFnczogaW5zdGFsbGFiaWxpdHksIHN0YXRpYywg\nd29ya2xvYWQKLSBuYW1lOiBoZWxtX2NoYXJ0X3ZhbGlkCiAgdGFnczogaW5zdGFsbGFiaWxpdHks\nIGR5bmFtaWMsIHdvcmtsb2FkCi0gbmFtZTogaGVsbV9jaGFydF9wdWJsaXNoZWQKICB0YWdzOiBp\nbnN0YWxsYWJpbGl0eSwgZHluYW1pYywgd29ya2xvYWQKICAKIyAtIG5hbWU6IGNoYW9zX25ldHdv\ncmtfbG9zcyAKIyAgIHRhZ3M6IHJlc2lsaWVuY2UsIGR5bmFtaWMsIHdvcmtsb2FkCiMgLSBuYW1l\nOiBjaGFvc19jcHVfaG9nCiMgICB0YWdzOiByZXNpbGllbmNlLCBkeW5hbWljLCB3b3JrbG9hZAoj\nIC0gbmFtZTogY2hhb3NfY29udGFpbmVyX2tpbGwKIyAgIHRhZ3M6IHJlc2lsaWVuY2UsIGR5bmFt\naWMsIHdvcmtsb2FkCgotIG5hbWU6IHZvbHVtZV9ob3N0cGF0aF9ub3RfZm91bmQKICB0YWdzOiBz\ndGF0ZSwgZHluYW1pYywgd29ya2xvYWQKLSBuYW1lOiBub19sb2NhbF92b2x1bWVfY29uZmlndXJh\ndGlvbiAKICB0YWdzOiBzdGF0ZSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTogaGFyZHdhcmVf\nYW5kX3NjaGVkdWxpbmcKIyAgdGFnczogaGFyZHdhcmUsIGR5bmFtaWMsIHdvcmtsb2FkCiMtIG5h\nbWU6IHN0YXRpY19hY2Nlc3NpbmdfaGFyZHdhcmUgCiMgIHRhZ3M6IGhhcmR3YXJlLCBzdGF0aWMs\nIHdvcmtsb2FkCiMtIG5hbWU6IGR5bmFtaWNfYWNjZXNzaW5nX2hhcmR3YXJlIAojICB0YWdzOiBo\nYXJkd2FyZSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTogZGlyZWN0X2h1Z2VwYWdlcwojICB0\nYWdzOiBoYXJkd2FyZSwgZHluYW1pYywgd29ya2xvYWQKIy0gbmFtZTogcGVyZm9ybWFuY2UKIyAg\ndGFnczogaGFyZHdhcmUsIGR5bmFtaWMsIHdvcmtsb2FkCgotIG5hbWU6IGs4c19jb25mb3JtYW5j\nZQogIHRhZ3M6IHBsYXRmb3JtLCBkeW5hbWljCi0gbmFtZTogd29ya2VyX3JlYm9vdF9yZWNvdmVy\neSAKICB0YWdzOiBwbGF0Zm9ybSwgcGxhdGZvcm06cmVzaWxpZW5jZSwgZHluYW1pYwotIG5hbWU6\nIG9jaV9jb21wbGlhbnQKICB0YWdzOiBwbGF0Zm9ybSwgcGxhdGZvcm06aGFyZHdhcmVfYW5kX3Nj\naGVkdWxpbmcsIGR5bmFtaWMK\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_corruption #

[View source]
def chaos_template_pod_network_duplication #

[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) #

todo put this in bootstrap utils


[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]