Pull placeholder-name-api back into this repo as a library.

Signed-off-by: Matt Moyer <moyerm@vmware.com>
This commit is contained in:
Matt Moyer 2020-08-05 15:58:03 -05:00
parent ad55f9e310
commit cbe4c1b370
50 changed files with 4034 additions and 31 deletions

4
go.mod
View File

@ -4,6 +4,7 @@ go 1.14
require (
github.com/go-logr/logr v0.2.0
github.com/go-openapi/spec v0.19.3
github.com/golang/mock v1.4.3
github.com/golangci/golangci-lint v1.29.0
github.com/google/go-cmp v0.5.0
@ -11,7 +12,6 @@ require (
github.com/spf13/cobra v1.0.0
github.com/stretchr/testify v1.6.1
github.com/suzerain-io/controller-go v0.0.0-20200730212956-7f99b569ca9f
github.com/suzerain-io/placeholder-name-api v0.0.0-20200731224558-ff85679d3364
github.com/suzerain-io/placeholder-name/pkg/client v0.0.0-00010101000000-000000000000
golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e // indirect
k8s.io/api v0.19.0-rc.0
@ -21,6 +21,8 @@ require (
k8s.io/component-base v0.19.0-rc.0
k8s.io/klog/v2 v2.2.0
k8s.io/kube-aggregator v0.19.0-rc.0
k8s.io/kube-openapi v0.0.0-20200615155156-dffdd1682719
k8s.io/utils v0.0.0-20200619165400-6e3d28b6ed19
sigs.k8s.io/yaml v1.2.0
)

2
go.sum
View File

@ -532,8 +532,6 @@ github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s
github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw=
github.com/suzerain-io/controller-go v0.0.0-20200730212956-7f99b569ca9f h1:gZ6rAdl+VE9DT0yE52xY/kJZ/hOJYxwtsgGoPr5vItI=
github.com/suzerain-io/controller-go v0.0.0-20200730212956-7f99b569ca9f/go.mod h1:+v9upryFWBJac6KXKlheGHr7e3kqpk1ldH1iIMFopMs=
github.com/suzerain-io/placeholder-name-api v0.0.0-20200731224558-ff85679d3364 h1:5NaQExCSh8+6YP3QNhWsWyMrEd+7zsnrznRlisydlZo=
github.com/suzerain-io/placeholder-name-api v0.0.0-20200731224558-ff85679d3364/go.mod h1:OuYBJDpMMnvMUoBn+XeMWtHghuYk0cq9bNkNa3T8j/g=
github.com/tdakkota/asciicheck v0.0.0-20200416190851-d7f85be797a2 h1:Xr9gkxfOP0KQWXKNqmwe8vEeSUiUj4Rlee9CMVX2ZUQ=
github.com/tdakkota/asciicheck v0.0.0-20200416190851-d7f85be797a2/go.mod h1:yHp0ai0Z9gUljN3o0xMhYJnH/IcvkdTBOX2fmJ93JEM=
github.com/tetafro/godot v0.4.2 h1:Dib7un+rYJFUi8vN0Bk6EHheKy6fv6ZzFURHw75g6m8=

View File

@ -20,9 +20,9 @@ import (
"k8s.io/client-go/pkg/version"
"k8s.io/klog/v2"
placeholderapi "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/internal/registry/loginrequest"
placeholderapi "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
)
var (

View File

@ -14,7 +14,7 @@ import (
"k8s.io/client-go/util/retry"
aggregatationv1client "k8s.io/kube-aggregator/pkg/client/clientset_generated/clientset"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
)
// UpdateAPIService updates the APIService's CA bundle.

View File

@ -17,7 +17,7 @@ import (
"k8s.io/klog/v2"
"github.com/suzerain-io/controller-go"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
placeholderclientset "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned"
crdsplaceholderv1alpha1informers "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions/crdsplaceholder/v1alpha1"
)

View File

@ -24,7 +24,7 @@ import (
coretesting "k8s.io/client-go/testing"
"github.com/suzerain-io/controller-go"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
placeholderfake "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned/fake"
placeholderinformers "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions"
)

View File

@ -21,7 +21,7 @@ import (
"k8s.io/apiserver/pkg/registry/rest"
"k8s.io/utils/trace"
placeholderapi "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder"
placeholderapi "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder"
)
// clientCertificateTTL is the TTL for short-lived client certificates returned by this API.

View File

@ -25,9 +25,9 @@ import (
"k8s.io/apiserver/pkg/registry/rest"
"k8s.io/klog/v2"
placeholderapi "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder"
"github.com/suzerain-io/placeholder-name/internal/mocks/mockcertissuer"
"github.com/suzerain-io/placeholder-name/internal/testutil"
placeholderapi "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder"
)
type contextKey struct{}

View File

@ -28,14 +28,14 @@ import (
aggregationv1client "k8s.io/kube-aggregator/pkg/client/clientset_generated/clientset"
"github.com/suzerain-io/controller-go"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
placeholderclientset "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned"
placeholderinformers "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions"
"github.com/suzerain-io/placeholder-name/internal/apiserver"
"github.com/suzerain-io/placeholder-name/internal/autoregistration"
"github.com/suzerain-io/placeholder-name/internal/certauthority"
"github.com/suzerain-io/placeholder-name/internal/controller/logindiscovery"
"github.com/suzerain-io/placeholder-name/internal/downward"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
placeholderclientset "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned"
placeholderinformers "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions"
"github.com/suzerain-io/placeholder-name/pkg/config"
)

View File

@ -0,0 +1,10 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// +k8s:deepcopy-gen=package
// +groupName=crds.placeholder.suzerain-io.github.io
// Package placeholder is the internal version of the API.
package crdsplaceholder

View File

@ -0,0 +1,38 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package crdsplaceholder
import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
const GroupName = "crds.placeholder.suzerain-io.github.io"
// SchemeGroupVersion is group version used to register these objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
// Kind takes an unqualified kind and returns back a Group qualified GroupKind.
func Kind(kind string) schema.GroupKind {
return SchemeGroupVersion.WithKind(kind).GroupKind()
}
// Resource takes an unqualified resource and returns back a Group qualified GroupResource.
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
}
var (
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
)
// Adds the list of known types to the given scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion)
return nil
}

View File

@ -0,0 +1,6 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package crdsplaceholder

View File

@ -0,0 +1,6 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1

View File

@ -0,0 +1,14 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import (
"k8s.io/apimachinery/pkg/runtime"
)
func addDefaultingFuncs(scheme *runtime.Scheme) error {
return RegisterDefaults(scheme)
}

View File

@ -0,0 +1,13 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// +k8s:openapi-gen=true
// +k8s:deepcopy-gen=package
// +k8s:conversion-gen=github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder
// +k8s:defaulter-gen=TypeMeta
// +groupName=crds.placeholder.suzerain-io.github.io
// Package v1alpha1 is the v1alpha1 version of the API.
package v1alpha1

View File

@ -0,0 +1,45 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
const GroupName = "crds.placeholder.suzerain-io.github.io"
// SchemeGroupVersion is group version used to register these objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
var (
SchemeBuilder runtime.SchemeBuilder
localSchemeBuilder = &SchemeBuilder
AddToScheme = localSchemeBuilder.AddToScheme
)
func init() {
// We only register manually written functions here. The registration of the
// generated functions takes place in the generated files. The separation
// makes the code compile even when the generated files are missing.
localSchemeBuilder.Register(addKnownTypes, addDefaultingFuncs)
}
// Adds the list of known types to the given scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
&LoginDiscoveryConfig{},
&LoginDiscoveryConfigList{},
)
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
return nil
}
// Resource takes an unqualified resource and returns a Group qualified GroupResource.
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
}

View File

@ -0,0 +1,35 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
type LoginDiscoveryConfigSpec struct {
// The K8s API server URL. Required.
Server string `json:"server,omitempty"`
// The K8s API server CA bundle. Required.
CertificateAuthorityData string `json:"certificateAuthorityData,omitempty"`
}
// +genclient
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
type LoginDiscoveryConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec LoginDiscoveryConfigSpec `json:"spec"`
}
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
type LoginDiscoveryConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []LoginDiscoveryConfig `json:"items"`
}

View File

@ -0,0 +1,24 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by conversion-gen. DO NOT EDIT.
package v1alpha1
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
func init() {
localSchemeBuilder.Register(RegisterConversions)
}
// RegisterConversions adds conversion functions to the given scheme.
// Public to allow building arbitrary schemes.
func RegisterConversions(s *runtime.Scheme) error {
return nil
}

View File

@ -0,0 +1,90 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package v1alpha1
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginDiscoveryConfig) DeepCopyInto(out *LoginDiscoveryConfig) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
out.Spec = in.Spec
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginDiscoveryConfig.
func (in *LoginDiscoveryConfig) DeepCopy() *LoginDiscoveryConfig {
if in == nil {
return nil
}
out := new(LoginDiscoveryConfig)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginDiscoveryConfig) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginDiscoveryConfigList) DeepCopyInto(out *LoginDiscoveryConfigList) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ListMeta.DeepCopyInto(&out.ListMeta)
if in.Items != nil {
in, out := &in.Items, &out.Items
*out = make([]LoginDiscoveryConfig, len(*in))
for i := range *in {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginDiscoveryConfigList.
func (in *LoginDiscoveryConfigList) DeepCopy() *LoginDiscoveryConfigList {
if in == nil {
return nil
}
out := new(LoginDiscoveryConfigList)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginDiscoveryConfigList) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginDiscoveryConfigSpec) DeepCopyInto(out *LoginDiscoveryConfigSpec) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginDiscoveryConfigSpec.
func (in *LoginDiscoveryConfigSpec) DeepCopy() *LoginDiscoveryConfigSpec {
if in == nil {
return nil
}
out := new(LoginDiscoveryConfigSpec)
in.DeepCopyInto(out)
return out
}

View File

@ -0,0 +1,21 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by defaulter-gen. DO NOT EDIT.
package v1alpha1
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
// RegisterDefaults adds defaulters functions to the given scheme.
// Public to allow building arbitrary schemes.
// All generated defaulters are covering - they call all nested defaulters.
func RegisterDefaults(scheme *runtime.Scheme) error {
return nil
}

View File

@ -0,0 +1,10 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package crdsplaceholder

View File

@ -0,0 +1,10 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// +k8s:deepcopy-gen=package
// +groupName=placeholder.suzerain-io.github.io
// Package placeholder is the internal version of the API.
package placeholder

View File

@ -0,0 +1,21 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package install
import (
"k8s.io/apimachinery/pkg/runtime"
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
"github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder"
"github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
)
// Install registers the API group and adds types to a scheme.
func Install(scheme *runtime.Scheme) {
utilruntime.Must(placeholder.AddToScheme(scheme))
utilruntime.Must(v1alpha1.AddToScheme(scheme))
utilruntime.Must(scheme.SetVersionPriority(v1alpha1.SchemeGroupVersion))
}

View File

@ -0,0 +1,40 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package placeholder
import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
const GroupName = "placeholder.suzerain-io.github.io"
// SchemeGroupVersion is group version used to register these objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
// Kind takes an unqualified kind and returns back a Group qualified GroupKind.
func Kind(kind string) schema.GroupKind {
return SchemeGroupVersion.WithKind(kind).GroupKind()
}
// Resource takes an unqualified resource and returns back a Group qualified GroupResource.
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
}
var (
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
)
// Adds the list of known types to the given scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
&LoginRequest{},
&LoginRequestList{},
)
return nil
}

View File

@ -0,0 +1,87 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package placeholder
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
type LoginCredentialType string
const (
TokenLoginCredentialType = LoginCredentialType("token")
)
type LoginRequestTokenCredential struct {
// Value of the bearer token supplied with the login request.
Value string
}
type LoginRequestSpec struct {
// Type of credential.
Type LoginCredentialType
// Token credential (when Type == TokenLoginCredentialType).
Token *LoginRequestTokenCredential
}
type LoginRequestCredential struct {
// ExpirationTimestamp indicates a time when the provided credentials expire.
ExpirationTimestamp metav1.Time
// Token is a bearer token used by the client for request authentication.
Token string
// PEM-encoded client TLS certificates (including intermediates, if any).
ClientCertificateData string
// PEM-encoded private key for the above certificate.
ClientKeyData string
}
type User struct {
// Identity Provider name for authenticated user.
Name string
// Identity Provider groups for authenticated user.
Groups []string
}
type LoginRequestStatus struct {
// A Credential will be returned for a successful login request.
// +optional
Credential *LoginRequestCredential
// A User will be populated from the Identity Provider.
// +optional
User *User
// An error message will be returned for an unsuccessful login request.
// +optional
Message string
}
// +genclient
// +genclient:nonNamespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
type LoginRequest struct {
metav1.TypeMeta
metav1.ObjectMeta
Spec LoginRequestSpec
Status LoginRequestStatus
}
// +genclient:nonNamespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// LoginRequestList is a list of LoginRequest objects.
type LoginRequestList struct {
metav1.TypeMeta
metav1.ListMeta
// Items is a list of LoginRequests
Items []LoginRequest
}

View File

@ -0,0 +1,6 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1

View File

@ -0,0 +1,14 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import (
"k8s.io/apimachinery/pkg/runtime"
)
func addDefaultingFuncs(scheme *runtime.Scheme) error {
return RegisterDefaults(scheme)
}

View File

@ -0,0 +1,13 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// +k8s:openapi-gen=true
// +k8s:deepcopy-gen=package
// +k8s:conversion-gen=github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder
// +k8s:defaulter-gen=TypeMeta
// +groupName=placeholder.suzerain-io.github.io
// Package v1alpha1 is the v1alpha1 version of the API.
package v1alpha1

View File

@ -0,0 +1,45 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)
const GroupName = "placeholder.suzerain-io.github.io"
// SchemeGroupVersion is group version used to register these objects.
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
var (
SchemeBuilder runtime.SchemeBuilder
localSchemeBuilder = &SchemeBuilder
AddToScheme = localSchemeBuilder.AddToScheme
)
func init() {
// We only register manually written functions here. The registration of the
// generated functions takes place in the generated files. The separation
// makes the code compile even when the generated files are missing.
localSchemeBuilder.Register(addKnownTypes, addDefaultingFuncs)
}
// Adds the list of known types to the given scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
&LoginRequest{},
&LoginRequestList{},
)
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
return nil
}
// Resource takes an unqualified resource and returns a Group qualified GroupResource.
func Resource(resource string) schema.GroupResource {
return SchemeGroupVersion.WithResource(resource).GroupResource()
}

View File

@ -0,0 +1,86 @@
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
package v1alpha1
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
type LoginCredentialType string
const (
TokenLoginCredentialType = LoginCredentialType("token")
)
type LoginRequestTokenCredential struct {
// Value of the bearer token supplied with the login request.
Value string `json:"value,omitempty" protobuf:"bytes,1,opt,name=value"`
}
type LoginRequestSpec struct {
// Type of credential.
Type LoginCredentialType `json:"type,omitempty" protobuf:"bytes,1,opt,name=type"`
// Token credential (when Type == TokenLoginCredentialType).
Token *LoginRequestTokenCredential `json:"token,omitempty" protobuf:"bytes,2,opt,name=token"`
}
type LoginRequestCredential struct {
// ExpirationTimestamp indicates a time when the provided credentials expire.
ExpirationTimestamp metav1.Time `json:"expirationTimestamp,omitempty"`
// Token is a bearer token used by the client for request authentication.
Token string `json:"token,omitempty"`
// PEM-encoded client TLS certificates (including intermediates, if any).
ClientCertificateData string `json:"clientCertificateData,omitempty"`
// PEM-encoded private key for the above certificate.
ClientKeyData string `json:"clientKeyData,omitempty"`
}
type User struct {
// Identity Provider name for authenticated user.
Name string `json:"name,omitempty"`
// Identity Provider groups for authenticated user.
Groups []string `json:"groups"`
}
type LoginRequestStatus struct {
// A Credential will be returned for a successful login request.
// +optional
Credential *LoginRequestCredential `json:"credential,omitempty"`
// A User will be populated from the Identity Provider.
// +optional
User *User `json:"user,omitempty"`
// An error message will be returned for an unsuccessful login request.
// +optional
Message string `json:"message,omitempty"`
}
// +genclient
// +genclient:nonNamespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
type LoginRequest struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Spec LoginRequestSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
Status LoginRequestStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}
// +genclient:nonNamespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// LoginRequestList is a list of LoginRequest objects.
type LoginRequestList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Items []LoginRequest `json:"items" protobuf:"bytes,2,rep,name=items"`
}

View File

@ -0,0 +1,266 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by conversion-gen. DO NOT EDIT.
package v1alpha1
import (
unsafe "unsafe"
placeholder "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder"
conversion "k8s.io/apimachinery/pkg/conversion"
runtime "k8s.io/apimachinery/pkg/runtime"
)
func init() {
localSchemeBuilder.Register(RegisterConversions)
}
// RegisterConversions adds conversion functions to the given scheme.
// Public to allow building arbitrary schemes.
func RegisterConversions(s *runtime.Scheme) error {
if err := s.AddGeneratedConversionFunc((*LoginRequest)(nil), (*placeholder.LoginRequest)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequest_To_placeholder_LoginRequest(a.(*LoginRequest), b.(*placeholder.LoginRequest), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequest)(nil), (*LoginRequest)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequest_To_v1alpha1_LoginRequest(a.(*placeholder.LoginRequest), b.(*LoginRequest), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*LoginRequestCredential)(nil), (*placeholder.LoginRequestCredential)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequestCredential_To_placeholder_LoginRequestCredential(a.(*LoginRequestCredential), b.(*placeholder.LoginRequestCredential), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequestCredential)(nil), (*LoginRequestCredential)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequestCredential_To_v1alpha1_LoginRequestCredential(a.(*placeholder.LoginRequestCredential), b.(*LoginRequestCredential), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*LoginRequestList)(nil), (*placeholder.LoginRequestList)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequestList_To_placeholder_LoginRequestList(a.(*LoginRequestList), b.(*placeholder.LoginRequestList), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequestList)(nil), (*LoginRequestList)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequestList_To_v1alpha1_LoginRequestList(a.(*placeholder.LoginRequestList), b.(*LoginRequestList), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*LoginRequestSpec)(nil), (*placeholder.LoginRequestSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec(a.(*LoginRequestSpec), b.(*placeholder.LoginRequestSpec), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequestSpec)(nil), (*LoginRequestSpec)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec(a.(*placeholder.LoginRequestSpec), b.(*LoginRequestSpec), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*LoginRequestStatus)(nil), (*placeholder.LoginRequestStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus(a.(*LoginRequestStatus), b.(*placeholder.LoginRequestStatus), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequestStatus)(nil), (*LoginRequestStatus)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus(a.(*placeholder.LoginRequestStatus), b.(*LoginRequestStatus), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*LoginRequestTokenCredential)(nil), (*placeholder.LoginRequestTokenCredential)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_LoginRequestTokenCredential_To_placeholder_LoginRequestTokenCredential(a.(*LoginRequestTokenCredential), b.(*placeholder.LoginRequestTokenCredential), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.LoginRequestTokenCredential)(nil), (*LoginRequestTokenCredential)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_LoginRequestTokenCredential_To_v1alpha1_LoginRequestTokenCredential(a.(*placeholder.LoginRequestTokenCredential), b.(*LoginRequestTokenCredential), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*User)(nil), (*placeholder.User)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1alpha1_User_To_placeholder_User(a.(*User), b.(*placeholder.User), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*placeholder.User)(nil), (*User)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_placeholder_User_To_v1alpha1_User(a.(*placeholder.User), b.(*User), scope)
}); err != nil {
return err
}
return nil
}
func autoConvert_v1alpha1_LoginRequest_To_placeholder_LoginRequest(in *LoginRequest, out *placeholder.LoginRequest, s conversion.Scope) error {
out.ObjectMeta = in.ObjectMeta
if err := Convert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec(&in.Spec, &out.Spec, s); err != nil {
return err
}
if err := Convert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus(&in.Status, &out.Status, s); err != nil {
return err
}
return nil
}
// Convert_v1alpha1_LoginRequest_To_placeholder_LoginRequest is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequest_To_placeholder_LoginRequest(in *LoginRequest, out *placeholder.LoginRequest, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequest_To_placeholder_LoginRequest(in, out, s)
}
func autoConvert_placeholder_LoginRequest_To_v1alpha1_LoginRequest(in *placeholder.LoginRequest, out *LoginRequest, s conversion.Scope) error {
out.ObjectMeta = in.ObjectMeta
if err := Convert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec(&in.Spec, &out.Spec, s); err != nil {
return err
}
if err := Convert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus(&in.Status, &out.Status, s); err != nil {
return err
}
return nil
}
// Convert_placeholder_LoginRequest_To_v1alpha1_LoginRequest is an autogenerated conversion function.
func Convert_placeholder_LoginRequest_To_v1alpha1_LoginRequest(in *placeholder.LoginRequest, out *LoginRequest, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequest_To_v1alpha1_LoginRequest(in, out, s)
}
func autoConvert_v1alpha1_LoginRequestCredential_To_placeholder_LoginRequestCredential(in *LoginRequestCredential, out *placeholder.LoginRequestCredential, s conversion.Scope) error {
out.ExpirationTimestamp = in.ExpirationTimestamp
out.Token = in.Token
out.ClientCertificateData = in.ClientCertificateData
out.ClientKeyData = in.ClientKeyData
return nil
}
// Convert_v1alpha1_LoginRequestCredential_To_placeholder_LoginRequestCredential is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequestCredential_To_placeholder_LoginRequestCredential(in *LoginRequestCredential, out *placeholder.LoginRequestCredential, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequestCredential_To_placeholder_LoginRequestCredential(in, out, s)
}
func autoConvert_placeholder_LoginRequestCredential_To_v1alpha1_LoginRequestCredential(in *placeholder.LoginRequestCredential, out *LoginRequestCredential, s conversion.Scope) error {
out.ExpirationTimestamp = in.ExpirationTimestamp
out.Token = in.Token
out.ClientCertificateData = in.ClientCertificateData
out.ClientKeyData = in.ClientKeyData
return nil
}
// Convert_placeholder_LoginRequestCredential_To_v1alpha1_LoginRequestCredential is an autogenerated conversion function.
func Convert_placeholder_LoginRequestCredential_To_v1alpha1_LoginRequestCredential(in *placeholder.LoginRequestCredential, out *LoginRequestCredential, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequestCredential_To_v1alpha1_LoginRequestCredential(in, out, s)
}
func autoConvert_v1alpha1_LoginRequestList_To_placeholder_LoginRequestList(in *LoginRequestList, out *placeholder.LoginRequestList, s conversion.Scope) error {
out.ListMeta = in.ListMeta
out.Items = *(*[]placeholder.LoginRequest)(unsafe.Pointer(&in.Items))
return nil
}
// Convert_v1alpha1_LoginRequestList_To_placeholder_LoginRequestList is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequestList_To_placeholder_LoginRequestList(in *LoginRequestList, out *placeholder.LoginRequestList, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequestList_To_placeholder_LoginRequestList(in, out, s)
}
func autoConvert_placeholder_LoginRequestList_To_v1alpha1_LoginRequestList(in *placeholder.LoginRequestList, out *LoginRequestList, s conversion.Scope) error {
out.ListMeta = in.ListMeta
out.Items = *(*[]LoginRequest)(unsafe.Pointer(&in.Items))
return nil
}
// Convert_placeholder_LoginRequestList_To_v1alpha1_LoginRequestList is an autogenerated conversion function.
func Convert_placeholder_LoginRequestList_To_v1alpha1_LoginRequestList(in *placeholder.LoginRequestList, out *LoginRequestList, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequestList_To_v1alpha1_LoginRequestList(in, out, s)
}
func autoConvert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec(in *LoginRequestSpec, out *placeholder.LoginRequestSpec, s conversion.Scope) error {
out.Type = placeholder.LoginCredentialType(in.Type)
out.Token = (*placeholder.LoginRequestTokenCredential)(unsafe.Pointer(in.Token))
return nil
}
// Convert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec(in *LoginRequestSpec, out *placeholder.LoginRequestSpec, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequestSpec_To_placeholder_LoginRequestSpec(in, out, s)
}
func autoConvert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec(in *placeholder.LoginRequestSpec, out *LoginRequestSpec, s conversion.Scope) error {
out.Type = LoginCredentialType(in.Type)
out.Token = (*LoginRequestTokenCredential)(unsafe.Pointer(in.Token))
return nil
}
// Convert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec is an autogenerated conversion function.
func Convert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec(in *placeholder.LoginRequestSpec, out *LoginRequestSpec, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequestSpec_To_v1alpha1_LoginRequestSpec(in, out, s)
}
func autoConvert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus(in *LoginRequestStatus, out *placeholder.LoginRequestStatus, s conversion.Scope) error {
out.Credential = (*placeholder.LoginRequestCredential)(unsafe.Pointer(in.Credential))
out.User = (*placeholder.User)(unsafe.Pointer(in.User))
out.Message = in.Message
return nil
}
// Convert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus(in *LoginRequestStatus, out *placeholder.LoginRequestStatus, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequestStatus_To_placeholder_LoginRequestStatus(in, out, s)
}
func autoConvert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus(in *placeholder.LoginRequestStatus, out *LoginRequestStatus, s conversion.Scope) error {
out.Credential = (*LoginRequestCredential)(unsafe.Pointer(in.Credential))
out.User = (*User)(unsafe.Pointer(in.User))
out.Message = in.Message
return nil
}
// Convert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus is an autogenerated conversion function.
func Convert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus(in *placeholder.LoginRequestStatus, out *LoginRequestStatus, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequestStatus_To_v1alpha1_LoginRequestStatus(in, out, s)
}
func autoConvert_v1alpha1_LoginRequestTokenCredential_To_placeholder_LoginRequestTokenCredential(in *LoginRequestTokenCredential, out *placeholder.LoginRequestTokenCredential, s conversion.Scope) error {
out.Value = in.Value
return nil
}
// Convert_v1alpha1_LoginRequestTokenCredential_To_placeholder_LoginRequestTokenCredential is an autogenerated conversion function.
func Convert_v1alpha1_LoginRequestTokenCredential_To_placeholder_LoginRequestTokenCredential(in *LoginRequestTokenCredential, out *placeholder.LoginRequestTokenCredential, s conversion.Scope) error {
return autoConvert_v1alpha1_LoginRequestTokenCredential_To_placeholder_LoginRequestTokenCredential(in, out, s)
}
func autoConvert_placeholder_LoginRequestTokenCredential_To_v1alpha1_LoginRequestTokenCredential(in *placeholder.LoginRequestTokenCredential, out *LoginRequestTokenCredential, s conversion.Scope) error {
out.Value = in.Value
return nil
}
// Convert_placeholder_LoginRequestTokenCredential_To_v1alpha1_LoginRequestTokenCredential is an autogenerated conversion function.
func Convert_placeholder_LoginRequestTokenCredential_To_v1alpha1_LoginRequestTokenCredential(in *placeholder.LoginRequestTokenCredential, out *LoginRequestTokenCredential, s conversion.Scope) error {
return autoConvert_placeholder_LoginRequestTokenCredential_To_v1alpha1_LoginRequestTokenCredential(in, out, s)
}
func autoConvert_v1alpha1_User_To_placeholder_User(in *User, out *placeholder.User, s conversion.Scope) error {
out.Name = in.Name
out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups))
return nil
}
// Convert_v1alpha1_User_To_placeholder_User is an autogenerated conversion function.
func Convert_v1alpha1_User_To_placeholder_User(in *User, out *placeholder.User, s conversion.Scope) error {
return autoConvert_v1alpha1_User_To_placeholder_User(in, out, s)
}
func autoConvert_placeholder_User_To_v1alpha1_User(in *placeholder.User, out *User, s conversion.Scope) error {
out.Name = in.Name
out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups))
return nil
}
// Convert_placeholder_User_To_v1alpha1_User is an autogenerated conversion function.
func Convert_placeholder_User_To_v1alpha1_User(in *placeholder.User, out *User, s conversion.Scope) error {
return autoConvert_placeholder_User_To_v1alpha1_User(in, out, s)
}

View File

@ -0,0 +1,176 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package v1alpha1
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequest) DeepCopyInto(out *LoginRequest) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
in.Spec.DeepCopyInto(&out.Spec)
in.Status.DeepCopyInto(&out.Status)
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequest.
func (in *LoginRequest) DeepCopy() *LoginRequest {
if in == nil {
return nil
}
out := new(LoginRequest)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginRequest) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestCredential) DeepCopyInto(out *LoginRequestCredential) {
*out = *in
in.ExpirationTimestamp.DeepCopyInto(&out.ExpirationTimestamp)
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestCredential.
func (in *LoginRequestCredential) DeepCopy() *LoginRequestCredential {
if in == nil {
return nil
}
out := new(LoginRequestCredential)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestList) DeepCopyInto(out *LoginRequestList) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ListMeta.DeepCopyInto(&out.ListMeta)
if in.Items != nil {
in, out := &in.Items, &out.Items
*out = make([]LoginRequest, len(*in))
for i := range *in {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestList.
func (in *LoginRequestList) DeepCopy() *LoginRequestList {
if in == nil {
return nil
}
out := new(LoginRequestList)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginRequestList) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestSpec) DeepCopyInto(out *LoginRequestSpec) {
*out = *in
if in.Token != nil {
in, out := &in.Token, &out.Token
*out = new(LoginRequestTokenCredential)
**out = **in
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestSpec.
func (in *LoginRequestSpec) DeepCopy() *LoginRequestSpec {
if in == nil {
return nil
}
out := new(LoginRequestSpec)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestStatus) DeepCopyInto(out *LoginRequestStatus) {
*out = *in
if in.Credential != nil {
in, out := &in.Credential, &out.Credential
*out = new(LoginRequestCredential)
(*in).DeepCopyInto(*out)
}
if in.User != nil {
in, out := &in.User, &out.User
*out = new(User)
(*in).DeepCopyInto(*out)
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestStatus.
func (in *LoginRequestStatus) DeepCopy() *LoginRequestStatus {
if in == nil {
return nil
}
out := new(LoginRequestStatus)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestTokenCredential) DeepCopyInto(out *LoginRequestTokenCredential) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestTokenCredential.
func (in *LoginRequestTokenCredential) DeepCopy() *LoginRequestTokenCredential {
if in == nil {
return nil
}
out := new(LoginRequestTokenCredential)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *User) DeepCopyInto(out *User) {
*out = *in
if in.Groups != nil {
in, out := &in.Groups, &out.Groups
*out = make([]string, len(*in))
copy(*out, *in)
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.
func (in *User) DeepCopy() *User {
if in == nil {
return nil
}
out := new(User)
in.DeepCopyInto(out)
return out
}

View File

@ -0,0 +1,21 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by defaulter-gen. DO NOT EDIT.
package v1alpha1
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
// RegisterDefaults adds defaulters functions to the given scheme.
// Public to allow building arbitrary schemes.
// All generated defaulters are covering - they call all nested defaulters.
func RegisterDefaults(scheme *runtime.Scheme) error {
return nil
}

View File

@ -0,0 +1,176 @@
// +build !ignore_autogenerated
/*
Copyright 2020 VMware, Inc.
SPDX-License-Identifier: Apache-2.0
*/
// Code generated by deepcopy-gen. DO NOT EDIT.
package placeholder
import (
runtime "k8s.io/apimachinery/pkg/runtime"
)
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequest) DeepCopyInto(out *LoginRequest) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
in.Spec.DeepCopyInto(&out.Spec)
in.Status.DeepCopyInto(&out.Status)
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequest.
func (in *LoginRequest) DeepCopy() *LoginRequest {
if in == nil {
return nil
}
out := new(LoginRequest)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginRequest) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestCredential) DeepCopyInto(out *LoginRequestCredential) {
*out = *in
in.ExpirationTimestamp.DeepCopyInto(&out.ExpirationTimestamp)
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestCredential.
func (in *LoginRequestCredential) DeepCopy() *LoginRequestCredential {
if in == nil {
return nil
}
out := new(LoginRequestCredential)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestList) DeepCopyInto(out *LoginRequestList) {
*out = *in
out.TypeMeta = in.TypeMeta
in.ListMeta.DeepCopyInto(&out.ListMeta)
if in.Items != nil {
in, out := &in.Items, &out.Items
*out = make([]LoginRequest, len(*in))
for i := range *in {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestList.
func (in *LoginRequestList) DeepCopy() *LoginRequestList {
if in == nil {
return nil
}
out := new(LoginRequestList)
in.DeepCopyInto(out)
return out
}
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *LoginRequestList) DeepCopyObject() runtime.Object {
if c := in.DeepCopy(); c != nil {
return c
}
return nil
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestSpec) DeepCopyInto(out *LoginRequestSpec) {
*out = *in
if in.Token != nil {
in, out := &in.Token, &out.Token
*out = new(LoginRequestTokenCredential)
**out = **in
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestSpec.
func (in *LoginRequestSpec) DeepCopy() *LoginRequestSpec {
if in == nil {
return nil
}
out := new(LoginRequestSpec)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestStatus) DeepCopyInto(out *LoginRequestStatus) {
*out = *in
if in.Credential != nil {
in, out := &in.Credential, &out.Credential
*out = new(LoginRequestCredential)
(*in).DeepCopyInto(*out)
}
if in.User != nil {
in, out := &in.User, &out.User
*out = new(User)
(*in).DeepCopyInto(*out)
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestStatus.
func (in *LoginRequestStatus) DeepCopy() *LoginRequestStatus {
if in == nil {
return nil
}
out := new(LoginRequestStatus)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoginRequestTokenCredential) DeepCopyInto(out *LoginRequestTokenCredential) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginRequestTokenCredential.
func (in *LoginRequestTokenCredential) DeepCopy() *LoginRequestTokenCredential {
if in == nil {
return nil
}
out := new(LoginRequestTokenCredential)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *User) DeepCopyInto(out *User) {
*out = *in
if in.Groups != nil {
in, out := &in.Groups, &out.Groups
*out = make([]string, len(*in))
copy(*out, *in)
}
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.
func (in *User) DeepCopy() *User {
if in == nil {
return nil
}
out := new(User)
in.DeepCopyInto(out)
return out
}

File diff suppressed because it is too large Load Diff

View File

@ -8,8 +8,8 @@ SPDX-License-Identifier: Apache-2.0
package fake
import (
crdsv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
crdsv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
runtime "k8s.io/apimachinery/pkg/runtime"
schema "k8s.io/apimachinery/pkg/runtime/schema"

View File

@ -8,8 +8,8 @@ SPDX-License-Identifier: Apache-2.0
package scheme
import (
crdsv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
crdsv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
runtime "k8s.io/apimachinery/pkg/runtime"
schema "k8s.io/apimachinery/pkg/runtime/schema"

View File

@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
package v1alpha1
import (
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned/scheme"
rest "k8s.io/client-go/rest"
)

View File

@ -10,7 +10,7 @@ package fake
import (
"context"
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
labels "k8s.io/apimachinery/pkg/labels"
schema "k8s.io/apimachinery/pkg/runtime/schema"

View File

@ -11,7 +11,7 @@ import (
"context"
"time"
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
scheme "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned/scheme"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types"

View File

@ -10,7 +10,7 @@ package fake
import (
"context"
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
labels "k8s.io/apimachinery/pkg/labels"
schema "k8s.io/apimachinery/pkg/runtime/schema"

View File

@ -11,7 +11,7 @@ import (
"context"
"time"
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
scheme "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned/scheme"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
types "k8s.io/apimachinery/pkg/types"

View File

@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
package v1alpha1
import (
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned/scheme"
rest "k8s.io/client-go/rest"
)

View File

@ -11,7 +11,7 @@ import (
"context"
time "time"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
versioned "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned"
internalinterfaces "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions/internalinterfaces"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/listers/crdsplaceholder/v1alpha1"

View File

@ -10,8 +10,8 @@ package externalversions
import (
"fmt"
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
schema "k8s.io/apimachinery/pkg/runtime/schema"
cache "k8s.io/client-go/tools/cache"
)

View File

@ -11,7 +11,7 @@ import (
"context"
time "time"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
placeholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
versioned "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/clientset/versioned"
internalinterfaces "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/informers/externalversions/internalinterfaces"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/client-go/listers/placeholder/v1alpha1"

View File

@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
package v1alpha1
import (
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/tools/cache"

View File

@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
package v1alpha1
import (
v1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
v1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/client-go/tools/cache"

View File

@ -15,7 +15,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/rest"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name-api/pkg/apis/crdsplaceholder/v1alpha1"
crdsplaceholderv1alpha1 "github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/crdsplaceholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/test/library"
)

View File

@ -17,7 +17,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"github.com/suzerain-io/placeholder-name-api/pkg/apis/placeholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/kubernetes/1.19/api/apis/placeholder/v1alpha1"
"github.com/suzerain-io/placeholder-name/test/library"
)