예제 #1
0
 def test_register_multiple_checks(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             checks=[
                 agent.Check(
                     name='test1', http='http://netloc',
                     header={'User-Agent': 'unittest.TestCase'},
                     interval='30s'),
                 agent.Check(name='test2', ttl='30s')
             ]))
예제 #2
0
 def test_register_multiple_checks(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address="127.0.0.1",
             port=80,
             checks=[
                 agent.Check(name="test1",
                             http="http://netloc",
                             header={"User-Agent": "unittest.TestCase"},
                             interval="30s"),
                 agent.Check(name="test2", ttl="30s"),
             ],
         ))
예제 #3
0
 def test_register_invalid_ttl(self):
     with self.assertRaises(TypeError):
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             check=agent.Check(name='test', ttl=30))
예제 #4
0
 def test_register_ttl(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             check=agent.Check(name='test', ttl='30s')))
예제 #5
0
 def test_register_ttl(self):
     self.assertTrue(
         self.consul.agent.service.register(str(uuid.uuid4()),
                                            address="127.0.0.1",
                                            port=80,
                                            check=agent.Check(name="test",
                                                              ttl="30s")))
예제 #6
0
 def test_register_tcp(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             check=agent.Check(
                 name='test', tcp='localhost:80', interval='30s')))
예제 #7
0
 def test_register_grpc(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             check=agent.Check(
                 name='test', grpc='https://grpc/status', interval='30s')))
예제 #8
0
 def test_register(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address='127.0.0.1',
             port=80,
             check=agent.Check(
                 name='test', args=['/bin/true'], interval='30s'),
             tags=[str(uuid.uuid4())]))
예제 #9
0
 def test_register_invalid_interval(self):
     with self.assertRaises(TypeError):
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address="127.0.0.1",
             port=80,
             check=agent.Check(name="test",
                               http="http://localhost",
                               interval=30),
         )
예제 #10
0
 def test_register_tcp(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address="127.0.0.1",
             port=80,
             check=agent.Check(name="test",
                               tcp="localhost:80",
                               interval="30s"),
         ))
예제 #11
0
 def test_register_grpc(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address="127.0.0.1",
             port=80,
             check=agent.Check(name="test",
                               grpc="https://grpc/status",
                               interval="30s"),
         ))
예제 #12
0
 def test_register(self):
     self.assertTrue(
         self.consul.agent.service.register(
             str(uuid.uuid4()),
             address="127.0.0.1",
             port=80,
             check=agent.Check(name="test",
                               args=["/bin/true"],
                               interval="30s"),
             tags=[str(uuid.uuid4())],
         ))
예제 #13
0
        def register(self,
                     name,
                     check_id=None,
                     interval=None,
                     notes=None,
                     deregister_critical_service_after=None,
                     args=None,
                     docker_container_id=None,
                     grpc=None,
                     grpc_use_tls=None,
                     http=None,
                     http_method=None,
                     header=None,
                     timeout=None,
                     tls_skip_verify=None,
                     tcp=None,
                     ttl=None,
                     service_id=None,
                     status=None):
            """Add a new check to the local agent. Checks are either a script
            or TTL type. The agent is responsible for managing the status of
            the check and keeping the Catalog in sync.

            :param str name:
            :param str check_id:
            :param str interval:
            :param str notes:
            :param str deregister_critical_service_after:
            :param str args:
            :param str docker_container_id:
            :param str grpc:
            :param str grpc_use_tls:
            :param str http:
            :param str http_method:
            :param str header:
            :param str timeout:
            :param str tls_skip_verify:
            :param str tcp:
            :param str ttl:
            :param str service_id:
            :param str status:

            :rtype: bool
            :raises: ValueError

            """
            return self._put_no_response_body(
                ['register'], None,
                dict(
                    models.Check(name=name,
                                 id=check_id,
                                 interval=interval,
                                 notes=notes,
                                 deregister_critical_service_after=
                                 deregister_critical_service_after,
                                 args=args,
                                 docker_container_id=docker_container_id,
                                 grpc=grpc,
                                 grpc_use_tls=grpc_use_tls,
                                 http=http,
                                 method=http_method,
                                 header=header,
                                 timeout=timeout,
                                 tls_skip_verify=tls_skip_verify,
                                 tcp=tcp,
                                 ttl=ttl,
                                 service_id=service_id,
                                 status=status)))