@exc.on_http_error(exc.GitlabSetError)<EOL><INDENT>def set(self, key, value, **kwargs):<DEDENT>
path = '<STR_LIT>' % (self.path, key.replace('<STR_LIT:/>', '<STR_LIT>'))<EOL>data = {'<STR_LIT:value>': value}<EOL>server_data = self.gitlab.http_put(path, post_data=data, **kwargs)<EOL>return self._obj_cls(self, server_data)<EOL>
Create or update the object.

        Args:
            key (str): The key of the object to create/update
            value (str): The value to set for the object
            **kwargs: Extra options to send to the server (e.g. sudo)

        Raises:
            GitlabAuthenticationError: If authentication is not correct
            GitlabSetError: If an error occured

        Returns:
            obj: The created/updated attribute