Beispiel #1
0
    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)
Beispiel #2
0
    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)
Beispiel #3
0
    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)
Beispiel #4
0
 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))
Beispiel #5
0
 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))
Beispiel #6
0
    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))
Beispiel #7
0
 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)
Beispiel #8
0
 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))
Beispiel #9
0
 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))
Beispiel #10
0
 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)
     )
Beispiel #11
0
 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)
Beispiel #12
0
 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)
Beispiel #13
0
 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)
Beispiel #16
0
 def get(cls, user, api=None):
     user = Transform.to_user(user)
     return super(User, cls).get(id=user)
Beispiel #17
0
 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)
Beispiel #18
0
 def get(cls, user, api=None):
     user = Transform.to_user(user)
     return super(User, cls).get(id=user)
Beispiel #19
0
 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)