Exemple #1
0
    def test_node_label_present__add(self):
        node_data = self.make_node()
        # Remove some of the defaults to make it simpler
        node_data['metadata']['labels'] = {
            'beta.kubernetes.io/os': 'linux',
        }
        labels = node_data['metadata']['labels']

        with self.mock_func('node_labels', return_value=labels):
            with self.mock_func('node_add_label', return_value=node_data):
                actual = kubernetes.node_label_present(
                    name='failure-domain.beta.kubernetes.io/zone',
                    node='minikube',
                    value='us-central1-a',
                )
                self.assertDictEqual(
                    {
                        'comment': '',
                        'changes': {
                            'minikube.failure-domain.beta.kubernetes.io/zone': {
                                'new': {
                                    'failure-domain.beta.kubernetes.io/zone': 'us-central1-a',
                                    'beta.kubernetes.io/os': 'linux'
                                },
                                'old': {
                                    'beta.kubernetes.io/os': 'linux',
                                },
                            },
                        },
                        'name': 'failure-domain.beta.kubernetes.io/zone',
                        'result': True,
                    },
                    actual,
                )
Exemple #2
0
 def test_node_label_present__update(self):
     node_data = self.make_node()
     # Remove some of the defaults to make it simpler
     node_data['metadata']['labels'] = {
         'failure-domain.beta.kubernetes.io/region': 'us-west-1',
     }
     labels = node_data['metadata']['labels']
     with self.mock_func('node_labels', return_value=labels):
         with self.mock_func('node_add_label', return_value=node_data):
             actual = kubernetes.node_label_present(
                 name='failure-domain.beta.kubernetes.io/region',
                 node='minikube',
                 value='us-east-1',
             )
             self.assertDictEqual(
                 {
                     'changes': {
                         'minikube.failure-domain.beta.kubernetes.io/region': {
                             'new': {'failure-domain.beta.kubernetes.io/region': 'us-east-1'},
                             'old': {'failure-domain.beta.kubernetes.io/region': 'us-west-1'},
                         }
                     },
                     'result': True,
                     'name': 'failure-domain.beta.kubernetes.io/region',
                     'comment': 'The label is already set, changing the value',
                 },
                 actual,
             )
Exemple #3
0
 def test_node_label_present__update(self):
     node_data = self.make_node()
     # Remove some of the defaults to make it simpler
     node_data["metadata"]["labels"] = {
         "failure-domain.beta.kubernetes.io/region": "us-west-1",
     }
     labels = node_data["metadata"]["labels"]
     with self.mock_func("node_labels", return_value=labels):
         with self.mock_func("node_add_label", return_value=node_data):
             actual = kubernetes.node_label_present(
                 name="failure-domain.beta.kubernetes.io/region",
                 node="minikube",
                 value="us-east-1",
             )
             self.assertDictEqual(
                 {
                     "changes": {
                         "minikube.failure-domain.beta.kubernetes.io/region": {
                             "new": {
                                 "failure-domain.beta.kubernetes.io/region": "us-east-1"
                             },
                             "old": {
                                 "failure-domain.beta.kubernetes.io/region": "us-west-1"
                             },
                         }
                     },
                     "result": True,
                     "name": "failure-domain.beta.kubernetes.io/region",
                     "comment": "The label is already set, changing the value",
                 },
                 actual,
             )
Exemple #4
0
    def test_node_label_present__add(self):
        node_data = self.make_node()
        # Remove some of the defaults to make it simpler
        node_data["metadata"]["labels"] = {
            "beta.kubernetes.io/os": "linux",
        }
        labels = node_data["metadata"]["labels"]

        with self.mock_func("node_labels", return_value=labels):
            with self.mock_func("node_add_label", return_value=node_data):
                actual = kubernetes.node_label_present(
                    name="failure-domain.beta.kubernetes.io/zone",
                    node="minikube",
                    value="us-central1-a",
                )
                self.assertDictEqual(
                    {
                        "comment": "",
                        "changes": {
                            "minikube.failure-domain.beta.kubernetes.io/zone": {
                                "new": {
                                    "failure-domain.beta.kubernetes.io/zone": "us-central1-a",
                                    "beta.kubernetes.io/os": "linux",
                                },
                                "old": {"beta.kubernetes.io/os": "linux"},
                            },
                        },
                        "name": "failure-domain.beta.kubernetes.io/zone",
                        "result": True,
                    },
                    actual,
                )
Exemple #5
0
 def test_node_label_present__add_test_true(self):
     labels = self.make_node_labels()
     with self.mock_func("node_labels", return_value=labels, test=True):
         actual = kubernetes.node_label_present(
             name="com.zoo-animal", node="minikube", value="monkey",
         )
         self.assertDictEqual(
             {
                 "changes": {},
                 "result": None,
                 "name": "com.zoo-animal",
                 "comment": "The label is going to be set",
             },
             actual,
         )
Exemple #6
0
 def test_node_label_present__add_test_true(self):
     labels = self.make_node_labels()
     with self.mock_func('node_labels', return_value=labels, test=True):
         actual = kubernetes.node_label_present(
             name='com.zoo-animal',
             node='minikube',
             value='monkey',
         )
         self.assertDictEqual(
             {
                 'changes': {},
                 'result': None,
                 'name': 'com.zoo-animal',
                 'comment': 'The label is going to be set',
             },
             actual,
         )
Exemple #7
0
 def test_node_label_present__update_test_true(self):
     node_data = self.make_node()
     labels = node_data['metadata']['labels']
     with self.mock_func('node_labels', return_value=labels):
         with self.mock_func('node_add_label', return_value=node_data, test=True):
             actual = kubernetes.node_label_present(
                 name='failure-domain.beta.kubernetes.io/region',
                 node='minikube',
                 value='us-east-1',
             )
             self.assertDictEqual(
                 {
                     'changes': {},
                     'result': None,
                     'name': 'failure-domain.beta.kubernetes.io/region',
                     'comment': 'The label is going to be updated',
                 },
                 actual,
             )
Exemple #8
0
 def test_node_label_present__already_set(self):
     node_data = self.make_node()
     labels = node_data['metadata']['labels']
     with self.mock_func('node_labels', return_value=labels):
         with self.mock_func('node_add_label', return_value=node_data):
             actual = kubernetes.node_label_present(
                 name='failure-domain.beta.kubernetes.io/region',
                 node='minikube',
                 value='us-west-1',
             )
             self.assertDictEqual(
                 {
                     'changes': {},
                     'result': True,
                     'name': 'failure-domain.beta.kubernetes.io/region',
                     'comment': 'The label is already set and has the specified value',
                 },
                 actual,
             )
Exemple #9
0
 def test_node_label_present__update_test_true(self):
     node_data = self.make_node()
     labels = node_data["metadata"]["labels"]
     with self.mock_func("node_labels", return_value=labels):
         with self.mock_func("node_add_label", return_value=node_data, test=True):
             actual = kubernetes.node_label_present(
                 name="failure-domain.beta.kubernetes.io/region",
                 node="minikube",
                 value="us-east-1",
             )
             self.assertDictEqual(
                 {
                     "changes": {},
                     "result": None,
                     "name": "failure-domain.beta.kubernetes.io/region",
                     "comment": "The label is going to be updated",
                 },
                 actual,
             )
Exemple #10
0
 def test_node_label_present__already_set(self):
     node_data = self.make_node()
     labels = node_data["metadata"]["labels"]
     with self.mock_func("node_labels", return_value=labels):
         with self.mock_func("node_add_label", return_value=node_data):
             actual = kubernetes.node_label_present(
                 name="failure-domain.beta.kubernetes.io/region",
                 node="minikube",
                 value="us-west-1",
             )
             self.assertDictEqual(
                 {
                     "changes": {},
                     "result": True,
                     "name": "failure-domain.beta.kubernetes.io/region",
                     "comment": "The label is already set and has the specified value",
                 },
                 actual,
             )