summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2018-08-05 16:26:36 +0300
committerLars Wirzenius <liw@liw.fi>2018-08-05 16:26:36 +0300
commitdfbaf09d68d5596aacef487e2d6c1f4f180d114d (patch)
treef0df46795ed66fe0b7d2539445eb87fa55372084
parent67585afaf4cb67877991ad41d5d85096d586cbf6 (diff)
downloadickweb-dfbaf09d68d5596aacef487e2d6c1f4f180d114d.tar.gz
Change: move everything under /web so paths are unique to ickweb
-rw-r--r--ickweb/app.py25
-rwxr-xr-xrun4
-rw-r--r--views/builds.tpl2
-rw-r--r--views/index.tpl4
-rw-r--r--views/login.tpl2
-rw-r--r--views/projects.tpl2
6 files changed, 20 insertions, 19 deletions
diff --git a/ickweb/app.py b/ickweb/app.py
index f8e5acf..1f3f09c 100644
--- a/ickweb/app.py
+++ b/ickweb/app.py
@@ -6,12 +6,11 @@ import requests
import yaml
-client_id = 'facade'
-client_secret = 'hunter2'
+client_id = 'ickweb'
COOKIE = 'ickweb-session'
-def create_app(our_url, controller):
+def create_app(our_url, controller, client_secret):
app = bottle.Bottle()
api = API(controller)
@@ -19,7 +18,7 @@ def create_app(our_url, controller):
def favicon():
raise bottle.HTTPError(status=404)
- @app.route('/')
+ @app.route('/web')
def root():
cookie = get_cookie()
if cookie is None:
@@ -33,13 +32,13 @@ def create_app(our_url, controller):
def front_page():
return bottle.template('index', token=api.get_token())
- @app.route('/login')
+ @app.route('/web/login')
def login():
scopes = [
'openid',
'uapi_version_get',
- 'uapi_projects_get',
'uapi_status_get',
+ 'uapi_projects_get',
'uapi_projects_post',
'uapi_projects_id_get',
'uapi_projects_id_put',
@@ -66,7 +65,7 @@ def create_app(our_url, controller):
'scope': ' '.join(scopes),
'client_id': client_id,
'state': 'FIXME',
- 'redirect_uri': '{}/callback'.format(our_url),
+ 'redirect_uri': '{}/web/callback'.format(our_url),
}
url = '{}/auth?{}'.format(controller, urllib.parse.urlencode(params))
headers = {
@@ -75,12 +74,12 @@ def create_app(our_url, controller):
print('/login: redirect to', url)
return bottle.HTTPResponse(status=302, headers=headers)
- @app.route('/projects')
+ @app.route('/web/projects')
def projects():
projects = api.get_projects()
return bottle.template('projects', projects=projects)
- @app.route('/projects/<name>')
+ @app.route('/web/projects/<name:path>')
def show_project(name):
project = api.get_project(name)
params = {
@@ -89,17 +88,17 @@ def create_app(our_url, controller):
}
return bottle.template('project', **params)
- @app.route('/builds')
+ @app.route('/web/builds')
def builds():
builds = api.get_builds()
return bottle.template('builds', builds=builds)
- @app.route('/logs/<buildid:path>')
+ @app.route('/web/logs/<buildid:path>')
def show_log(buildid):
log = api.get_log(buildid)
return bottle.template('log', buildid=buildid, log=log)
- @app.route('/callback')
+ @app.route('/web/callback')
def callback():
print('/callback called')
code = bottle.request.query['code']
@@ -117,7 +116,7 @@ def create_app(our_url, controller):
token = obj['access_token']
print('token:', token)
bottle.response.set_cookie(COOKIE, token)
- bottle.redirect('/')
+ bottle.redirect('/web')
return app
diff --git a/run b/run
index 36edf48..9eee9e7 100755
--- a/run
+++ b/run
@@ -5,5 +5,7 @@ import sys
import ickweb
controller = sys.argv[1]
+client_secret = sys.argv[2]
our_url = 'http://localhost:8080'
-ickweb.create_app(our_url, controller).run(host='localhost', port=8080)
+app = ickweb.create_app(our_url, controller, client_secret)
+app.run(host='localhost', port=8080)
diff --git a/views/builds.tpl b/views/builds.tpl
index 2fd2d71..7674106 100644
--- a/views/builds.tpl
+++ b/views/builds.tpl
@@ -11,7 +11,7 @@
<ol>
% for build in builds:
<li>
- <a href="{{build['log']}}">{{ build['log'] }}</a>
+ <a href="/web{{build['log']}}">{{ build['log'] }}</a>
</li>
% end
</ol>
diff --git a/views/index.tpl b/views/index.tpl
index e78bcd6..52c2919 100644
--- a/views/index.tpl
+++ b/views/index.tpl
@@ -9,7 +9,7 @@
<body>
<p>You ARE logged in. Well done!</p>
<p>Token is <code>{{ token }}</code></p>
- <p><a href="/projects">Projects</p>
- <p><a href="/builds">Builds</p>
+ <p><a href="/web/projects">Projects</p>
+ <p><a href="/web/builds">Builds</p>
</body>
</html>
diff --git a/views/login.tpl b/views/login.tpl
index f45302b..93c8d92 100644
--- a/views/login.tpl
+++ b/views/login.tpl
@@ -8,6 +8,6 @@
</head>
<body>
<p>You are NOT logged in.</p>
- <p><a href="/login">Login</a></p>
+ <p><a href="/web/login">Login</a></p>
</body>
</html>
diff --git a/views/projects.tpl b/views/projects.tpl
index 66feecf..f0f42f4 100644
--- a/views/projects.tpl
+++ b/views/projects.tpl
@@ -11,7 +11,7 @@
<ol>
% for p in projects:
<li>
- <a href="/projects/{{p['project']}}">{{ p['project'] }}</a>
+ <a href="/web/projects/{{p['project']}}">{{ p['project'] }}</a>
</li>
% end
</ol>