-
Notifications
You must be signed in to change notification settings - Fork 56
/
build.go
42 lines (37 loc) · 1.26 KB
/
build.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package payloads
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"code.cloudfoundry.org/korifi/api/repositories"
)
type BuildCreate struct {
Package *RelationshipData `json:"package" validate:"required"`
StagingMemoryMB *int `json:"staging_memory_in_mb"`
StagingDiskMB *int `json:"staging_disk_in_mb"`
Lifecycle *Lifecycle `json:"lifecycle"`
Metadata Metadata `json:"metadata"`
}
func (c *BuildCreate) ToMessage(record repositories.PackageRecord) repositories.CreateBuildMessage {
toReturn := repositories.CreateBuildMessage{
AppGUID: record.AppGUID,
PackageGUID: c.Package.GUID,
SpaceGUID: record.SpaceGUID,
StagingMemoryMB: DefaultLifecycleConfig.StagingMemoryMB,
StagingDiskMB: DefaultLifecycleConfig.StagingDiskMB,
Lifecycle: repositories.Lifecycle{
Type: DefaultLifecycleConfig.Type,
Data: repositories.LifecycleData{
Buildpacks: []string{},
Stack: DefaultLifecycleConfig.Stack,
},
},
Labels: c.Metadata.Labels,
Annotations: c.Metadata.Annotations,
OwnerRef: metav1.OwnerReference{
APIVersion: repositories.APIVersion,
Kind: "CFPackage",
Name: record.GUID,
UID: record.UID,
},
}
return toReturn
}