MCPcopy Create free account
hub / github.com/cloudnative-pg/cloudnative-pg / installObjectStore

Function installObjectStore

tests/utils/objectstore/objectstore.go:95–134  ·  view source on GitHub ↗

installObjectStore installs the object storage server in a given namespace

(
	env *environment.TestingEnvironment,
	setup Setup,
	timeoutSeconds uint,
)

Source from the content-addressed store, hash-verified

93
94// installObjectStore installs the object storage server in a given namespace
95func installObjectStore(
96 env *environment.TestingEnvironment,
97 setup Setup,
98 timeoutSeconds uint,
99) error {
100 if err := env.Client.Create(env.Ctx, &setup.PersistentVolumeClaim); err != nil {
101 return err
102 }
103 if err := env.Client.Create(env.Ctx, &setup.Deployment); err != nil {
104 return err
105 }
106 err := retry.New(
107 retry.Attempts(timeoutSeconds),
108 retry.Delay(time.Second),
109 retry.DelayType(retry.FixedDelay)).
110 Do(
111 func() error {
112 deployment := &appsv1.Deployment{}
113 if err := env.Client.Get(
114 env.Ctx,
115 client.ObjectKey{Namespace: setup.Deployment.Namespace, Name: setup.Deployment.Name},
116 deployment,
117 ); err != nil {
118 return err
119 }
120 if deployment.Status.ReadyReplicas != *setup.Deployment.Spec.Replicas {
121 return fmt.Errorf("not all replicas are ready. Expected %v, found %v",
122 *setup.Deployment.Spec.Replicas,
123 deployment.Status.ReadyReplicas,
124 )
125 }
126 return nil
127 },
128 )
129 if err != nil {
130 return err
131 }
132 err = env.Client.Create(env.Ctx, &setup.Service)
133 return err
134}
135
136// defaultSetup returns the definition for the default object storage setup
137func defaultSetup(namespace string) (Setup, error) {

Callers 1

DeployFunction · 0.85

Calls 2

CreateMethod · 0.65
GetMethod · 0.45

Tested by

no test coverage detected