github.com/apprenda/kismatic@v1.12.0/integration-tests/overrides.go (about)

     1  package integration_tests
     2  
     3  import (
     4  	"fmt"
     5  	"time"
     6  )
     7  
     8  func ContainsOverrides(nodes provisionedNodes, sshKey string) error {
     9  	// The installer defaults to --v=2, check if was overridden to --v=3
    10  	tests := []struct {
    11  		nodes []NodeDeets
    12  		text  string
    13  	}{
    14  		{
    15  			nodes: nodes.master,
    16  			text:  "v=3",
    17  		},
    18  		{
    19  			nodes: nodes.worker,
    20  			text:  "v=3",
    21  		},
    22  		{
    23  			nodes: nodes.ingress,
    24  			text:  "v=3",
    25  		},
    26  		{
    27  			nodes: nodes.storage,
    28  			text:  "v=3",
    29  		},
    30  	}
    31  	manifests := []string{"kube-apiserver.yaml", "kube-controller-manager.yaml", "kube-scheduler.yaml"}
    32  	// validate master components overrides
    33  	for _, m := range manifests {
    34  		if err := runViaSSH([]string{fmt.Sprintf("sudo cat /etc/kubernetes/manifests/%s | grep \"v=3\"", m)}, []NodeDeets{nodes.master[0]}, sshKey, 1*time.Minute); err != nil {
    35  			return fmt.Errorf("error validating file %q label: %v", m, err)
    36  		}
    37  	}
    38  
    39  	for _, role := range tests {
    40  		for _, n := range role.nodes {
    41  			if err := runViaSSH([]string{fmt.Sprintf("sudo cat /etc/systemd/system/kubelet.service | grep \"%s\"", role.text)}, []NodeDeets{n}, sshKey, 1*time.Minute); err != nil {
    42  				return fmt.Errorf("error validating kubelet override on %q: %v", n.Hostname, err)
    43  			}
    44  		}
    45  	}
    46  
    47  	return nil
    48  }