diff options
Diffstat (limited to 'src/marlin.core/models')
| -rw-r--r-- | src/marlin.core/models/Agent.cs | 2 | ||||
| -rw-r--r-- | src/marlin.core/models/CapabilitySet.cs | 7 | ||||
| -rw-r--r-- | src/marlin.core/models/Job.cs | 38 | ||||
| -rw-r--r-- | src/marlin.core/models/VersionControlSource.cs | 18 |
4 files changed, 60 insertions, 5 deletions
diff --git a/src/marlin.core/models/Agent.cs b/src/marlin.core/models/Agent.cs index 783f6d6..2903131 100644 --- a/src/marlin.core/models/Agent.cs +++ b/src/marlin.core/models/Agent.cs @@ -1,4 +1,4 @@ -namespace marlin.core; +namespace marlin.core.models; public class Agent { diff --git a/src/marlin.core/models/CapabilitySet.cs b/src/marlin.core/models/CapabilitySet.cs index f569ee5..ac7da46 100644 --- a/src/marlin.core/models/CapabilitySet.cs +++ b/src/marlin.core/models/CapabilitySet.cs @@ -1,3 +1,6 @@ -namespace marlin.core; +namespace marlin.core.models; -public class CapabilitySet : Dictionary<string, string>;
\ No newline at end of file +public class CapabilitySet +{ + public Dictionary<string, string> Items { get; set; } = new(); +}
\ No newline at end of file diff --git a/src/marlin.core/models/Job.cs b/src/marlin.core/models/Job.cs index 269677d..6b09597 100644 --- a/src/marlin.core/models/Job.cs +++ b/src/marlin.core/models/Job.cs @@ -1,6 +1,42 @@ -namespace marlin.core; +namespace marlin.core.models; public class Job { + public Guid Id { get; set; } + public Guid SourceId { get; set; } + public VersionControlSource Source { get; set; } + public string Ref { get; set; } + public string Commit { get; set; } + + public string CreatedReason { get; set; } + public DateTime CreatedAt { get; set; } + public JobStatus Status { get; set; } + public ICollection<JobStatusUpdate> StatusUpdates { get; set; } + + public Guid AgentId { get; set; } + public Agent? Agent { get; set; } + + public string Recipe { get; set; } + // plan +} + +public class JobStatusUpdate +{ + public Guid Id { get; set; } + + public Guid JobId { get; set; } + public Job Job { get; set; } + + public DateTime At { get; set; } + public JobStatus Status { get; set; } +} + +public enum JobStatus +{ + Pending, + Active, + Cancelled, + Success, + Failed }
\ No newline at end of file diff --git a/src/marlin.core/models/VersionControlSource.cs b/src/marlin.core/models/VersionControlSource.cs index f3880de..1d50ef3 100644 --- a/src/marlin.core/models/VersionControlSource.cs +++ b/src/marlin.core/models/VersionControlSource.cs @@ -1,8 +1,24 @@ -namespace marlin.core; +namespace marlin.core.models; public class VersionControlSource { public Guid Id { get; set; } + public string UpstreamUrl { get; set; } + public string MainBranch { get; set; } public string BranchFilter { get; set; } + public int MinPollingInterval { get; set; } + + public ICollection<VersionControlledBranch> Branches { get; set; } +} + +public class VersionControlledBranch +{ + public Guid Id { get; set; } + + public Guid SourceId { get; set; } + public VersionControlSource Source { get; set; } + + public string Name { get; set; } + public string HeadCommit { get; set; } }
\ No newline at end of file |
