:return: save this team on Ariane server (create or update)

def save(self):
        """
        :return: save this team on Ariane server (create or update)
        """
        LOGGER.debug("Team.save")
        post_payload = {}
        consolidated_osi_id = []
        consolidated_app_id = []

        if self.id is not None:
            post_payload['teamID'] = self.id

        if self.name is not None:
            post_payload['teamName'] = self.name

        if self.description is not None:
            post_payload['teamDescription'] = self.description

        if self.color_code is not None:
            post_payload['teamColorCode'] = self.color_code

        if self.osi_ids is not None:
            consolidated_osi_id = copy.deepcopy(self.osi_ids)
        if self.osi_2_rm is not None:
            for osi_2_rm in self.osi_2_rm:
                if osi_2_rm.id is None:
                    osi_2_rm.sync()
                consolidated_osi_id.remove(osi_2_rm.id)
        if self.osi_2_add is not None:
            for osi_id_2_add in self.osi_2_add:
                if osi_id_2_add.id is None:
                    osi_id_2_add.save()
                consolidated_osi_id.append(osi_id_2_add.id)
        post_payload['teamOSInstancesID'] = consolidated_osi_id

        if self.app_ids is not None:
            consolidated_app_id = copy.deepcopy(self.app_ids)
        if self.app_2_rm is not None:
            for app_2_rm in self.app_2_rm:
                if app_2_rm.id is None:
                    app_2_rm.sync()
                consolidated_app_id.remove(app_2_rm.id)
        if self.app_2_add is not None:
            for app_id_2_add in self.app_2_add:
                if app_id_2_add.id is None:
                    app_id_2_add.save()
                consolidated_app_id.append(app_id_2_add.id)
        post_payload['teamApplicationsID'] = consolidated_app_id

        args = {'http_operation': 'POST', 'operation_path': '', 'parameters': {'payload': json.dumps(post_payload)}}
        response = TeamService.requester.call(args)
        if response.rc != 0:
            LOGGER.warning(
                'Team.save - Problem while saving team ' + self.name +
                '. Reason: ' + str(response.response_content) + '-' + str(response.error_message) +
                " (" + str(response.rc) + ")"
            )
        else:
            self.id = response.response_content['teamID']
            if self.osi_2_add is not None:
                for osi_2_add in self.osi_2_add:
                    osi_2_add.sync()
            if self.osi_2_rm is not None:
                for osi_2_rm in self.osi_2_rm:
                    osi_2_rm.sync()
            if self.app_2_add is not None:
                for app_2_add in self.app_2_add:
                    app_2_add.sync()
            if self.app_2_rm is not None:
                for app_2_rm in self.app_2_rm:
                    app_2_rm.sync()
        self.osi_2_add.clear()
        self.osi_2_rm.clear()
        self.app_2_add.clear()
        self.app_2_rm.clear()
        self.sync()
        return self