def get_by_name(config=None, name=None): if config is not None and not isinstance(config, K8sConfig): raise SyntaxError( 'ReplicationController.get_by_name(): config: [ {0} ] is invalid.' .format(config)) if not is_valid_string(name): raise SyntaxError( 'K8sReplicationController.get_by_name() name: [ {0} ] is invalid.' .format(name)) rc_list = [] data = {'labelSelector': 'name={0}'.format(name)} rcs = K8sReplicationController(config=config, name=name).get_with_params(data=data) for rc in rcs: try: model = ReplicationController(rc) obj = K8sReplicationController(config=config, name=model.metadata.name) rc_list.append(obj.get()) except NotFoundException: pass return rc_list
def list(self, pattern=None): ls = super(K8sReplicationController, self).list() rcs = list(map(lambda x: ReplicationController(x), ls)) if pattern is not None: rcs = list(filter(lambda x: pattern in x.name, rcs)) k8s = [] for x in rcs: j = K8sReplicationController(config=self.config, name=x.name) j.model = x k8s.append(j) return k8s
def test_cassandra_setup(self): svc = Service(utils.cassandra_service()) k8s_service = utils.create_service(name="cassandra") k8s_service.model = svc rc = ReplicationController(utils.cassandra_rc()) k8s_rc = utils.create_rc(name="cassandra") k8s_rc.model = rc ds = DaemonSet(utils.cassandra_daemonset()) k8s_ds = utils.create_daemonset(name="cassandra") k8s_ds.model = ds if utils.is_reachable(k8s_rc.config.api_host): k8s_service.create() k8s_rc.create() self.assertIsInstance(k8s_service, K8sService) self.assertIsInstance(k8s_rc, K8sReplicationController)
def get(self): self.model = ReplicationController(self.get_model()) return self