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 43 44 45 46 47 48 49 50 51 52 53 54
|
package apiutils
import (
"context"
"time"
"github.com/mimuret/golang-iij-dpf/pkg/api"
"github.com/mimuret/golang-iij-dpf/pkg/apis/dpf/v1/core"
)
func SyncUpdate(ctx context.Context, cl api.ClientInterface, s api.Spec, body interface{}) (string, *core.Job, error) {
requestID, err := cl.Update(ctx, s, body)
if err != nil {
return requestID, nil, err
}
job, err := WaitJob(ctx, cl, requestID, time.Second)
return requestID, job, err
}
func SyncCreate(ctx context.Context, cl api.ClientInterface, s api.Spec, body interface{}) (string, *core.Job, error) {
requestID, err := cl.Create(ctx, s, body)
if err != nil {
return requestID, nil, err
}
job, err := WaitJob(ctx, cl, requestID, time.Second)
return requestID, job, err
}
func SyncApply(ctx context.Context, cl api.ClientInterface, s api.Spec, body interface{}) (string, *core.Job, error) {
requestID, err := cl.Apply(ctx, s, body)
if err != nil {
return requestID, nil, err
}
job, err := WaitJob(ctx, cl, requestID, time.Second)
return requestID, job, err
}
func SyncDelete(ctx context.Context, cl api.ClientInterface, s api.Spec) (string, *core.Job, error) {
requestID, err := cl.Delete(ctx, s)
if err != nil {
return requestID, nil, err
}
job, err := WaitJob(ctx, cl, requestID, time.Second)
return requestID, job, err
}
func SyncCancel(ctx context.Context, cl api.ClientInterface, s api.Spec) (string, *core.Job, error) {
requestID, err := cl.Cancel(ctx, s)
if err != nil {
return requestID, nil, err
}
job, err := WaitJob(ctx, cl, requestID, time.Second)
return requestID, job, err
}
|