Update Certs to use generated code

This commit is contained in:
Bowei Du 2018-01-17 21:56:59 -08:00
parent f83c5379dc
commit 271935d7d9

View File

@ -17,9 +17,13 @@ limitations under the License.
package gce package gce
import ( import (
"context"
"net/http" "net/http"
compute "google.golang.org/api/compute/v1" compute "google.golang.org/api/compute/v1"
"k8s.io/kubernetes/pkg/cloudprovider/providers/gce/cloud/filter"
"k8s.io/kubernetes/pkg/cloudprovider/providers/gce/cloud/meta"
) )
func newCertMetricContext(request string) *metricContext { func newCertMetricContext(request string) *metricContext {
@ -29,46 +33,33 @@ func newCertMetricContext(request string) *metricContext {
// GetSslCertificate returns the SslCertificate by name. // GetSslCertificate returns the SslCertificate by name.
func (gce *GCECloud) GetSslCertificate(name string) (*compute.SslCertificate, error) { func (gce *GCECloud) GetSslCertificate(name string) (*compute.SslCertificate, error) {
mc := newCertMetricContext("get") mc := newCertMetricContext("get")
v, err := gce.service.SslCertificates.Get(gce.projectID, name).Do() v, err := gce.c.SslCertificates().Get(context.Background(), meta.GlobalKey(name))
return v, mc.Observe(err) return v, mc.Observe(err)
} }
// CreateSslCertificate creates and returns a SslCertificate. // CreateSslCertificate creates and returns a SslCertificate.
func (gce *GCECloud) CreateSslCertificate(sslCerts *compute.SslCertificate) (*compute.SslCertificate, error) { func (gce *GCECloud) CreateSslCertificate(sslCerts *compute.SslCertificate) (*compute.SslCertificate, error) {
mc := newCertMetricContext("create") mc := newCertMetricContext("create")
op, err := gce.service.SslCertificates.Insert(gce.projectID, sslCerts).Do() err := gce.c.SslCertificates().Insert(context.Background(), meta.GlobalKey(sslCerts.Name), sslCerts)
if err != nil { if err != nil {
return nil, mc.Observe(err) return nil, mc.Observe(err)
} }
if err = gce.waitForGlobalOp(op, mc); err != nil {
return nil, mc.Observe(err)
}
return gce.GetSslCertificate(sslCerts.Name) return gce.GetSslCertificate(sslCerts.Name)
} }
// DeleteSslCertificate deletes the SslCertificate by name. // DeleteSslCertificate deletes the SslCertificate by name.
func (gce *GCECloud) DeleteSslCertificate(name string) error { func (gce *GCECloud) DeleteSslCertificate(name string) error {
mc := newCertMetricContext("delete") mc := newCertMetricContext("delete")
op, err := gce.service.SslCertificates.Delete(gce.projectID, name).Do() err := gce.c.SslCertificates().Delete(context.Background(), meta.GlobalKey(name))
if err != nil {
if isHTTPErrorCode(err, http.StatusNotFound) { if isHTTPErrorCode(err, http.StatusNotFound) {
return nil err = nil
} }
return mc.Observe(err) return mc.Observe(err)
} }
return gce.waitForGlobalOp(op, mc)
}
// ListSslCertificates lists all SslCertificates in the project. // ListSslCertificates lists all SslCertificates in the project.
func (gce *GCECloud) ListSslCertificates() (*compute.SslCertificateList, error) { func (gce *GCECloud) ListSslCertificates() ([]*compute.SslCertificate, error) {
mc := newCertMetricContext("list") mc := newCertMetricContext("list")
// TODO: use PageToken to list all not just the first 500 v, err := gce.c.SslCertificates().List(context.Background(), filter.None)
v, err := gce.service.SslCertificates.List(gce.projectID).Do()
return v, mc.Observe(err) return v, mc.Observe(err)
} }