Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • drowolath
  • master
2 results

Target

Select target project
  • shore/ldap-auth
1 result
Select Git revision
  • drowolath
  • master
2 results
Show changes
Commits on Source (4)
--- ---
include: include:
- project: shore/ci-templates - project: shore/ci-stuff
file: templates/pre-commit.yml file: templates/pre-commit.yml
- project: shore/ci-templates - project: shore/ci-stuff
file: templates/docker.yml file: templates/docker.yml
stages: stages:
...@@ -10,7 +10,7 @@ stages: ...@@ -10,7 +10,7 @@ stages:
- build - build
- deploy - deploy
build: docker-build:
extends: .docker-build-shore extends: .docker-build-shore
push: push:
......
--- ---
repos: repos:
- repo: https://github.com/pre-commit/pre-commit-hooks - repo: https://github.com/pre-commit/pre-commit-hooks.git
rev: v3.4.0 rev: v4.3.0
hooks: hooks:
- id: check-executables-have-shebangs
- id: check-merge-conflict - id: check-merge-conflict
- id: check-toml - id: check-yaml
files: Pipfile - id: detect-private-key
- id: end-of-file-fixer
- id: trailing-whitespace - id: trailing-whitespace
exclude: \.diff$
- repo: https://github.com/Yelp/detect-secrets - repo: https://github.com/codespell-project/codespell.git
rev: v0.14.3 rev: v2.1.0
hooks: hooks:
- id: detect-secrets - id: codespell
- repo: https://github.com/adrienverge/yamllint - repo: https://github.com/Yelp/detect-secrets.git
rev: v1.25.0 rev: v1.2.0
hooks: hooks:
- id: yamllint - id: detect-secrets
- repo: https://github.com/amperser/proselint/ - repo: https://github.com/amperser/proselint.git
rev: 0.10.2 rev: 0.10.2
hooks: hooks:
- id: proselint - id: proselint
types: [plain-text] types: [plain-text]
exclude: LICENSE exclude: LICENSE
- repo: https://github.com/ambv/black - repo: https://gitlab.com/devopshq/gitlab-ci-linter.git
rev: 20.8b1 rev: v1.0.3
hooks:
- id: gitlab-ci-linter
args:
- "--server"
- https://git.shore.co.il
- repo: https://git.shore.co.il/nimrod/yamltool.git
rev: v0.1.2
hooks:
- id: yamltool
- repo: https://github.com/adrienverge/yamllint.git
rev: v1.27.1
hooks:
- id: yamllint
- repo: https://github.com/executablebooks/mdformat.git
rev: 0.7.14
hooks:
- id: mdformat
- repo: https://github.com/AleksaC/hadolint-py.git
rev: v2.10.0
hooks:
- id: hadolint
- repo: https://github.com/ambv/black.git
rev: 22.6.0
hooks: hooks:
- id: black - id: black
args: args:
- | - |
--line-length=79 --line-length=79
- repo: https://github.com/PyCQA/prospector - repo: https://github.com/PyCQA/isort
rev: 1.3.1 rev: 5.10.1
hooks:
- id: isort
args: ["--filter-files", "--profile", "black"]
- repo: https://github.com/PyCQA/prospector.git
rev: 1.7.7
hooks: hooks:
- id: prospector - id: prospector
args: args:
...@@ -62,7 +97,7 @@ repos: ...@@ -62,7 +97,7 @@ repos:
- pyroma - pyroma
- repo: https://gitlab.com/pycqa/flake8.git - repo: https://gitlab.com/pycqa/flake8.git
rev: 3.8.4 rev: 3.9.2
hooks: hooks:
- id: flake8 - id: flake8
args: args:
...@@ -70,13 +105,29 @@ repos: ...@@ -70,13 +105,29 @@ repos:
--doctests --doctests
additional_dependencies: additional_dependencies:
- flake8-bugbear - flake8-bugbear
- flake8-builtins
- flake8-comprehensions
- flake8-loopy
- flake8-pie
- flake8-tuple
- flake8-warnings
- repo: https://github.com/executablebooks/mdformat.git - repo: https://github.com/Lucas-C/pre-commit-hooks-safety.git
rev: 0.5.3 rev: v1.3.0
hooks: hooks:
- id: mdformat - id: python-safety-dependencies-check
- repo: https://git.shore.co.il/nimrod/docker-pre-commit.git/ - repo: https://github.com/asottile/pyupgrade.git
rev: v0.3.0 rev: v2.37.1
hooks: hooks:
- id: hadolint - id: pyupgrade
- repo: https://github.com/hadialqattan/pycln.git
rev: v2.0.2
hooks:
- id: pycln
- repo: https://github.com/PyCQA/docformatter.git
rev: v1.4
hooks:
- id: docformatter
FROM registry.hub.docker.com/library/python:3.9-slim-buster as wheels FROM docker.io/library/python:3.10-slim-bullseye as wheels
# hadolint ignore=DL3008,DL3015 # hadolint ignore=DL3008,DL3015
RUN apt-get update && \ RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \ DEBIAN_FRONTEND=noninteractive apt-get install -y \
...@@ -9,9 +9,10 @@ RUN apt-get update && \ ...@@ -9,9 +9,10 @@ RUN apt-get update && \
; ;
WORKDIR /wheels WORKDIR /wheels
RUN python3 -m pip wheel https://github.com/python-ldap/python-ldap/releases/download/python-ldap-3.3.1/python-ldap-3.3.1.tar.gz RUN python3 -m pip wheel https://github.com/python-ldap/python-ldap/releases/download/python-ldap-3.3.1/python-ldap-3.3.1.tar.gz
# hadolint ignore=DL3059
RUN python3 -m pip wheel git+https://github.com/adarnimrod/flask-simpleldap.git@ldapi-support#egg=flask-simpleldap RUN python3 -m pip wheel git+https://github.com/adarnimrod/flask-simpleldap.git@ldapi-support#egg=flask-simpleldap
FROM registry.hub.docker.com/library/python:3.9-slim-buster FROM docker.io/library/python:3.10-slim-bullseye
# hadolint ignore=DL3008 # hadolint ignore=DL3008
RUN apt-get update && \ RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
...@@ -21,6 +22,7 @@ RUN apt-get update && \ ...@@ -21,6 +22,7 @@ RUN apt-get update && \
&& \ && \
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/* rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/*
COPY --from=wheels /wheels/*.whl /wheels/ COPY --from=wheels /wheels/*.whl /wheels/
# hadolint ignore=DL3042
RUN pip install /wheels/*.whl RUN pip install /wheels/*.whl
WORKDIR /app WORKDIR /app
COPY requirements.txt ./ COPY requirements.txt ./
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
[![pipeline status](https://git.shore.co.il/shore/ldap-auth/badges/master/pipeline.svg)](https://git.shore.co.il/shore/ldap-auth/-/commits/master) [![pipeline status](https://git.shore.co.il/shore/ldap-auth/badges/master/pipeline.svg)](https://git.shore.co.il/shore/ldap-auth/-/commits/master)
LDAP authentication webserver to use with Nginx' auth\_request. See this [blog LDAP authentication webserver to use with Nginx' auth_request. See this [blog
post](https://www.shore.co.il/blog/ldap-auth/) for further explanation. post](https://www.shore.co.il/blog/ldap-auth/) for further explanation.
## Configuration ## Configuration
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
# pylint: disable=import-error # pylint: disable=import-error
import os import os
from flask import Flask from flask import Flask
from flask_simpleldap import LDAP from flask_simpleldap import LDAP
...@@ -44,6 +45,7 @@ def ping(): ...@@ -44,6 +45,7 @@ def ping():
@app.route("/validate") @app.route("/validate")
@ldap.basic_auth_required @ldap.basic_auth_required
def login(): def login():
"""Login to the app, requires LDAP authentication."""
return "OK" return "OK"
......