rezplugins.release_vcs.svn

Svn version control

class rezplugins.release_vcs.svn.SvnReleaseVCS(pkg_root, vcs_root=None)[source]

Bases: rez.release_vcs.ReleaseVCS

create_release_tag(tag_name, message=None)[source]

Create a tag in the repo.

Create a tag in the repository representing the release of the given version.

Parameters
  • tag_name (str) – Tag name to write to the repo.

  • message (str) – Message string to associate with the release.

get_changelog(previous_revision=None, max_revisions=None)[source]

Get the changelog text since the given revision.

If previous_revision is not an ancestor (for example, the last release was from a different branch) you should still return a meaningful changelog - perhaps include a warning, and give changelog back to the last common ancestor.

Parameters
  • previous_revision – The revision to give the changelog since. If

  • None

  • changelog. (give the entire) –

Returns

Changelog, as a string.

get_current_revision()[source]

Get the current revision, this can be any type (str, dict etc) appropriate to your VCS implementation.

Note

You must ensure that a revision contains enough information to clone/export/checkout the repo elsewhere - otherwise you will not be able to implement export.

get_tag_url(tag_name=None)[source]
classmethod is_valid_root(path)[source]

Return True if the given path is a valid root directory for this version control system.

Note that this is different than whether the path is under the control of this type of vcs; to answer that question, use find_vcs_root

classmethod name()[source]

Return the name of the VCS type, eg ‘git’.

classmethod search_parents_for_root()[source]

Return True if this vcs type should check parent directories to find the root directory

svn_url_exists(url)[source]
validate_repostate()[source]

Ensure that the VCS working copy is up-to-date.

exception rezplugins.release_vcs.svn.SvnReleaseVCSError(value=None)[source]

Bases: rez.exceptions.ReleaseVCSError

rezplugins.release_vcs.svn.get_last_changed_revision(client, url)[source]

util func, get last revision of url

rezplugins.release_vcs.svn.get_svn_login(realm, username, may_save)[source]

provide svn with permissions. @TODO this will have to be updated to take into account automated releases etc.

rezplugins.release_vcs.svn.register_plugin()[source]
rezplugins.release_vcs.svn.svn_get_client()[source]