Run container with uvicorn, move templates for packaging, add systemd config for container deployment, add OIDC_TEST_SETTINGS_FILE env var for setting, misc fixes

This commit is contained in:
phil 2025-01-10 17:33:10 +01:00
parent 170e663ee8
commit 57681d91fe
12 changed files with 146 additions and 49 deletions

View file

@ -0,0 +1,66 @@
{% extends "base.html" %}
{% block content %}
{% if not user %}
<div class="login-box">
<p>Log in with one of these authentication providers:</p>
<div class="login-toolbox">
{% for provider in settings.oidc.providers %}
<a href="login/{{ provider.id }}">{{ provider.name }}</a>
{% else %}
<span class="error">There is no authentication provider defined.
Hint: check the settings.yaml file.</span>
{% endfor %}
</div>
</div>
{% endif %}
{% if user %}
<div class="user-info">
<p>Hey, {{ user.name }}</p>
{% if user.picture %}
<img src="{{ user.picture }}" class="picture"></img>
{% endif %}
<div>{{ user.email }}</div>
{% if user.roles %}
<div>
<span>Roles:</span>
{% for role in user.roles %}
<span class="role">{{ role.name }}</span>
{% endfor %}
</div>
{% endif %}
<div>
<span>Provider:</span>
{{ user.oidc_provider.name }}
</div>
<a href="logout" class="logout">Logout</a>
</div>
{% endif %}
<div class="content">
<p>
These links should get different response codes depending on the authorization:
</p>
<div id="links-to-check">
<a href="public">Public</a>
<a href="protected">Auth protected content</a>
<a href="protected-by-foorole">Auth + foorole protected content</a>
<a href="protected-by-foorole-or-barrole">Auth + foorole or barrole protected content</a>
<a href="protected-by-barrole">Auth + barrole protected content</a>
<a href="protected-by-foorole-and-barrole">Auth + foorole and barrole protected content</a>
<a href="fast_api_depends" class="hidden">Using FastAPI Depends</a>
<a href="other">Other</a>
</div>
{% if user_info_details %}
<div class="debug-auth">
<p>User info</p>
<ul>
{% for key, value in user_info_details.items() %}
<li>
<span class="key">{{ key }}</span>: {{ value }}
</li>
{% endfor %}
</ul>
</div>
<div>Now is: {{ now }}</div>
</div>
{% endif %}
{% endblock %}