private async Task <Deployment> StartAsync( IEnvironment environment, IProgramRelease release, long creatorId) { Ensure.NotNull(environment, nameof(environment)); var deployment = new Deployment( id: await db.Deployments.Sequence.NextAsync(), environmentId: environment.Id, release: release, creatorId: creatorId ); await db.Deployments.InsertAsync(deployment); return(deployment); }
public Deployment( long id, long environmentId, IProgramRelease release, long creatorId, DeploymentStatus status = DeploymentStatus.Pending, JsonObject properties = null) { Ensure.IsValidId(id); Ensure.IsValidId(environmentId, nameof(environmentId)); Ensure.NotNull(release, nameof(release)); Ensure.IsValidId(creatorId, nameof(creatorId)); Id = id; Status = status; EnvironmentId = environmentId; ProgramId = release.ProgramId; ProgramVersion = release.Version; CreatorId = creatorId; Properties = properties; }