Added docs about Go types usage by myasnikovdaniil · Pull Request #465 · cozystack/website

redisConfig := redis.Config{
TypeMeta: metav1.TypeMeta{
APIVersion: "apps.cozystack.io/v1alpha1",
Kind: "Redis",
},
ObjectMeta: metav1.ObjectMeta{
Name: "cache",
Namespace: "tenant-myapp",
},
Spec: redis.ConfigSpec{
Replicas: 2,
Size: resource.MustParse("5Gi"),
Version: redis.Version("v8"),
AuthEnabled: true,
ResourcesPreset: redis.ResourcesPreset("medium"),
},
}

// Create a VMInstance with disks
vmConfig := vminstance.Config{
TypeMeta: metav1.TypeMeta{
APIVersion: "apps.cozystack.io/v1alpha1",
Kind: "VMInstance",
},
ObjectMeta: metav1.ObjectMeta{
Name: "my-vm",
Namespace: "tenant-myapp",
},
Spec: vminstance.ConfigSpec{
InstanceType: "u1.medium",
InstanceProfile: "ubuntu",
RunStrategy: vminstance.RunStrategy("Always"),
External: true,
ExternalMethod: vminstance.ExternalMethod("PortList"),
ExternalPorts: []int{22, 80, 443},
Resources: vminstance.Resources{
Cpu: resource.MustParse("2"),
Memory: resource.MustParse("4Gi"),
Sockets: resource.MustParse("1"),
},
Disks: []vminstance.Disk{
{Bus: "sata", Name: "rootdisk"},
{Bus: "sata", Name: "datadisk"},
},
Subnets: []vminstance.Subnet{
{Name: "default"},
},
SshKeys: []string{
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ...",
},
CloudInit: `#cloud-config
packages:
- nginx`,
},
}
}