Skip to content

Commit

Permalink
Merge pull request #270 from kthcloud/dev
Browse files Browse the repository at this point in the history
add many timestamps to reads, minor bug fix with resource transfers
  • Loading branch information
saffronjam authored Nov 15, 2023
2 parents c3421a1 + 266346d commit ea0d373
Show file tree
Hide file tree
Showing 16 changed files with 97 additions and 46 deletions.
14 changes: 9 additions & 5 deletions models/dto/body/deployment.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,15 @@ type DeploymentUpdated struct {
}

type DeploymentRead struct {
ID string `json:"id"`
Name string `json:"name"`
Type string `json:"type"`
OwnerID string `json:"ownerId"`
Zone string `json:"zone"`
ID string `json:"id"`
Name string `json:"name"`
Type string `json:"type"`
OwnerID string `json:"ownerId"`
Zone string `json:"zone"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
RepairedAt *time.Time `json:"repairedAt,omitempty"`
RestartedAt *time.Time `json:"restartedAt,omitempty"`

URL *string `json:"url,omitempty"`
CustomDomainURL *string `json:"customDomainUrl,omitempty"`
Expand Down
16 changes: 11 additions & 5 deletions models/dto/body/job.go
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
package body

import "time"

type JobRead struct {
ID string `json:"id"`
UserID string `json:"userId"`
Type string `json:"type"`
Status string `json:"status"`
LastError *string `json:"lastError,omitempty"`
ID string `json:"id"`
UserID string `json:"userId"`
Type string `json:"type"`
Status string `json:"status"`
LastError *string `json:"lastError,omitempty"`
CreatedAt time.Time `json:"createdAt"`
LastRunAt *time.Time `json:"lastRunAt,omitempty"`
FinishedAt *time.Time `json:"finishedAt,omitempty"`
RunAfter time.Time `json:"runAfter,omitempty"`
}

type JobUpdate struct {
Expand Down
9 changes: 5 additions & 4 deletions models/dto/body/notification.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,11 @@ package body
import "time"

type NotificationRead struct {
ID string `json:"id"`
Type string `json:"type"`
Content map[string]interface{} `json:"content"`
ReadAt *time.Time `json:"readAt,omitempty"`
ID string `json:"id"`
Type string `json:"type"`
Content map[string]interface{} `json:"content"`
CreatedAt time.Time `json:"createdAt"`
ReadAt *time.Time `json:"readAt,omitempty"`
}

type NotificationUpdate struct {
Expand Down
2 changes: 2 additions & 0 deletions models/dto/body/team.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,6 @@ type TeamRead struct {
Description *string `json:"description,omitempty"`
Resources []TeamResource `json:"resources"`
Members []TeamMember `json:"members"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}
11 changes: 7 additions & 4 deletions models/dto/body/vm.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@ package body
import "time"

type VmRead struct {
ID string `json:"id"`
Name string `json:"name"`
OwnerID string `json:"ownerId"`
Zone string `json:"zone"`
ID string `json:"id"`
Name string `json:"name"`
OwnerID string `json:"ownerId"`
Zone string `json:"zone"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
RepairedAt *time.Time `json:"repairedAt,omitempty"`

Specs Specs `json:"specs,omitempty"`
Ports []Port `json:"ports"`
Expand Down
2 changes: 1 addition & 1 deletion models/sys/deployment/deployment.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ type Deployment struct {
StatusMessage string `bson:"statusMessage"`
StatusCode int `bson:"statusCode"`

Transfer *Transfer `bson:"transfer"`
Transfer *Transfer `bson:"transfer,omitempty"`
}

func (deployment *Deployment) GetMainApp() *App {
Expand Down
25 changes: 13 additions & 12 deletions models/sys/deployment/dto.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,15 @@ func (deployment *Deployment) ToDTO(storageManagerURL *string) body.DeploymentRe
}

return body.DeploymentRead{
ID: deployment.ID,
Name: deployment.Name,
Type: deployment.Type,
OwnerID: deployment.OwnerID,
Zone: deployment.Zone,
ID: deployment.ID,
Name: deployment.Name,
Type: deployment.Type,
OwnerID: deployment.OwnerID,
Zone: deployment.Zone,
CreatedAt: deployment.CreatedAt,
UpdatedAt: utils.NonZeroOrNil(deployment.UpdatedAt),
RepairedAt: utils.NonZeroOrNil(deployment.RepairedAt),
RestartedAt: utils.NonZeroOrNil(deployment.RestartedAt),

URL: deployment.GetURL(),
CustomDomainURL: deployment.GetCustomDomainURL(),
Expand All @@ -78,13 +82,10 @@ func (deployment *Deployment) ToDTO(storageManagerURL *string) body.DeploymentRe
InternalPort: app.InternalPort,
Image: image,
HealthCheckPath: &app.PingPath,

Status: deployment.StatusMessage,
PingResult: pingResult,

Integrations: integrations,

StorageURL: storageManagerURL,
Status: deployment.StatusMessage,
PingResult: pingResult,
Integrations: integrations,
StorageURL: storageManagerURL,
}
}

Expand Down
19 changes: 13 additions & 6 deletions models/sys/job/dto.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package job

import "go-deploy/models/dto/body"
import (
"go-deploy/models/dto/body"
"go-deploy/utils"
)

func (job *Job) ToDTO(statusMessage string) body.JobRead {
var lastError *string
Expand All @@ -9,11 +12,15 @@ func (job *Job) ToDTO(statusMessage string) body.JobRead {
}

return body.JobRead{
ID: job.ID,
UserID: job.UserID,
Type: job.Type,
Status: statusMessage,
LastError: lastError,
ID: job.ID,
UserID: job.UserID,
Type: job.Type,
Status: statusMessage,
LastError: lastError,
CreatedAt: job.CreatedAt,
LastRunAt: utils.NonZeroOrNil(job.LastRunAt),
FinishedAt: utils.NonZeroOrNil(job.FinishedAt),
RunAfter: job.RunAfter,
}
}

Expand Down
9 changes: 5 additions & 4 deletions models/sys/notification/dto.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@ import "go-deploy/models/dto/body"

func (notification *Notification) ToDTO() body.NotificationRead {
return body.NotificationRead{
ID: notification.ID,
Type: notification.Type,
Content: notification.Content,
ReadAt: notification.ReadAt,
ID: notification.ID,
Type: notification.Type,
Content: notification.Content,
CreatedAt: notification.CreatedAt,
ReadAt: notification.ReadAt,
}
}
4 changes: 4 additions & 0 deletions models/sys/team/db.go
Original file line number Diff line number Diff line change
Expand Up @@ -84,3 +84,7 @@ func (client *Client) UpdateMember(id string, memberID string, member *Member) e

return client.SetWithBsonByID(id, updateData)
}

func (client *Client) MarkUpdated(id string) error {
return client.SetWithBsonByID(id, bson.D{{"updatedAt", time.Now()}})
}
3 changes: 3 additions & 0 deletions models/sys/team/dto.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package team

import (
"go-deploy/models/dto/body"
"go-deploy/utils"
)

func (t *Team) ToDTO(getMember func(*Member) *body.TeamMember, getResourceName func(*Resource) *string) body.TeamRead {
Expand Down Expand Up @@ -31,6 +32,8 @@ func (t *Team) ToDTO(getMember func(*Member) *body.TeamMember, getResourceName f
Description: t.Description,
Resources: resources,
Members: members,
CreatedAt: t.CreatedAt,
UpdatedAt: utils.NonZeroOrNil(t.UpdatedAt),
}
}

Expand Down
1 change: 1 addition & 0 deletions models/sys/team/team.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ type Team struct {
Description *string `bson:"description"`
OwnerID string `bson:"ownerId"`
CreatedAt time.Time `bson:"createdAt"`
UpdatedAt time.Time `bson:"updatedAt"`

ResourceMap map[string]Resource `bson:"resourceMap"`
MemberMap map[string]Member `bson:"memberMap"`
Expand Down
12 changes: 8 additions & 4 deletions models/sys/vm/dto.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package vm
import (
"go-deploy/models/dto/body"
"go-deploy/service"
"go-deploy/utils"
)

func (vm *VM) ToDTO(status string, connectionString *string, gpu *body.GpuRead, externalPortMapper map[string]int) body.VmRead {
Expand Down Expand Up @@ -70,10 +71,13 @@ func (vm *VM) ToDTO(status string, connectionString *string, gpu *body.GpuRead,
}

return body.VmRead{
ID: vm.ID,
Name: vm.Name,
OwnerID: vm.OwnerID,
Zone: vm.Zone,
ID: vm.ID,
Name: vm.Name,
OwnerID: vm.OwnerID,
Zone: vm.Zone,
CreatedAt: vm.CreatedAt,
UpdatedAt: utils.NonZeroOrNil(vm.UpdatedAt),
RepairedAt: utils.NonZeroOrNil(vm.RepairedAt),
Specs: body.Specs{
CpuCores: vm.Specs.CpuCores,
RAM: vm.Specs.RAM,
Expand Down
2 changes: 1 addition & 1 deletion models/sys/vm/vm.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ type VM struct {
StatusCode int `bson:"statusCode"`
StatusMessage string `bson:"statusMessage"`

Transfer *Transfer `bson:"transfer"`
Transfer *Transfer `bson:"transfer,omitempty"`
}

type Specs struct {
Expand Down
5 changes: 5 additions & 0 deletions service/user_service/team_service.go
Original file line number Diff line number Diff line change
Expand Up @@ -245,6 +245,11 @@ func UpdateTeamAuth(id string, dtoUpdateTeam *body.TeamUpdate, auth *service.Aut
return nil, TeamNotFoundErr
}

err = teamClient.MarkUpdated(id)
if err != nil {
return nil, err
}

return afterUpdate, nil
}

Expand Down
9 changes: 9 additions & 0 deletions utils/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"fmt"
"log"
"strings"
"time"
)

func HashString(token string) string {
Expand Down Expand Up @@ -84,3 +85,11 @@ func PrettyPrintError(err error) {
func EmptyValue(s *string) bool {
return s != nil && *s == ""
}

func NonZeroOrNil(t time.Time) *time.Time {
if t.IsZero() {
return nil
}

return &t
}

0 comments on commit ea0d373

Please sign in to comment.