Class: RepoTender::Forge::Client
- Inherits:
-
Object
- Object
- RepoTender::Forge::Client
- Defined in:
- lib/repo_tender/forge/client.rb
Overview
Abstract forge interface. The GitHub implementation lists the repos belonging to an OrgRef. The interface is intentionally narrow: a forge is a source of (host, owner, name) triples. The sync engine expands an OrgRef into RepoRefs at sync time; it never asks the forge about a specific repo.
Direct Known Subclasses
Instance Method Summary collapse
-
#check_authenticated ⇒ Object
Returns Success(:authenticated) or Failure(reason:).
-
#list_org(org_ref) ⇒ Object
Returns Success([RepoRef, …]) or Failure.
Instance Method Details
#check_authenticated ⇒ Object
Returns Success(:authenticated) or Failure(reason:). Called ONCE by the engine before fanning out org listings.
18 19 20 |
# File 'lib/repo_tender/forge/client.rb', line 18 def check_authenticated raise NotImplementedError end |
#list_org(org_ref) ⇒ Object
Returns Success([RepoRef, …]) or Failure. Honors the include_archived / include_forks flags on the OrgRef. Does NOT perform authentication — the engine calls check_authenticated first.
26 27 28 |
# File 'lib/repo_tender/forge/client.rb', line 26 def list_org(org_ref) raise NotImplementedError end |