elasticsearch: kubedb.dev/elasticsearch/test/e2e/framework Index | Files

package framework

import "kubedb.dev/elasticsearch/test/e2e/framework"

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright The KubeDB Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Package Files

appbinding.go config.go crd.go database.go elasticsearch.go framework.go namespace.go pvc.go rbac.go secret.go stash.go util.go

Constants

const (
    GET            = "get"
    LIST           = "list"
    PATCH          = "patch"
    CREATE         = "create"
    UPDATE         = "update"
    USE            = "use"
    POLICY         = "policy"
    Role           = "Role"
    ServiceAccount = "ServiceAccount"
)

Variables

var (
    JobPvcStorageSize = "2Gi"
    DBPvcStorageSize  = "1Gi"
)
var (
    DockerRegistry = "kubedbci"
    DBCatalogName  = "7.3.2"
)
var (
    CustomSecretSuffix = "custom-secret"
    CustomUsername     = "username1234567890"
    CustomPassword     = "password0987654321"
    AdminUser          = "admin"
    KeyAdminUserName   = "ADMIN_USERNAME"
    KeyAdminPassword   = "ADMIN_PASSWORD"
    ReadAllUser        = "readall"
    KeyReadAllUserName = "READALL_USERNAME"
    KeyReadAllPassword = "READALL_PASSWORD"
    ExporterSecretPath = "/var/run/secrets/kubedb.com/"
)

type Framework Uses

type Framework struct {
    Tunnel *portforward.Tunnel

    StorageClass string
    // contains filtered or unexported fields
}

func New Uses

func New(
    restConfig *rest.Config,
    kubeClient kubernetes.Interface,
    apiExtKubeClient crd_cs.ApiextensionsV1beta1Interface,
    dbClient cs.Interface,
    kaClient ka.Interface,
    appCatalogClient appcat_cs.AppcatalogV1alpha1Interface,
    stashClient scs.Interface,
    storageClass string,
) (*Framework, error)

func (*Framework) CheckAppBindingSpec Uses

func (f *Framework) CheckAppBindingSpec(meta metav1.ObjectMeta) error

func (*Framework) CheckSecret Uses

func (f *Framework) CheckSecret(secret *core.Secret) error

func (*Framework) CleanElasticsearch Uses

func (f *Framework) CleanElasticsearch()

func (*Framework) CreateBackupConfiguration Uses

func (f *Framework) CreateBackupConfiguration(backupCfg *stashv1beta1.BackupConfiguration) error

func (*Framework) CreateElasticsearch Uses

func (f *Framework) CreateElasticsearch(obj *api.Elasticsearch) error

func (*Framework) CreateNamespace Uses

func (f *Framework) CreateNamespace() error

func (*Framework) CreateRepository Uses

func (f *Framework) CreateRepository(repo *stashV1alpha1.Repository) error

func (*Framework) CreateRestoreSession Uses

func (f *Framework) CreateRestoreSession(restoreSession *stashv1beta1.RestoreSession) error

func (*Framework) CreateRole Uses

func (f *Framework) CreateRole(obj *rbac.Role) error

func (*Framework) CreateRoleBinding Uses

func (f *Framework) CreateRoleBinding(obj *rbac.RoleBinding) error

func (*Framework) CreateSecret Uses

func (f *Framework) CreateSecret(obj *core.Secret) error

TODO: Add more methods for Swift, Backblaze B2, Rest server backend.

func (*Framework) CreateServiceAccount Uses

func (f *Framework) CreateServiceAccount(obj *core.ServiceAccount) error

func (*Framework) DeleteBackupConfiguration Uses

func (f *Framework) DeleteBackupConfiguration(meta metav1.ObjectMeta) error

func (*Framework) DeleteElasticsearch Uses

func (f *Framework) DeleteElasticsearch(meta metav1.ObjectMeta) error

func (*Framework) DeleteNamespace Uses

func (f *Framework) DeleteNamespace() error

func (*Framework) DeleteRepository Uses

func (f *Framework) DeleteRepository(meta metav1.ObjectMeta) error

func (Framework) DeleteRestoreSession Uses

func (f Framework) DeleteRestoreSession(meta metav1.ObjectMeta) error

func (*Framework) DeleteSecret Uses

func (f *Framework) DeleteSecret(meta metav1.ObjectMeta) error

func (*Framework) EventuallyAppBinding Uses

func (f *Framework) EventuallyAppBinding(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyCRD Uses

func (f *Framework) EventuallyCRD() GomegaAsyncAssertion

func (*Framework) EventuallyDBSecretCount Uses

func (f *Framework) EventuallyDBSecretCount(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyElasticsearch Uses

func (f *Framework) EventuallyElasticsearch(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyElasticsearchClientReady Uses

func (f *Framework) EventuallyElasticsearchClientReady(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyElasticsearchIndicesCount Uses

func (f *Framework) EventuallyElasticsearchIndicesCount(client es.ESClient) GomegaAsyncAssertion

func (*Framework) EventuallyElasticsearchPhase Uses

func (f *Framework) EventuallyElasticsearchPhase(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyElasticsearchRunning Uses

func (f *Framework) EventuallyElasticsearchRunning(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyPVCCount Uses

func (f *Framework) EventuallyPVCCount(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyRestoreSessionPhase Uses

func (f *Framework) EventuallyRestoreSessionPhase(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallySnapshotInRepository Uses

func (f *Framework) EventuallySnapshotInRepository(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EventuallyWipedOut Uses

func (f *Framework) EventuallyWipedOut(meta metav1.ObjectMeta) GomegaAsyncAssertion

func (*Framework) EvictPodsFromStatefulSet Uses

func (f *Framework) EvictPodsFromStatefulSet(meta metav1.ObjectMeta) error

func (*Framework) FoundStashCRDs Uses

func (f *Framework) FoundStashCRDs() bool

func (*Framework) GetClientPodName Uses

func (f *Framework) GetClientPodName(elasticsearch *api.Elasticsearch) string

func (*Framework) GetElasticClient Uses

func (f *Framework) GetElasticClient(meta metav1.ObjectMeta) (es.ESClient, error)

func (*Framework) GetElasticsearch Uses

func (f *Framework) GetElasticsearch(meta metav1.ObjectMeta) (*api.Elasticsearch, error)

func (*Framework) IndicesCount Uses

func (f *Framework) IndicesCount(obj *api.Elasticsearch, indicesCount int) int

func (*Framework) Invoke Uses

func (f *Framework) Invoke() *Invocation

func (*Framework) Namespace Uses

func (f *Framework) Namespace() string

func (*Framework) PatchElasticsearch Uses

func (f *Framework) PatchElasticsearch(meta metav1.ObjectMeta, transform func(*api.Elasticsearch) *api.Elasticsearch) (*api.Elasticsearch, error)

func (*Framework) PauseBackupConfiguration Uses

func (f *Framework) PauseBackupConfiguration(meta metav1.ObjectMeta) error

func (*Framework) PrintDebugHelpers Uses

func (f *Framework) PrintDebugHelpers()

func (*Framework) Repository Uses

func (f *Framework) Repository(dbMeta metav1.ObjectMeta) *stashV1alpha1.Repository

func (*Framework) UpdateSecret Uses

func (f *Framework) UpdateSecret(meta metav1.ObjectMeta, transformer func(core.Secret) core.Secret) error

type Invocation Uses

type Invocation struct {
    *Framework
    // contains filtered or unexported fields
}

func (*Invocation) BackupConfiguration Uses

func (i *Invocation) BackupConfiguration(dbMeta metav1.ObjectMeta, repo *stashV1alpha1.Repository) *stashv1beta1.BackupConfiguration

func (*Invocation) CombinedElasticsearch Uses

func (i *Invocation) CombinedElasticsearch() *api.Elasticsearch

func (*Invocation) CreateConfigMap Uses

func (f *Invocation) CreateConfigMap(obj *core.ConfigMap) error

func (*Invocation) CreatePersistentVolumeClaim Uses

func (f *Invocation) CreatePersistentVolumeClaim(pvc *core.PersistentVolumeClaim) error

func (*Invocation) DedicatedElasticsearch Uses

func (i *Invocation) DedicatedElasticsearch() *api.Elasticsearch

func (*Invocation) DeleteConfigMap Uses

func (f *Invocation) DeleteConfigMap(meta metav1.ObjectMeta) error

func (*Invocation) DeletePersistentVolumeClaim Uses

func (f *Invocation) DeletePersistentVolumeClaim(meta metav1.ObjectMeta) error

func (*Invocation) ExtClient Uses

func (fi *Invocation) ExtClient() cs.Interface

func (*Invocation) GetClientConfig Uses

func (f *Invocation) GetClientConfig(elasticsearch *v1alpha12.Elasticsearch) string

func (*Invocation) GetCommonConfig Uses

func (f *Invocation) GetCommonConfig(elasticsearch *v1alpha12.Elasticsearch) string

func (*Invocation) GetCustomConfig Uses

func (f *Invocation) GetCustomConfig() *core.ConfigMap

func (*Invocation) GetDataConfig Uses

func (f *Invocation) GetDataConfig(elasticsearch *v1alpha12.Elasticsearch) string

func (*Invocation) GetMasterConfig Uses

func (f *Invocation) GetMasterConfig(elasticsearch *v1alpha12.Elasticsearch) string

func (*Invocation) GetPersistentVolumeClaim Uses

func (f *Invocation) GetPersistentVolumeClaim() *core.PersistentVolumeClaim

func (*Invocation) IsUsingProvidedConfig Uses

func (f *Invocation) IsUsingProvidedConfig(elasticsearch *v1alpha12.Elasticsearch, nodeInfo []es.NodeInfo) bool

func (*Invocation) KubeClient Uses

func (fi *Invocation) KubeClient() kubernetes.Interface

func (*Invocation) PatchSecretForRestic Uses

func (i *Invocation) PatchSecretForRestic(secret *core.Secret) *core.Secret

func (*Invocation) RestConfig Uses

func (fi *Invocation) RestConfig() *rest.Config

func (*Invocation) RestoreSession Uses

func (i *Invocation) RestoreSession(dbMeta metav1.ObjectMeta, repo *stashV1alpha1.Repository) *stashv1beta1.RestoreSession

func (*Invocation) RoleBinding Uses

func (i *Invocation) RoleBinding(saName string, roleName string) *rbac.RoleBinding

func (*Invocation) RoleForElasticsearch Uses

func (i *Invocation) RoleForElasticsearch(meta metav1.ObjectMeta) *rbac.Role

func (*Invocation) RoleForSnapshot Uses

func (i *Invocation) RoleForSnapshot(meta metav1.ObjectMeta) *rbac.Role

func (*Invocation) SecretForAzureBackend Uses

func (i *Invocation) SecretForAzureBackend() *core.Secret

func (*Invocation) SecretForDatabaseAuthentication Uses

func (i *Invocation) SecretForDatabaseAuthentication(es *api.Elasticsearch, mangedByKubeDB bool) *core.Secret

func (*Invocation) SecretForGCSBackend Uses

func (i *Invocation) SecretForGCSBackend() *core.Secret

func (*Invocation) SecretForLocalBackend Uses

func (i *Invocation) SecretForLocalBackend() *core.Secret

func (*Invocation) SecretForS3Backend Uses

func (i *Invocation) SecretForS3Backend() *core.Secret

func (*Invocation) SecretForSwiftBackend Uses

func (i *Invocation) SecretForSwiftBackend() *core.Secret

func (*Invocation) ServiceAccount Uses

func (i *Invocation) ServiceAccount() *core.ServiceAccount

Package framework imports 50 packages (graph). Updated 2020-07-03. Refresh now. Tools for package owners.