module Gitlab::Client::ProjectReleases

def create_project_release(project, options = {})

Returns:
  • (Gitlab::ObjectifiedHash) - Information about the created release.

Options Hash: (**options)
  • :assets(optional) (Hash) -- A customizable set of options for release assets
  • :ref(optional) (String) -- If tag_name does not exist, the release will be created from ref. It can be a commit SHA, another tag name, or a branch name.
  • :description(required) (String) -- The description of the release. You can use markdown.
  • :tag_name(required) (String) -- The tag where the release will be created from.
  • :name(required) (String) -- The release name.

Parameters:
  • options (Hash) -- A customizable set of options.
  • project (Integer, String) -- The ID or name of a project.
def create_project_release(project, options = {})
  post("/projects/#{url_encode project}/releases", body: options)
end

def delete_project_release(project, tag_name)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about the deleted release.

Parameters:
  • tag_name (String) -- The tag where the release will be created from.
  • project (Integer, String) -- The ID or name of a project.
def delete_project_release(project, tag_name)
  delete("/projects/#{url_encode project}/releases/#{tag_name}")
end

def project_latest_release(project)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about the release

Parameters:
  • project (Integer, String) -- The ID or name of a project
def project_latest_release(project)
  get("/projects/#{url_encode project}/releases/permalink/latest")
end

def project_release(project, tag_name)

Returns:
  • (Gitlab::ObjectifiedHash) - Information about the release

Parameters:
  • tag_name (String) -- The tag where the release will be created from..
  • project (Integer, String) -- The ID or name of a project.
def project_release(project, tag_name)
  get("/projects/#{url_encode project}/releases/#{tag_name}")
end

def project_releases(project)

Returns:
  • (Array) - Paginated list of Releases, sorted by created_at.

Parameters:
  • project (Integer, String) -- The ID or name of a project.
def project_releases(project)
  get("/projects/#{url_encode project}/releases")
end

def update_project_release(project, tag_name, options = {})

Returns:
  • (Gitlab::ObjectifiedHash) - Information about the updated release.

Options Hash: (**options)
  • :description(optional) (String) -- The description of the release. You can use markdown.
  • :name(optional) (String) -- The release name.

Parameters:
  • options (Hash) -- A customizable set of options.
  • tag_name (String) -- The tag where the release will be created from.
  • project (Integer, String) -- The ID or name of a project.
def update_project_release(project, tag_name, options = {})
  put("/projects/#{url_encode project}/releases/#{tag_name}", body: options)
end