65a6b4afaf
Co-authored-by: Copilot <copilot@github.com>
64 lines
2.6 KiB
C#
64 lines
2.6 KiB
C#
namespace ControlPlane.Core.Models;
|
|
|
|
// ── Repository ────────────────────────────────────────────────────────────────
|
|
|
|
public record GiteaRepo(
|
|
long Id,
|
|
string Name,
|
|
string FullName,
|
|
string DefaultBranch,
|
|
string CloneUrl,
|
|
string SshUrl,
|
|
bool Private
|
|
);
|
|
|
|
// ── Branch ────────────────────────────────────────────────────────────────────
|
|
|
|
public record GiteaBranch(
|
|
string Name,
|
|
string CommitSha,
|
|
bool Protected
|
|
);
|
|
|
|
// ── Pull Request ──────────────────────────────────────────────────────────────
|
|
|
|
public record GiteaPullRequest(
|
|
long Number,
|
|
string Title,
|
|
string State, // open | closed | merged
|
|
string HeadBranch,
|
|
string BaseBranch,
|
|
string HtmlUrl,
|
|
string CreatedAt,
|
|
string UpdatedAt,
|
|
GiteaUser? User,
|
|
GiteaMergeInfo? MergeInfo
|
|
);
|
|
|
|
public record GiteaUser(string Login, string AvatarUrl);
|
|
|
|
public record GiteaMergeInfo(bool Mergeable, bool Merged, string? MergedAt);
|
|
|
|
// ── Tag ───────────────────────────────────────────────────────────────────────
|
|
|
|
public record GiteaTag(string Name, string CommitSha, string ZipUrl);
|
|
|
|
// ── Webhook ───────────────────────────────────────────────────────────────────
|
|
|
|
public record GiteaWebhook(long Id, string Url, bool Active, string[] Events);
|
|
|
|
// ── Request shapes ────────────────────────────────────────────────────────────
|
|
|
|
public record CreateBranchRequest(string OpcNumber, string OpcTitle, string RepoKey = "Clarity", string From = "main");
|
|
|
|
public record CreatePullRequestRequest(
|
|
string Title,
|
|
string Head,
|
|
string Base,
|
|
string Body
|
|
);
|
|
|
|
public record CreateTagRequest(string TagName, string Message, string CommitSha);
|
|
|
|
public record CreateWebhookRequest(string TargetUrl, string[] Events);
|