Compare commits
	
		
			15 Commits
		
	
	
		
			enterprise
			...
			version/0.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 65d9f690cd | |||
| f96c2db5df | |||
| 5647f53140 | |||
| 4e20cd0fee | |||
| 49636f8fa0 | |||
| cd8157ea08 | |||
| 2a94ad7782 | |||
| 07eb5ffb4b | |||
| 8cc68928b8 | |||
| 221db12f85 | |||
| 34166d3c20 | |||
| 94972d64e6 | |||
| 253eaa382c | |||
| fc4f9733d1 | |||
| 8d784afcd1 | 
| @ -1,5 +1,5 @@ | |||||||
| [bumpversion] | [bumpversion] | ||||||
| current_version = 0.13.3-stable | current_version = 0.13.5-stable | ||||||
| tag = True | tag = True | ||||||
| commit = True | commit = True | ||||||
| parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)\-(?P<release>.*) | parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)\-(?P<release>.*) | ||||||
|  | |||||||
							
								
								
									
										14
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
								
							| @ -18,11 +18,11 @@ jobs: | |||||||
|       - name: Building Docker Image |       - name: Building Docker Image | ||||||
|         run: docker build |         run: docker build | ||||||
|           --no-cache |           --no-cache | ||||||
|           -t beryju/authentik:0.13.3-stable |           -t beryju/authentik:0.13.5-stable | ||||||
|           -t beryju/authentik:latest |           -t beryju/authentik:latest | ||||||
|           -f Dockerfile . |           -f Dockerfile . | ||||||
|       - name: Push Docker Container to Registry (versioned) |       - name: Push Docker Container to Registry (versioned) | ||||||
|         run: docker push beryju/authentik:0.13.3-stable |         run: docker push beryju/authentik:0.13.5-stable | ||||||
|       - name: Push Docker Container to Registry (latest) |       - name: Push Docker Container to Registry (latest) | ||||||
|         run: docker push beryju/authentik:latest |         run: docker push beryju/authentik:latest | ||||||
|   build-proxy: |   build-proxy: | ||||||
| @ -48,11 +48,11 @@ jobs: | |||||||
|           cd proxy/ |           cd proxy/ | ||||||
|           docker build \ |           docker build \ | ||||||
|           --no-cache \ |           --no-cache \ | ||||||
|           -t beryju/authentik-proxy:0.13.3-stable \ |           -t beryju/authentik-proxy:0.13.5-stable \ | ||||||
|           -t beryju/authentik-proxy:latest \ |           -t beryju/authentik-proxy:latest \ | ||||||
|           -f Dockerfile . |           -f Dockerfile . | ||||||
|       - name: Push Docker Container to Registry (versioned) |       - name: Push Docker Container to Registry (versioned) | ||||||
|         run: docker push beryju/authentik-proxy:0.13.3-stable |         run: docker push beryju/authentik-proxy:0.13.5-stable | ||||||
|       - name: Push Docker Container to Registry (latest) |       - name: Push Docker Container to Registry (latest) | ||||||
|         run: docker push beryju/authentik-proxy:latest |         run: docker push beryju/authentik-proxy:latest | ||||||
|   build-static: |   build-static: | ||||||
| @ -69,11 +69,11 @@ jobs: | |||||||
|           cd web/ |           cd web/ | ||||||
|           docker build \ |           docker build \ | ||||||
|           --no-cache \ |           --no-cache \ | ||||||
|           -t beryju/authentik-static:0.13.3-stable \ |           -t beryju/authentik-static:0.13.5-stable \ | ||||||
|           -t beryju/authentik-static:latest \ |           -t beryju/authentik-static:latest \ | ||||||
|           -f Dockerfile . |           -f Dockerfile . | ||||||
|       - name: Push Docker Container to Registry (versioned) |       - name: Push Docker Container to Registry (versioned) | ||||||
|         run: docker push beryju/authentik-static:0.13.3-stable |         run: docker push beryju/authentik-static:0.13.5-stable | ||||||
|       - name: Push Docker Container to Registry (latest) |       - name: Push Docker Container to Registry (latest) | ||||||
|         run: docker push beryju/authentik-static:latest |         run: docker push beryju/authentik-static:latest | ||||||
|   test-release: |   test-release: | ||||||
| @ -107,5 +107,5 @@ jobs: | |||||||
|           SENTRY_PROJECT: authentik |           SENTRY_PROJECT: authentik | ||||||
|           SENTRY_URL: https://sentry.beryju.org |           SENTRY_URL: https://sentry.beryju.org | ||||||
|         with: |         with: | ||||||
|           tagName: 0.13.3-stable |           tagName: 0.13.5-stable | ||||||
|           environment: beryjuorg-prod |           environment: beryjuorg-prod | ||||||
|  | |||||||
| @ -1,2 +1,2 @@ | |||||||
| """authentik""" | """authentik""" | ||||||
| __version__ = "0.13.3-stable" | __version__ = "0.13.5-stable" | ||||||
|  | |||||||
| @ -81,7 +81,7 @@ | |||||||
|                             <div slot="modal"></div> |                             <div slot="modal"></div> | ||||||
|                         </ak-modal-button> |                         </ak-modal-button> | ||||||
|                         <ak-modal-button href="{% url 'authentik_admin:policy-test' pk=policy.pk %}"> |                         <ak-modal-button href="{% url 'authentik_admin:policy-test' pk=policy.pk %}"> | ||||||
|                             <ak-spinner-button slot="trigger" class="pf-m-tertiary"> |                             <ak-spinner-button slot="trigger" class="pf-m-secondary"> | ||||||
|                                 {% trans 'Test' %} |                                 {% trans 'Test' %} | ||||||
|                             </ak-spinner-button> |                             </ak-spinner-button> | ||||||
|                             <div slot="modal"></div> |                             <div slot="modal"></div> | ||||||
|  | |||||||
| @ -37,8 +37,9 @@ | |||||||
|         <table class="pf-c-table pf-m-compact pf-m-grid-xl" role="grid"> |         <table class="pf-c-table pf-m-compact pf-m-grid-xl" role="grid"> | ||||||
|             <thead> |             <thead> | ||||||
|                 <tr role="row"> |                 <tr role="row"> | ||||||
|  |                     <th role="columnheader" scope="col">{% trans 'ID' %}</th> | ||||||
|  |                     <th role="columnheader" scope="col">{% trans 'Created by' %}</th> | ||||||
|                     <th role="columnheader" scope="col">{% trans 'Expiry' %}</th> |                     <th role="columnheader" scope="col">{% trans 'Expiry' %}</th> | ||||||
|                     <th role="columnheader" scope="col">{% trans 'Link' %}</th> |  | ||||||
|                     <th role="cell"></th> |                     <th role="cell"></th> | ||||||
|                 </tr> |                 </tr> | ||||||
|             </thead> |             </thead> | ||||||
| @ -47,12 +48,17 @@ | |||||||
|                 <tr role="row"> |                 <tr role="row"> | ||||||
|                     <td role="cell"> |                     <td role="cell"> | ||||||
|                         <span> |                         <span> | ||||||
|                             {{ invitation.expiry }} |                             {{ invitation.invite_uuid }} | ||||||
|                         </span> |                         </span> | ||||||
|                     </td> |                     </td> | ||||||
|                     <td role="cell"> |                     <td role="cell"> | ||||||
|                         <span> |                         <span> | ||||||
|                             {{ invitation.Link }} |                             {{ invitation.created_by }} | ||||||
|  |                         </span> | ||||||
|  |                     </td> | ||||||
|  |                     <td role="cell"> | ||||||
|  |                         <span> | ||||||
|  |                             {{ invitation.expiry|default:"-" }} | ||||||
|                         </span> |                         </span> | ||||||
|                     </td> |                     </td> | ||||||
|                     <td> |                     <td> | ||||||
|  | |||||||
| @ -13,6 +13,7 @@ from rest_framework_guardian.filters import ObjectPermissionsFilter | |||||||
|  |  | ||||||
| from authentik.admin.api.metrics import get_events_per_1h | from authentik.admin.api.metrics import get_events_per_1h | ||||||
| from authentik.audit.models import EventAction | from authentik.audit.models import EventAction | ||||||
|  | from authentik.core.api.providers import ProviderSerializer | ||||||
| from authentik.core.models import Application | from authentik.core.models import Application | ||||||
| from authentik.policies.engine import PolicyEngine | from authentik.policies.engine import PolicyEngine | ||||||
|  |  | ||||||
| @ -21,6 +22,7 @@ class ApplicationSerializer(ModelSerializer): | |||||||
|     """Application Serializer""" |     """Application Serializer""" | ||||||
|  |  | ||||||
|     launch_url = SerializerMethodField() |     launch_url = SerializerMethodField() | ||||||
|  |     provider = ProviderSerializer(source="get_provider", required=False) | ||||||
|  |  | ||||||
|     def get_launch_url(self, instance: Application) -> str: |     def get_launch_url(self, instance: Application) -> str: | ||||||
|         """Get generated launch URL""" |         """Get generated launch URL""" | ||||||
|  | |||||||
| @ -1,5 +1,6 @@ | |||||||
| """User API Views""" | """User API Views""" | ||||||
| from drf_yasg2.utils import swagger_auto_schema | from drf_yasg2.utils import swagger_auto_schema | ||||||
|  | from guardian.utils import get_anonymous_user | ||||||
| from rest_framework.decorators import action | from rest_framework.decorators import action | ||||||
| from rest_framework.request import Request | from rest_framework.request import Request | ||||||
| from rest_framework.response import Response | from rest_framework.response import Response | ||||||
| @ -33,9 +34,12 @@ class UserSerializer(ModelSerializer): | |||||||
| class UserViewSet(ModelViewSet): | class UserViewSet(ModelViewSet): | ||||||
|     """User Viewset""" |     """User Viewset""" | ||||||
|  |  | ||||||
|     queryset = User.objects.all() |     queryset = User.objects.all().exclude(pk=get_anonymous_user().pk) | ||||||
|     serializer_class = UserSerializer |     serializer_class = UserSerializer | ||||||
|  |  | ||||||
|  |     def get_queryset(self): | ||||||
|  |         return User.objects.all().exclude(pk=get_anonymous_user().pk) | ||||||
|  |  | ||||||
|     @swagger_auto_schema(responses={200: UserSerializer(many=False)}) |     @swagger_auto_schema(responses={200: UserSerializer(many=False)}) | ||||||
|     @action(detail=False) |     @action(detail=False) | ||||||
|     # pylint: disable=invalid-name |     # pylint: disable=invalid-name | ||||||
|  | |||||||
| @ -31,7 +31,7 @@ | |||||||
|             <p class="pf-c-form__helper-text">{{ field.help_text }}</p> |             <p class="pf-c-form__helper-text">{{ field.help_text }}</p> | ||||||
|             {% endif %} |             {% endif %} | ||||||
|         </div> |         </div> | ||||||
|     {% elif field.field.widget|fieldtype == 'Select' %} |     {% elif field.field.widget|fieldtype == 'Select' or field.field.widget|fieldtype == "SelectMultiple" %} | ||||||
|         <div class="pf-c-form__group-label"> |         <div class="pf-c-form__group-label"> | ||||||
|             <label class="pf-c-form__label" for="{{ field.name }}-{{ forloop.counter0 }}"> |             <label class="pf-c-form__label" for="{{ field.name }}-{{ forloop.counter0 }}"> | ||||||
|                 <span class="pf-c-form__label-text">{{ field.label }}</span> |                 <span class="pf-c-form__label-text">{{ field.label }}</span> | ||||||
| @ -46,6 +46,9 @@ | |||||||
|                 {% if field.help_text %} |                 {% if field.help_text %} | ||||||
|                 <p class="pf-c-form__helper-text">{{ field.help_text|safe }}</p> |                 <p class="pf-c-form__helper-text">{{ field.help_text|safe }}</p> | ||||||
|                 {% endif %} |                 {% endif %} | ||||||
|  |                 {% if field.field.widget|fieldtype == 'SelectMultiple' %} | ||||||
|  |                 <p class="pf-c-form__helper-text">{% trans 'Hold control/command to select multiple items.' %}</p> | ||||||
|  |                 {% endif %} | ||||||
|             </div> |             </div> | ||||||
|         </div> |         </div> | ||||||
|     {% elif field.field.widget|fieldtype == 'CheckboxInput' %} |     {% elif field.field.widget|fieldtype == 'CheckboxInput' %} | ||||||
|  | |||||||
| @ -1,7 +1,11 @@ | |||||||
| """Outpost forms""" | """Outpost forms""" | ||||||
|  |  | ||||||
| from django import forms | from django import forms | ||||||
|  | from django.core.exceptions import ValidationError | ||||||
| from django.utils.translation import gettext_lazy as _ | from django.utils.translation import gettext_lazy as _ | ||||||
|  | from kubernetes.client.configuration import Configuration | ||||||
|  | from kubernetes.config.config_exception import ConfigException | ||||||
|  | from kubernetes.config.kube_config import load_kube_config_from_dict | ||||||
|  |  | ||||||
| from authentik.admin.fields import CodeMirrorWidget, YAMLField | from authentik.admin.fields import CodeMirrorWidget, YAMLField | ||||||
| from authentik.crypto.models import CertificateKeyPair | from authentik.crypto.models import CertificateKeyPair | ||||||
| @ -71,6 +75,23 @@ class DockerServiceConnectionForm(forms.ModelForm): | |||||||
| class KubernetesServiceConnectionForm(forms.ModelForm): | class KubernetesServiceConnectionForm(forms.ModelForm): | ||||||
|     """Kubernetes service-connection form""" |     """Kubernetes service-connection form""" | ||||||
|  |  | ||||||
|  |     def clean_kubeconfig(self): | ||||||
|  |         """Validate kubeconfig by attempting to load it""" | ||||||
|  |         kubeconfig = self.cleaned_data["kubeconfig"] | ||||||
|  |         if kubeconfig == {}: | ||||||
|  |             if not self.cleaned_data["local"]: | ||||||
|  |                 raise ValidationError( | ||||||
|  |                     _("You can only use an empty kubeconfig when local is enabled.") | ||||||
|  |                 ) | ||||||
|  |             # Empty kubeconfig is valid | ||||||
|  |             return kubeconfig | ||||||
|  |         config = Configuration() | ||||||
|  |         try: | ||||||
|  |             load_kube_config_from_dict(kubeconfig, client_configuration=config) | ||||||
|  |         except ConfigException: | ||||||
|  |             raise ValidationError(_("Invalid kubeconfig")) | ||||||
|  |         return kubeconfig | ||||||
|  |  | ||||||
|     class Meta: |     class Meta: | ||||||
|  |  | ||||||
|         model = KubernetesServiceConnection |         model = KubernetesServiceConnection | ||||||
|  | |||||||
							
								
								
									
										21
									
								
								authentik/outposts/migrations/0015_auto_20201224_1206.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								authentik/outposts/migrations/0015_auto_20201224_1206.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,21 @@ | |||||||
|  | # Generated by Django 3.1.4 on 2020-12-24 12:06 | ||||||
|  |  | ||||||
|  | from django.db import migrations, models | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class Migration(migrations.Migration): | ||||||
|  |  | ||||||
|  |     dependencies = [ | ||||||
|  |         ("authentik_outposts", "0014_auto_20201213_1407"), | ||||||
|  |     ] | ||||||
|  |  | ||||||
|  |     operations = [ | ||||||
|  |         migrations.AlterField( | ||||||
|  |             model_name="kubernetesserviceconnection", | ||||||
|  |             name="kubeconfig", | ||||||
|  |             field=models.JSONField( | ||||||
|  |                 blank=True, | ||||||
|  |                 help_text="Paste your kubeconfig here. authentik will automatically use the currently selected context.", | ||||||
|  |             ), | ||||||
|  |         ), | ||||||
|  |     ] | ||||||
| @ -234,7 +234,8 @@ class KubernetesServiceConnection(OutpostServiceConnection): | |||||||
|                 "Paste your kubeconfig here. authentik will automatically use " |                 "Paste your kubeconfig here. authentik will automatically use " | ||||||
|                 "the currently selected context." |                 "the currently selected context." | ||||||
|             ) |             ) | ||||||
|         ) |         ), | ||||||
|  |         blank=True, | ||||||
|     ) |     ) | ||||||
|  |  | ||||||
|     @property |     @property | ||||||
|  | |||||||
| @ -21,6 +21,7 @@ class PolicyEvaluator(BaseEvaluator): | |||||||
|     def __init__(self, policy_name: str): |     def __init__(self, policy_name: str): | ||||||
|         super().__init__() |         super().__init__() | ||||||
|         self._messages = [] |         self._messages = [] | ||||||
|  |         self._context["ak_logger"] = get_logger(policy_name) | ||||||
|         self._context["ak_message"] = self.expr_func_message |         self._context["ak_message"] = self.expr_func_message | ||||||
|         self._context["ip_address"] = ip_address |         self._context["ip_address"] = ip_address | ||||||
|         self._context["ip_network"] = ip_network |         self._context["ip_network"] = ip_network | ||||||
|  | |||||||
| @ -1,6 +1,5 @@ | |||||||
| """authentik flows invitation forms""" | """authentik flows invitation forms""" | ||||||
| from django import forms | from django import forms | ||||||
| from django.utils.translation import gettext as _ |  | ||||||
|  |  | ||||||
| from authentik.admin.fields import CodeMirrorWidget, YAMLField | from authentik.admin.fields import CodeMirrorWidget, YAMLField | ||||||
| from authentik.stages.invitation.models import Invitation, InvitationStage | from authentik.stages.invitation.models import Invitation, InvitationStage | ||||||
| @ -25,8 +24,5 @@ class InvitationForm(forms.ModelForm): | |||||||
|  |  | ||||||
|         model = Invitation |         model = Invitation | ||||||
|         fields = ["expires", "fixed_data"] |         fields = ["expires", "fixed_data"] | ||||||
|         labels = { |  | ||||||
|             "fixed_data": _("Optional fixed data to enforce on user enrollment."), |  | ||||||
|         } |  | ||||||
|         widgets = {"fixed_data": CodeMirrorWidget()} |         widgets = {"fixed_data": CodeMirrorWidget()} | ||||||
|         field_classes = {"fixed_data": YAMLField} |         field_classes = {"fixed_data": YAMLField} | ||||||
|  | |||||||
| @ -0,0 +1,18 @@ | |||||||
|  | # Generated by Django 3.1.4 on 2020-12-25 21:43 | ||||||
|  |  | ||||||
|  | from django.db import migrations, models | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class Migration(migrations.Migration): | ||||||
|  |  | ||||||
|  |     dependencies = [ | ||||||
|  |         ("authentik_stages_invitation", "0001_initial"), | ||||||
|  |     ] | ||||||
|  |  | ||||||
|  |     operations = [ | ||||||
|  |         migrations.AlterField( | ||||||
|  |             model_name="invitation", | ||||||
|  |             name="fixed_data", | ||||||
|  |             field=models.JSONField(blank=True, default=dict), | ||||||
|  |         ), | ||||||
|  |     ] | ||||||
| @ -61,7 +61,11 @@ class Invitation(models.Model): | |||||||
|  |  | ||||||
|     created_by = models.ForeignKey(User, on_delete=models.CASCADE) |     created_by = models.ForeignKey(User, on_delete=models.CASCADE) | ||||||
|     expires = models.DateTimeField(default=None, blank=True, null=True) |     expires = models.DateTimeField(default=None, blank=True, null=True) | ||||||
|     fixed_data = models.JSONField(default=dict) |     fixed_data = models.JSONField( | ||||||
|  |         default=dict, | ||||||
|  |         blank=True, | ||||||
|  |         help_text=_("Optional fixed data to enforce on user enrollment."), | ||||||
|  |     ) | ||||||
|  |  | ||||||
|     def __str__(self): |     def __str__(self): | ||||||
|         return f"Invitation {self.invite_uuid.hex} created by {self.created_by}" |         return f"Invitation {self.invite_uuid.hex} created by {self.created_by}" | ||||||
|  | |||||||
| @ -53,5 +53,5 @@ class PasswordStageForm(forms.ModelForm): | |||||||
|         fields = ["name", "backends", "configure_flow", "failed_attempts_before_cancel"] |         fields = ["name", "backends", "configure_flow", "failed_attempts_before_cancel"] | ||||||
|         widgets = { |         widgets = { | ||||||
|             "name": forms.TextInput(), |             "name": forms.TextInput(), | ||||||
|             "backends": forms.SelectMultiple(get_authentication_backends()), |             "backends": forms.SelectMultiple(choices=get_authentication_backends()), | ||||||
|         } |         } | ||||||
|  | |||||||
| @ -19,7 +19,7 @@ services: | |||||||
|     networks: |     networks: | ||||||
|       - internal |       - internal | ||||||
|   server: |   server: | ||||||
|     image: beryju/authentik:${AUTHENTIK_TAG:-0.13.3-stable} |     image: beryju/authentik:${AUTHENTIK_TAG:-0.13.5-stable} | ||||||
|     command: server |     command: server | ||||||
|     environment: |     environment: | ||||||
|       AUTHENTIK_REDIS__HOST: redis |       AUTHENTIK_REDIS__HOST: redis | ||||||
| @ -44,7 +44,7 @@ services: | |||||||
|     env_file: |     env_file: | ||||||
|       - .env |       - .env | ||||||
|   worker: |   worker: | ||||||
|     image: beryju/authentik:${AUTHENTIK_TAG:-0.13.3-stable} |     image: beryju/authentik:${AUTHENTIK_TAG:-0.13.5-stable} | ||||||
|     command: worker |     command: worker | ||||||
|     networks: |     networks: | ||||||
|       - internal |       - internal | ||||||
| @ -60,7 +60,7 @@ services: | |||||||
|     env_file: |     env_file: | ||||||
|       - .env |       - .env | ||||||
|   static: |   static: | ||||||
|     image: beryju/authentik-static:${AUTHENTIK_TAG:-0.13.3-stable} |     image: beryju/authentik-static:${AUTHENTIK_TAG:-0.13.5-stable} | ||||||
|     networks: |     networks: | ||||||
|       - internal |       - internal | ||||||
|     labels: |     labels: | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ name: authentik | |||||||
| home: https://goauthentik.io | home: https://goauthentik.io | ||||||
| sources: | sources: | ||||||
|   - https://github.com/BeryJu/authentik |   - https://github.com/BeryJu/authentik | ||||||
| version: "0.13.3-stable" | version: "0.13.5-stable" | ||||||
| icon: https://raw.githubusercontent.com/BeryJu/authentik/master/web/icons/icon.svg | icon: https://raw.githubusercontent.com/BeryJu/authentik/master/web/icons/icon.svg | ||||||
| dependencies: | dependencies: | ||||||
|   - name: postgresql |   - name: postgresql | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
| |-----------------------------------|-------------------------|-------------| | |-----------------------------------|-------------------------|-------------| | ||||||
| | image.name                        | beryju/authentik         | Image used to run the authentik server and worker | | | image.name                        | beryju/authentik         | Image used to run the authentik server and worker | | ||||||
| | image.name_static                 | beryju/authentik-static  | Image used to run the authentik static server (CSS and JS Files) | | | image.name_static                 | beryju/authentik-static  | Image used to run the authentik static server (CSS and JS Files) | | ||||||
| | image.tag                         | 0.13.3-stable              | Image tag | | | image.tag                         | 0.13.5-stable              | Image tag | | ||||||
| | image.pullPolicy                  | IfNotPresent            | Image Pull Policy used for all deployments | | | image.pullPolicy                  | IfNotPresent            | Image Pull Policy used for all deployments | | ||||||
| | serverReplicas                    | 1                       | Replicas for the Server deployment | | | serverReplicas                    | 1                       | Replicas for the Server deployment | | ||||||
| | workerReplicas                    | 1                       | Replicas for the Worker deployment | | | workerReplicas                    | 1                       | Replicas for the Worker deployment | | ||||||
|  | |||||||
| @ -5,7 +5,7 @@ image: | |||||||
|   name: beryju/authentik |   name: beryju/authentik | ||||||
|   name_static: beryju/authentik-static |   name_static: beryju/authentik-static | ||||||
|   name_outposts: beryju/authentik # Prefix used for Outpost deployments, Outpost type and version is appended |   name_outposts: beryju/authentik # Prefix used for Outpost deployments, Outpost type and version is appended | ||||||
|   tag: 0.13.3-stable |   tag: 0.13.5-stable | ||||||
|   pullPolicy: IfNotPresent |   pullPolicy: IfNotPresent | ||||||
|  |  | ||||||
| serverReplicas: 1 | serverReplicas: 1 | ||||||
|  | |||||||
| @ -1,3 +1,3 @@ | |||||||
| package pkg | package pkg | ||||||
|  |  | ||||||
| const VERSION = "0.13.3-stable" | const VERSION = "0.13.5-stable" | ||||||
|  | |||||||
| @ -7345,7 +7345,6 @@ definitions: | |||||||
|     description: KubernetesServiceConnection Serializer |     description: KubernetesServiceConnection Serializer | ||||||
|     required: |     required: | ||||||
|       - name |       - name | ||||||
|       - kubeconfig |  | ||||||
|     type: object |     type: object | ||||||
|     properties: |     properties: | ||||||
|       pk: |       pk: | ||||||
| @ -8596,6 +8595,7 @@ definitions: | |||||||
|         x-nullable: true |         x-nullable: true | ||||||
|       fixed_data: |       fixed_data: | ||||||
|         title: Fixed data |         title: Fixed data | ||||||
|  |         description: Optional fixed data to enforce on user enrollment. | ||||||
|         type: object |         type: object | ||||||
|   OTPStaticStage: |   OTPStaticStage: | ||||||
|     description: OTPStaticStage Serializer |     description: OTPStaticStage Serializer | ||||||
|  | |||||||
| @ -81,6 +81,10 @@ select[multiple] { | |||||||
|     font-size: var(--pf-global--FontSize--sm); |     font-size: var(--pf-global--FontSize--sm); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | .pf-c-page__main { | ||||||
|  |     z-index: auto !important; | ||||||
|  | } | ||||||
|  |  | ||||||
| @media (prefers-color-scheme: dark) { | @media (prefers-color-scheme: dark) { | ||||||
|     :root { |     :root { | ||||||
|         --ak-dark-foreground: #fafafa; |         --ak-dark-foreground: #fafafa; | ||||||
|  | |||||||
| @ -28,4 +28,4 @@ export const ColorStyles = css` | |||||||
|         background-color: var(--pf-global--danger-color--100); |         background-color: var(--pf-global--danger-color--100); | ||||||
|     } |     } | ||||||
| `; | `; | ||||||
| export const VERSION = "0.13.3-stable"; | export const VERSION = "0.13.5-stable"; | ||||||
|  | |||||||
| @ -18,6 +18,10 @@ export abstract class Interface extends LitElement { | |||||||
|  |  | ||||||
|     constructor() { |     constructor() { | ||||||
|         super(); |         super(); | ||||||
|  |         this.sidebarOpen = window.outerWidth >= 1280; | ||||||
|  |         window.addEventListener("resize", () => { | ||||||
|  |             this.sidebarOpen = window.outerWidth >= 1280; | ||||||
|  |         }); | ||||||
|         window.addEventListener("ak-sidebar-toggle", () => { |         window.addEventListener("ak-sidebar-toggle", () => { | ||||||
|             this.sidebarOpen = !this.sidebarOpen; |             this.sidebarOpen = !this.sidebarOpen; | ||||||
|         }); |         }); | ||||||
|  | |||||||
| @ -15,7 +15,7 @@ Download the latest `docker-compose.yml` from [here](https://raw.githubuserconte | |||||||
|  |  | ||||||
| To optionally enable error-reporting, run `echo AUTHENTIK_ERROR_REPORTING__ENABLED=true >> .env` | To optionally enable error-reporting, run `echo AUTHENTIK_ERROR_REPORTING__ENABLED=true >> .env` | ||||||
|  |  | ||||||
| To optionally deploy a different version run `echo AUTHENTIK_TAG=0.13.3-stable >> .env` | To optionally deploy a different version run `echo AUTHENTIK_TAG=0.13.5-stable >> .env` | ||||||
|  |  | ||||||
| If this is a fresh authentik install run the following commands to generate a password: | If this is a fresh authentik install run the following commands to generate a password: | ||||||
|  |  | ||||||
|  | |||||||
| @ -22,7 +22,7 @@ image: | |||||||
|     name: beryju/authentik |     name: beryju/authentik | ||||||
|     name_static: beryju/authentik-static |     name_static: beryju/authentik-static | ||||||
|     name_outposts: beryju/authentik # Prefix used for Outpost deployments, Outpost type and version is appended |     name_outposts: beryju/authentik # Prefix used for Outpost deployments, Outpost type and version is appended | ||||||
|     tag: 0.13.3-stable |     tag: 0.13.5-stable | ||||||
|  |  | ||||||
| serverReplicas: 1 | serverReplicas: 1 | ||||||
| workerReplicas: 1 | workerReplicas: 1 | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	