blob: b83a5a008bb80bdd1a0343678c153634d5094f5e [file] [log] [blame]
package main
import (
"github.com/giolekva/pcloud/core/installer"
"github.com/giolekva/pcloud/core/installer/kube"
"github.com/giolekva/pcloud/core/installer/status"
)
func newNSCreator() (installer.NamespaceCreator, error) {
return installer.NewNamespaceCreator(kube.KubeConfigOpts{
KubeConfigPath: rootFlags.kubeConfig,
})
}
func newZoneFetcher() (installer.ZoneStatusFetcher, error) {
return installer.NewZoneStatusFetcher(rootFlags.kubeConfig)
}
func newHelmReleaseMonitor() (status.ResourceMonitor, error) {
return status.NewHelmReleaseMonitor(rootFlags.kubeConfig)
}
func newInstanceMonitor() (*status.InstanceMonitor, error) {
m, err := status.NewDelegatingMonitor(rootFlags.kubeConfig)
if err != nil {
return nil, err
}
return status.NewInstanceMonitor(m), nil
}
func newJobCreator() (installer.JobCreator, error) {
clientset, err := kube.NewKubeClient(kube.KubeConfigOpts{
KubeConfigPath: rootFlags.kubeConfig,
})
if err != nil {
return nil, err
}
return installer.NewJobCreator(clientset.BatchV1()), nil
}