Beispiel #1
0
    def on_get(self, req, resp):
        '''
        get tiller status
        '''
        tiller = Tiller()
        tiller_version = tiller.tiller_version()
        ver_resp = getattr(tiller_version.Version, 'sem_ver', None)
        try:
            message = {
                'tiller': {
                    'state': tiller.tiller_status(),
                    'version': ver_resp
                }
            }

            if message.get('tiller', False):
                resp.status = falcon.HTTP_200
            else:
                resp.status = falcon.HTTP_503

            resp.data = json.dumps(message)
            resp.content_type = 'application/json'

        except Exception as e:
            self.error(req.context, "Unable to find resources")
            self.return_error(resp,
                              falcon.HTTP_500,
                              message="Unable to get status: {}".format(e))
Beispiel #2
0
    def on_get(self, req, resp):
        '''
        get tiller status
        '''
        try:
            tiller = Tiller(
                tiller_host=req.get_param('tiller_host'),
                tiller_port=req.get_param_as_int('tiller_port') or
                CONF.tiller_port,
                tiller_namespace=req.get_param(
                    'tiller_namespace', default=CONF.tiller_namespace))

            LOG.debug('Tiller (Status) at: %s:%s, namespace=%s, '
                      'timeout=%s', tiller.tiller_host, tiller.tiller_port,
                      tiller.tiller_namespace, tiller.timeout)

            message = {
                'tiller': {
                    'state': tiller.tiller_status(),
                    'version': tiller.tiller_version()
                }
            }

            resp.status = falcon.HTTP_200
            resp.body = json.dumps(message)
            resp.content_type = 'application/json'

        except Exception as e:
            err_message = 'Failed to get Tiller Status: {}'.format(e)
            self.error(req.context, err_message)
            self.return_error(resp, falcon.HTTP_500, message=err_message)
Beispiel #3
0
def tillerServer(args):

    tiller = Tiller()

    if args.status:
        resp = tiller.tiller_version()
        LOG.info('Tiller Service: %s', tiller.tiller_status())
        LOG.info('Tiller Version: %s', getattr(resp.Version, 'sem_ver', False))

    if args.releases:
        for release in tiller.list_releases():
            LOG.info("Release: %s ( namespace= %s )", release.name,
                     release.namespace)
Beispiel #4
0
    def invoke(self):

        tiller = Tiller(tiller_host=self.tiller_host,
                        tiller_port=self.tiller_port,
                        tiller_namespace=self.tiller_namespace)

        if self.status:
            if not self.ctx.obj.get('api', False):
                self.logger.info('Tiller Service: %s', tiller.tiller_status())
                self.logger.info('Tiller Version: %s', tiller.tiller_version())
            else:
                client = self.ctx.obj.get('CLIENT')
                query = {
                    'tiller_host': self.tiller_host,
                    'tiller_port': self.tiller_port,
                    'tiller_namespace': self.tiller_namespace
                }
                resp = client.get_status(query=query)
                tiller_status = resp.get('tiller').get('state', False)
                tiller_version = resp.get('tiller').get('version')

                self.logger.info("Tiller Service: %s", tiller_status)
                self.logger.info("Tiller Version: %s", tiller_version)

        if self.releases:
            if not self.ctx.obj.get('api', False):
                for release in tiller.list_releases():
                    self.logger.info("Release %s in namespace: %s",
                                     release.name, release.namespace)
            else:
                client = self.ctx.obj.get('CLIENT')
                query = {
                    'tiller_host': self.tiller_host,
                    'tiller_port': self.tiller_port,
                    'tiller_namespace': self.tiller_namespace
                }
                resp = client.get_releases(query=query)
                for namespace in resp.get('releases'):
                    for release in resp.get('releases').get(namespace):
                        self.logger.info('Release %s in namespace: %s',
                                         release, namespace)
Beispiel #5
0
    def on_get(self, req, resp):
        '''
        get tiller status
        '''
        try:
            opts = req.params
            tiller = Tiller(tiller_host=opts.get('tiller_host', None),
                            tiller_port=opts.get('tiller_port', None))

            message = {
                'tiller': {
                    'state': tiller.tiller_status(),
                    'version': tiller.tiller_version()
                }
            }

            resp.status = falcon.HTTP_200
            resp.body = json.dumps(message)
            resp.content_type = 'application/json'

        except Exception as e:
            err_message = 'Failed to get Tiller Status: {}'.format(e)
            self.error(req.context, err_message)
            self.return_error(resp, falcon.HTTP_500, message=err_message)