def add_member(self, user, permissions): """ Add a member to the project. :param user: Member username :param permissions: Permissions dictionary. :return: Member object. """ user = Transform.to_user(user) data = {'username': user, 'type': 'USER'} if isinstance(permissions, dict): data.update({ 'permissions': permissions }) extra = { 'resource': self.__class__.__name__, 'query': { 'id': self.id, 'data': data, } } logger.info('Adding member using username', extra=extra) response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return Member(api=self._api, **member_data)
def add_member(self, user, permissions): """ Add a member to the volume. :param user: Member username :param permissions: Permissions dictionary. :return: Member object. """ user = Transform.to_user(user) data = {'username': user, 'type': 'USER'} if 'execute' in permissions: permissions.pop('execute') if isinstance(permissions, dict): data.update({'permissions': permissions}) extra = { 'resource': type(self).__name__, 'query': { 'id': self.id, 'data': data, } } logger.info('Adding volume member', extra=extra) response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return Member(api=self._api, **member_data)
def add(cls, user, permissions, automation, api=None): """ Add a member to the automation. :param user: Member username :param permissions: Permissions dictionary. :param automation: Automation object or id :param api: sevenbridges Api instance :return: Automation member object. """ user = Transform.to_user(user) automation = Transform.to_automation(automation) api = api or cls._API data = {'username': user} if isinstance(permissions, dict): data.update({ 'permissions': permissions }) member_data = api.post( url=cls._URL['query'].format(automation_id=automation), data=data ).json() return AutomationMember(api=api, **member_data)
def remove_member(self, user): """ Remove member from the project. :param user: User to be removed. """ member = Transform.to_user(user) self._api.delete( url=self._URL['members_get'].format(id=self.id, member=member))
def remove_member(self, user): """ Remove member from the project. :param user: User to be removed. """ member = Transform.to_user(user) self._api.delete(url=self._URL['members_get'].format( id=self.id, member=member))
def remove(cls, user, automation, api=None): """ Remove a member from the automation. :param user: Member username :param automation: Automation id :param api: sevenbridges Api instance :return: None """ user = Transform.to_user(user) automation = Transform.to_automation(automation) api = api or cls._API api.delete(cls._URL['get'].format(automation_id=automation, id=user))
def add_member(self, user, permissions): """ Add a member to the project. :param user: Member username :param permissions: Permissions dictionary. :return: Member object. """ user = Transform.to_user(user) data = {} if isinstance(permissions, dict): data = {'username': user, 'permissions': permissions} response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return Member(api=self._api, **member_data)
def remove_member(self, user): """ Remove member from the team. :param user: User to be removed. """ member = Transform.to_user(user) extra = { 'resource': type(self).__name__, 'query': { 'id': self.id, 'user': user, } } logger.info('Removing team member', extra=extra) self._api.delete( url=self._URL['members_get'].format(id=self.id, member=member))
def remove_member(self, user): """ Remove member from the project. :param user: User to be removed. """ username = Transform.to_user(user) extra = { 'resource': self.__class__.__name__, 'query': { 'id': self.id, 'user': user, } } logger.info('Removing member', extra=extra) self._api.delete( url=self._URL['member'].format(id=self.id, username=username))
def remove_member(self, user): """ Remove member from the project. :param user: User to be removed. """ username = Transform.to_user(user) extra = { 'resource': self.__class__.__name__, 'query': { 'id': self.id, 'user': user, } } logger.info('Removing member', extra=extra) self._api.delete( url=self._URL['member'].format(id=self.id, username=username) )
def add_member(self, user, permissions): """ Add a member to the project. :param user: Member username :param permissions: Permissions dictionary. :return: Member object. """ user = Transform.to_user(user) data = {} if isinstance(permissions, dict): data = { 'username': user, 'permissions': permissions } response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return Member(api=self._api, **member_data)
def add_member(self, user): """ Add member to team :param user: User object or user's username :return: Added user. """ user = Transform.to_user(user) data = {'id': user} extra = { 'resource': self.__class__.__name__, 'query': { 'id': self.id, 'data': data, } } logger.info('Adding team member using id', extra=extra) response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return TeamMember(api=self._api, **member_data)
def add_member(self, user): """ Add member to team :param user: User object or user's username :return: Added user. """ user = Transform.to_user(user) data = { 'id': user } extra = { 'resource': self.__class__.__name__, 'query': { 'id': self.id, 'data': data, } } logger.info('Adding team member using id', extra=extra) response = self._api.post( url=self._URL['members_query'].format(id=self.id), data=data) member_data = response.json() return TeamMember(api=self._api, **member_data)
def test_transform_user_invalid_values(user): with pytest.raises(SbgError): Transform.to_user(user)
def test_transform_user(user): Transform.to_user(user)
def get(cls, user, api=None): user = Transform.to_user(user) return super(User, cls).get(id=user)
def get(cls, user, api=None): api = api if api else cls._API user = Transform.to_user(user) return super(User, cls).get(id=user, api=api)
def get(cls, user, api=None): user = Transform.to_user(user) return super(User, cls).get(id=user)
def get(cls, user, api=None): api = api if api else cls._API user = Transform.to_user(user) return super().get(id=user, api=api)
def test_transform_user(user): Transform.to_user(user)
def test_transform_user_invalid_values(user): with pytest.raises(SbgError): Transform.to_user(user)