Exemple #1
0
 def required_during_scheduling_ignored_during_execution(self, pats=None):
     # raise NotImplementedError('Not yet implemented in Kubernetes 1.6')
     if not is_valid_list(pats, PodAffinityTerm):
         raise SyntaxError(
             "PodAffinity: required_during_scheduling_ignored_during_execution: [ {} ] is invald."
             .format(pats))
     self._required_during_scheduling_ignored_during_execution = pats
Exemple #2
0
    def match_expressions(self, me=None):
        if not is_valid_list(me, LabelSelectorRequirement):
            raise SyntaxError(
                'LabelSelector: match_expressions: [ {} ] is invalid.'.format(
                    me))

        self._match_expressions = me
Exemple #3
0
 def http_headers(self, headers=None):
     msg = "HTTPGetAction: headers: [ {0} ] is invalid.".format(headers)
     if not is_valid_list(headers, dict):
         raise SyntaxError(msg)
     for x in headers:
         if not is_valid_dict(x, ["name", "value"]):
             raise SyntaxError(msg)
     self._http_headers = headers
    def containers(self, containers=None):
        if not is_valid_list(containers, K8sContainer):
            raise SyntaxError("K8sCronJob: containers: [ {} ] is invalid.".format(containers))

        models = []
        for obj in containers:
            models.append(obj.model)
        self.model.spec.job_template.spec.template.spec.containers = models
 def access_modes(self, modes=None):
     if not is_valid_list(modes, str):
         raise SyntaxError(
             "PersistentVolumeClaimStatus: access_modes: [ {} ] is invalid."
             .format(modes))
     filtered = list(
         filter(lambda x: x in PersistentVolumeSpec.VALID_ACCESS_MODES,
                modes))
     self._access_modes = filtered
Exemple #6
0
    def add_image_pull_secrets(self, secrets=None):
        if not is_valid_list(secrets, dict):
            raise SyntaxError('PodSpec.add_image_pull_secrets() secrets : [ {0} ] is invalid.'.format(secrets))

        s = self.image_pull_secrets
        if s is None:
            l = secrets
        else:
            l = s + secrets

        self.image_pull_secrets = [dict(t) for t in set([tuple(d.items()) for d in l])]
        return self
Exemple #7
0
 def values(self, v=None):
     if not is_valid_list(convert(v), str):
         raise SyntaxError(
             'NodeSelectorRequirement: values: [ {} ] is invalid.'.format(
                 v))
     if self.operator in ['In, NotIn'] and v == []:
         raise SyntaxError(
             'NodeSelectorRequirement: values: [ {} ] cannot be empty, if operator in [ "In", "NotIn" ]'
             .format(v))
     if self.operator in ['Exists', 'NotExists'] and v != []:
         raise SyntaxError(
             'NodeSelectorRequirement: values: [ {} ] must be empty, if operator in [ "Exists", "NotExists" ]'
             .format(v))
     if self.operator in ['Gt', 'Lt']:
         if len(v) != 1:
             raise SyntaxError(
                 'NodeSelectorRequirement: values: [ {} ] must be an array of length 1, if operator in [ "Gt", "Lt" ]'
                 .format(v))
         if not isinstance(v[0], int):
             raise SyntaxError(
                 'NodeSelectorRequirement: values: [ {} ] must contain a single integer, if operator in [ "Gt", "Lt" ]'
                 .format(v))
     self._values = v
Exemple #8
0
 def taints(self, t=None):
     if not is_valid_list(t, Taint):
         raise SyntaxError("K8sNode: taints: [ {} ] is invalid.".format(t))
     self.model.spec.taints = t
Exemple #9
0
 def volume_claim_templates(self, t=None):
     if not is_valid_list(t, PersistentVolumeClaim):
         raise SyntaxError(
             'PetSetSpec: volume_claim_templates: [ {} ] is invalid.'.
             format(t))
     self._volume_claim_templates = t
 def preferred_during_scheduling_ignored_during_execution(self, p=None):
     if not is_valid_list(p, PreferredSchedulingTerm):
         raise SyntaxError(
             "NodeAffinity: preferred_during_scheduling_ignored_during_execution: [ {} ] is invalid."
             .format(p))
     self._preferred_during_scheduling_ignored_during_execution = p
Exemple #11
0
 def node_selector_terms(self, t=None):
     if not is_valid_list(t, NodeSelectorTerm):
         raise SyntaxError('NodeSelector: node_selector_terms: [ {} ] is invalid.'.format(t))
     self._node_selector_terms = t
Exemple #12
0
 def args(self, args=None):
     if not is_valid_list(args, str):
         raise SyntaxError("Container: args: [ {0} ] is invalid.".format(args))
     self._args = args
Exemple #13
0
 def command(self, command=None):
     if not is_valid_list(command, str):
         raise SyntaxError(
             'ExecAction: command: [ {0} ] is invalid.'.format(command))
     self._command = command
 def supplemental_groups(self, gids=None):
     if not is_valid_list(gids, int):
         raise SyntaxError(
             'PodSecurityContext: supplemental_groups: [ {0} ] is invalid.'.
             format(gids))
     self._supplemental_groups = gids
Exemple #15
0
 def drop(self, d=None):
     if not is_valid_list(d, str):
         raise SyntaxError('Capabilities: add: [ {} ] is invalid.'.format(d))
     self._drop = d
Exemple #16
0
 def volume_mounts(self, mounts=None):
     if not is_valid_list(mounts, VolumeMount):
         raise SyntaxError("Container: volume_mounts: [ {0} ] is invalid.".format(mounts))
     self._volume_mounts = mounts
Exemple #17
0
 def preferred_during_scheduling_ignored_during_execution(self, wpats=None):
     if not is_valid_list(wpats, WeightedPodAffinityTerm):
         raise SyntaxError(
             'PodAffinity: preferred_during_scheduling_ignored_during_execution: [ {} ] is invald.'.format(wpats))
     self._preferred_during_scheduling_ignored_during_execution = wpats
Exemple #18
0
 def ports(self, ports=None):
     if not is_valid_list(ports, ContainerPort):
         raise SyntaxError("Container: ports: [ {0} ] is invalid.".format(ports))
     self._ports = ports
Exemple #19
0
 def env(self, env=None):
     if not is_valid_list(env, EnvVar):
         raise SyntaxError("Container: env: [ {0} ] is invalid.".format(env))
     self._env = env
Exemple #20
0
 def command(self, command=None):
     if not is_valid_list(command, str):
         raise SyntaxError("Container: command: [ {0} ] is invalid.".format(command))
     self._command = command
Exemple #21
0
 def volumes(self, v=None):
     if not is_valid_list(v, K8sVolume):
         self.model.spec.template.spec.volumes = v
Exemple #22
0
 def active(self, _list=None):
     if not is_valid_list(_list, ObjectReference):
         raise SyntaxError(
             "CronJobStatus: active: [ {} ] is invalid.".format(_list))
     self._active = _list
Exemple #23
0
 def add(self, a=None):
     if not is_valid_list(a, str):
         raise SyntaxError('Capabilities: add: [ {} ] is invalid.'.format(a))
     self._add = a
Exemple #24
0
 def image_pull_secrets(self, s=None):
     if not is_valid_list(s, LocalObjectReference):
         raise SyntaxError(
             'ServiceAccount: image_pull_secrets: [ {} ] is invalid.'.
             format(s))
     self._image_pull_secrets = s
Exemple #25
0
 def volume_claim_templates(self, vcts=None):
     if not is_valid_list(vcts, PersistentVolumeClaim):
         raise SyntaxError(
             'StatefulSetSpec: volume_claim_templates: [ {} ] is invalid.'.
             format(vcts))
     self._volume_claim_templates = vcts
Exemple #26
0
 def ingress(self, ingress=None):
     if not is_valid_list(ingress, LoadBalancerIngress):
         raise SyntaxError(
             "LoadBalancerStatus: ingress: [ {0} ] is invalid.".format(
                 ingress))
     self._ingress = ingress
Exemple #27
0
 def containers(self, containers=None):
     if not is_valid_list(containers, K8sContainer):
         self.model.spec.containers = [x.model for x in containers]
Exemple #28
0
 def required_during_scheduling_ignored_during_execution(self, pats=None):
     if not is_valid_list(pats, PodAffinityTerm):
         raise SyntaxError(
             "PodAffinity: required_during_scheduling_ignored_during_execution: [ {} ] is invald."
             .format(pats))
     self._required_during_scheduling_ignored_during_execution = pats
 def match_expressions(self, e=None):
     if not is_valid_list(e, NodeSelectorRequirement):
         raise SyntaxError(
             'NodeSelectorTerm: match_expressions: [ {} ] is invalid.'.
             format(e))
     self._match_expressions = e
Exemple #30
0
 def secrets(self, s=None):
     if not is_valid_list(s, ObjectReference):
         raise SyntaxError(
             'ServiceAccount: secrets: [ {} ] is invalid.'.format(s))
     self._secrets = s