def create_service_account_api_token(config=None, name=None): s = Secret() s.name = "{}-secret".format(name) s.add_annotation('kubernetes.io/service-account.name', name) s.type = 'kubernetes.io/service-account-token' k8s = K8sSecret(config=config, name=s.name) k8s.model = s k8s.create() return k8s
def create_service_account_api_token(config=None, name=None): s = Secret() s.name = "{}-token-{}".format(name, str(uuid.uuid4().hex[:5])) s.add_annotation(Secret.K8s_ANNOTATION_SERVICE_ACCOUNT_NAME, name) s.type = Secret.K8s_TYPE_SERVICE_ACCOUNT k8s = K8sSecret(config=config, name=s.name) k8s.model = s k8s.create() return k8s
def list_image_pull_secrets(config=None): _list = K8sSecret(config=config, name="throwaway").list() _secrets = [] for x in _list: s = Secret(x) if s.type == 'kubernetes.io/.dockerconfigjson': k8s = K8sSecret(config=config, name=s.name) k8s.model = s _secrets.append(k8s) return _secrets
def list(self, pattern=None, labels=None): ls = super(K8sSecret, self).list(labels=labels) secrets = list(map(lambda x: Secret(x), ls)) if pattern is not None: secrets = list(filter(lambda x: pattern in x.name, secrets)) k8s = [] for x in secrets: j = K8sSecret(config=self.config, name=x.name).from_model(m=x) k8s.append(j) return k8s
def api_tokens_for_service_account(config=None, name=None): _list = K8sSecret(config=config, name="throwaway").list() _tokens = [] for x in _list: s = Secret(x) if s.type == 'kubernetes.io/service-account-token': if s.metadata.annotations[ 'kubernetes.io/service-account.name'] == name: k8s = K8sSecret(config=config, name=s.name) k8s.model = s _tokens.append(k8s) return _tokens
def create_image_pull_secret(config=None, prefix=None, name=None, data=None): s = Secret() if name is not None: s.name = "{0}-docker-{1}".format(name, str(uuid.uuid4().hex[:5])) elif name is None and prefix is not None: s.name = "{0}-docker-{1}".format(prefix, str(uuid.uuid4().hex[:5])) else: s.name = "docker-{0}".format(str(uuid.uuid4().hex[:5])) s.dockerconfigjson = data k8s = K8sSecret(config=config, name=s.name) k8s.model = s k8s.create() return k8s
def get(self): self.model = Secret(self.get_model()) return self