Scroll to navigation

API::GitForge::Role::GitForge(3pm) User Contributed Perl Documentation API::GitForge::Role::GitForge(3pm)

NAME

API::GitForge::Role::GitForge - role implementing generic git forge operations

VERSION

version 0.007

DESCRIPTION

Operations which one might wish to perform against any git forge. See API::GitForge.

In this documentation, "example.com" should be replaced with the domain at which your git forge is hosted, e.g. "salsa.debian.org".

METHODS

new(domain => $domain, access_token => $token)

Instantiate an object representing the GitForge at $domain. The "access_key" argument is optional; if present, it should be an API key for the forge.

ensure_repo($repo)

Create a new repo at "https://example.com/$repo".

clean_repo($repo)

Create a new repo at "https://example.com/$repo" and turn off optional forge features.

ensure_fork($upstream)

Ensure that the current user has a fork of the repo at "https://example.com/$upstream", and return URI to that fork suitable for adding as a git remote.

clean_fork($upstream)

Ensure that the current user has a fork of the repo at "https://example.com/$upstream", config that fork to make it obvious it's only there for submitting change proposals, and return URI to fork suitable for adding as a git remote.

nuke_fork($upstream)

Delete the user's fork of the repo at "https://example.com/$upstream".

clean_config_repo($repo)

Turn off optional forge features for repo at "https://example.com/$repo".

clean_config_fork($upstream)

Configure user's fork of repo at "https://example.com/$upstream" to make it obvious that it's only there for submitting change proposals.

STATUS

Unstable. Interface may change.

AUTHOR

Sean Whitton <spwhitton@spwhitton.name>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2017, 2020 by Sean Whitton <spwhitton@spwhitton.name>.

This is free software, licensed under:

  The GNU General Public License, Version 3, June 2007
2022-01-02 perl v5.32.1