flask-python-helm/routes/kube_helm_routes.py
2020-09-12 23:51:12 +08:00

36 lines
1.3 KiB
Python

from flask import render_template, request, jsonify
from forms import deploySelectForm
from main import get_namespaces, get_charts, get_chartdata
from . import routes
from tables import chartVersionTable
import json
@routes.route('/', methods=['GET', 'POST'])
def index():
namespaces = get_namespaces()
print(namespaces)
form = deploySelectForm()
form.namespace.choices = [(name['metadata']['name'], name['metadata']['name']) for name in namespaces['items']]
return render_template('nameChartSelect.html', namespaces=namespaces, form=form)
@routes.route('/chartSelect', methods=['POST'])
def chartVersions():
namespace = request.form['namespace']
chart = request.form['chart']
chartVersions = get_chartdata(namespace, chart)
print(chartVersions)
table = chartVersionTable(chartVersions)
table.border = True
table.classes = ['table-striped', 'table-condensed', 'table-hover']
return render_template('chartRevisionList.html', table=table, namespace=namespace, chart=chart)
@routes.route('/nsLookup/<namespace>')
def namespaceLookup(namespace):
charts = get_charts(namespace)
return jsonify(charts)
@routes.route('/deployChartRevision/<revision>')
def deployChartRevision(revision):
charts = get_charts(namespace)
return jsonify(charts)