"reflect" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "k8s.io/apimachinery/pkg/api/errors" ) const ( FederationReplicaSetName = "federation-replicaset" FederatedReplicaSetTimeout = 120 * time.Second ) // Create/delete replicaset api objects var _ = framework.KubeDescribe("Federation replicasets [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-replicaset") Describe("ReplicaSet objects", func() { AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // Delete all replicasets. nsName := f.FederationNamespace.Name deleteAllReplicaSetsOrFail(f.FederationClientset, nsName) }) It("should be created and deleted successfully", func() { fedframework.SkipUnlessFederated(f.ClientSet) nsName := f.FederationNamespace.Name replicaset := createReplicaSetOrFail(f.FederationClientset, nsName)
kubeclientset "k8s.io/kubernetes/pkg/client/clientset_generated/clientset" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" ) const ( secretNamePrefix = "e2e-secret-test-" FederatedSecretTimeout = 60 * time.Second MaxRetries = 3 ) // Create/delete secret api objects var _ = framework.KubeDescribe("Federation secrets [Feature:Federation]", func() { var clusters map[string]*cluster // All clusters, keyed by cluster name f := fedframework.NewDefaultFederatedFramework("federated-secret") Describe("Secret objects", func() { BeforeEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) clusters = map[string]*cluster{} registerClusters(clusters, UserAgentName, "", f) }) AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // Delete all secrets. nsName := f.FederationNamespace.Name deleteAllSecretsOrFail(f.FederationClientset, nsName) unregisterClusters(clusters, f)
"time" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/wait" federationapi "k8s.io/kubernetes/federation/apis/federation/v1beta1" "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset" "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" ) // Create/delete cluster api objects var _ = framework.KubeDescribe("Federation apiserver [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-cluster") Describe("Cluster objects", func() { AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // Delete registered clusters. // This is if a test failed, it should not affect other tests. clusterList, err := f.FederationClientset.Federation().Clusters().List(v1.ListOptions{}) Expect(err).NotTo(HaveOccurred()) for _, cluster := range clusterList.Items { err := f.FederationClientset.Federation().Clusters().Delete(cluster.Name, &v1.DeleteOptions{}) Expect(err).NotTo(HaveOccurred()) } })
const ( MaxRetriesOnFederatedApiserver = 3 FederatedIngressTimeout = 120 * time.Second FederatedIngressName = "federated-ingress" FederatedIngressServiceName = "federated-ingress-service" FederatedIngressServicePodName = "federated-ingress-service-test-pod" ) const ( // timeout on a single http request. reqTimeout = 10 * time.Second ) var _ = framework.KubeDescribe("Federated ingresses [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federated-ingress") // Create/delete ingress api objects // Validate federation apiserver, does not rely on underlying clusters or federation ingress controller. Describe("Federated Ingresses", func() { AfterEach(func() { nsName := f.FederationNamespace.Name // Delete all ingresses. deleteAllIngressesOrFail(f.FederationClientset, nsName) }) It("should be created and deleted successfully", func() { fedframework.SkipUnlessFederated(f.ClientSet) framework.SkipUnlessProviderIs("gce", "gke") // TODO: Federated ingress is not yet supported on non-GCP platforms. nsName := f.FederationNamespace.Name ingress := createIngressOrFail(f.FederationClientset, nsName)
"k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" "k8s.io/apimachinery/pkg/api/errors" ) const ( FederationDeploymentName = "federation-deployment" FederatedDeploymentTimeout = 120 * time.Second ) // Create/delete deployment api objects var _ = framework.KubeDescribe("Federation deployments [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-deployment") Describe("Deployment objects", func() { AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // Delete all deployments. nsName := f.FederationNamespace.Name deleteAllDeploymentsOrFail(f.FederationClientset, nsName) }) It("should be created and deleted successfully", func() { fedframework.SkipUnlessFederated(f.ClientSet) nsName := f.FederationNamespace.Name deployment := createDeploymentOrFail(f.FederationClientset, nsName)
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset" "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" . "github.com/onsi/gomega" ) const ( FederationEventName = "federation-event" ) // Create/delete event api objects. var _ = framework.KubeDescribe("Federation events [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-event") Describe("Event objects", func() { AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) nsName := f.FederationNamespace.Name // Delete registered events. eventList, err := f.FederationClientset.Core().Events(nsName).List(v1.ListOptions{}) Expect(err).NotTo(HaveOccurred()) for _, event := range eventList.Items { err := f.FederationClientset.Core().Events(nsName).Delete(event.Name, &v1.DeleteOptions{}) Expect(err).NotTo(HaveOccurred()) } })
kubeclientset "k8s.io/kubernetes/pkg/client/clientset_generated/clientset" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" ) const ( FederatedDaemonSetName = "federated-daemonset" FederatedDaemonSetTimeout = 60 * time.Second FederatedDaemonSetMaxRetries = 3 ) // Create/delete daemonset api objects var _ = framework.KubeDescribe("Federation daemonsets [Feature:Federation]", func() { var clusters map[string]*cluster // All clusters, keyed by cluster name f := fedframework.NewDefaultFederatedFramework("federated-daemonset") Describe("DaemonSet objects", func() { BeforeEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) clusters = map[string]*cluster{} registerClusters(clusters, UserAgentName, "", f) }) AfterEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // Delete all daemonsets. nsName := f.FederationNamespace.Name deleteAllDaemonSetsOrFail(f.FederationClientset, nsName) unregisterClusters(clusters, f)
import ( "fmt" "k8s.io/apimachinery/pkg/api/errors" clientcmdapi "k8s.io/client-go/tools/clientcmd/api" "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset" "k8s.io/kubernetes/pkg/client/unversioned/clientcmd" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" ) var _ = framework.KubeDescribe("[Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-apiserver-authn") var _ = Describe("Federation API server authentication", func() { BeforeEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) }) It("should accept cluster resources when the client has right authentication credentials", func() { fedframework.SkipUnlessFederated(f.ClientSet) nsName := f.FederationNamespace.Name svc := createServiceOrFail(f.FederationClientset, nsName, FederatedServiceName) deleteServiceOrFail(f.FederationClientset, nsName, svc.Name, nil) }) It("should not accept cluster resources when the client has invalid authentication credentials", func() {
const ( FederatedServiceTimeout = 60 * time.Second FederatedServiceName = "federated-service" FederatedServicePodName = "federated-service-test-pod" KubeDNSConfigMapName = "kube-dns" KubeDNSConfigMapNamespace = "kube-system" ) var FederatedServiceLabels = map[string]string{ "foo": "bar", } var _ = framework.KubeDescribe("[Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federated-service") var clusters map[string]*cluster // All clusters, keyed by cluster name var federationName string var primaryClusterName string // The name of the "primary" cluster var _ = Describe("Federated Services", func() { BeforeEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // TODO: Federation API server should be able to answer this. if federationName = os.Getenv("FEDERATION_NAME"); federationName == "" { federationName = DefaultFederationName } clusters = map[string]*cluster{} primaryClusterName = registerClusters(clusters, UserAgentName, federationName, f)
"k8s.io/kubernetes/pkg/api/v1" api_v1 "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/test/e2e/framework" fedframework "k8s.io/kubernetes/test/e2e_federation/framework" . "github.com/onsi/ginkgo" ) const ( namespacePrefix = "e2e-namespace-test-" eventNamePrefix = "e2e-namespace-test-event-" ) // Create/delete ingress api objects var _ = framework.KubeDescribe("Federation namespace [Feature:Federation]", func() { f := fedframework.NewDefaultFederatedFramework("federation-namespace") Describe("Namespace objects", func() { var federationName string var clusters map[string]*cluster // All clusters, keyed by cluster name BeforeEach(func() { fedframework.SkipUnlessFederated(f.ClientSet) // TODO: Federation API server should be able to answer this. if federationName = os.Getenv("FEDERATION_NAME"); federationName == "" { federationName = DefaultFederationName } clusters = map[string]*cluster{} registerClusters(clusters, UserAgentName, federationName, f)