feat: ✨ add admin secure + fix missing element on manifest for the queue

This commit is contained in:
K Muller 2026-01-26 11:04:57 +01:00
parent 0c2b66e630
commit 6be9a4ccf6
4 changed files with 301 additions and 1 deletions

View file

@ -75,3 +75,8 @@ GOOGLE_MAPS_KEY=
SCOUT_PREFIX=
MEILISEARCH_HOST=
MEILISEARCH_KEY=
# ADMIN SECURE
UWIL_ADMIN_SECURE_CIDR_LIST=""
UWIL_ADMIN_SECURE_CIDR_PROJECT_ALLOWED_LIST=""

View file

@ -24,6 +24,7 @@
"sentry/sentry-laravel": "^4.18",
"spatie/laravel-translatable": "^6.11",
"tightenco/ziggy": "^2.5",
"uwil/admin-secure-laravel": "^5.0",
"uwil/k8s-laravel": "^2.0",
"uwil/laravel-backend": "^3.0",
"uwil/laravel-common": "^4.1"

272
composer.lock generated
View file

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "b1d9d1034b8cd27b5f5de54e9fce077a",
"content-hash": "99083c506520f599b9b50bd66ca930a2",
"packages": [
{
"name": "24slides/laravel-saml2",
@ -586,6 +586,102 @@
],
"time": "2025-10-31T18:51:33+00:00"
},
{
"name": "dxw/cidr",
"version": "v3.2.0",
"source": {
"type": "git",
"url": "https://github.com/dxw/cidr.git",
"reference": "b07dd398f5a93441f57a687982bc7d0ffb96729a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/dxw/cidr/zipball/b07dd398f5a93441f57a687982bc7d0ffb96729a",
"reference": "b07dd398f5a93441f57a687982bc7d0ffb96729a",
"shasum": ""
},
"require": {
"dxw/result": "^1.0",
"php": "^7.4||^8.1",
"phpseclib/phpseclib": "^2.0"
},
"require-dev": {
"dxw/php-cs-fixer-config": "^2.0",
"kahlan/kahlan": "^5.2",
"vimeo/psalm": "^5.14"
},
"type": "library",
"autoload": {
"psr-4": {
"Dxw\\CIDR\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "dxw",
"email": "team@govpress.com",
"homepage": "https://www.dxw.com"
}
],
"description": "IP address matching with CIDR ranges",
"homepage": "https://github.com/dxw/cidr",
"support": {
"issues": "https://github.com/dxw/cidr/issues",
"source": "https://github.com/dxw/cidr/tree/v3.2.0"
},
"time": "2023-08-14T10:14:13+00:00"
},
{
"name": "dxw/result",
"version": "v1.0.6",
"source": {
"type": "git",
"url": "https://github.com/dxw/result.git",
"reference": "d554bb10f0cf74056ccd26526688e194652eef79"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/dxw/result/zipball/d554bb10f0cf74056ccd26526688e194652eef79",
"reference": "d554bb10f0cf74056ccd26526688e194652eef79",
"shasum": ""
},
"require": {
"php": "^7.4||^8.1"
},
"require-dev": {
"dxw/php-cs-fixer-config": "^2.1",
"kahlan/kahlan": "^5.2",
"vimeo/psalm": "^4"
},
"type": "library",
"autoload": {
"psr-4": {
"Dxw\\Result\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Mallory Adams",
"email": "mallory@dxw.com",
"homepage": "https://www.dxw.com/"
}
],
"description": "Result values",
"homepage": "https://github.com/dxw/result",
"support": {
"issues": "https://github.com/dxw/result/issues",
"source": "https://github.com/dxw/result/tree/v1.0.6"
},
"time": "2023-07-19T11:14:28+00:00"
},
{
"name": "egulias/email-validator",
"version": "4.0.4",
@ -3899,6 +3995,116 @@
],
"time": "2025-08-21T11:53:16+00:00"
},
{
"name": "phpseclib/phpseclib",
"version": "2.0.50",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "1815ddd00195487cc922577751c175f339f4e20f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/1815ddd00195487cc922577751c175f339f4e20f",
"reference": "1815ddd00195487cc922577751c175f339f4e20f",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"require-dev": {
"phing/phing": "~2.7",
"phpunit/phpunit": "^4.8.35|^5.7|^6.0|^9.4",
"squizlabs/php_codesniffer": "~2.0"
},
"suggest": {
"ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.",
"ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.",
"ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
"ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations.",
"ext-xml": "Install the XML extension to load XML formatted public keys."
},
"type": "library",
"autoload": {
"files": [
"phpseclib/bootstrap.php"
],
"psr-4": {
"phpseclib\\": "phpseclib/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Jim Wigginton",
"email": "terrafrost@php.net",
"role": "Lead Developer"
},
{
"name": "Patrick Monnerat",
"email": "pm@datasphere.ch",
"role": "Developer"
},
{
"name": "Andreas Fischer",
"email": "bantu@phpbb.com",
"role": "Developer"
},
{
"name": "Hans-Jürgen Petrich",
"email": "petrich@tronic-media.com",
"role": "Developer"
},
{
"name": "Graham Campbell",
"email": "graham@alt-three.com",
"role": "Developer"
}
],
"description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
"homepage": "http://phpseclib.sourceforge.net",
"keywords": [
"BigInteger",
"aes",
"asn.1",
"asn1",
"blowfish",
"crypto",
"cryptography",
"encryption",
"rsa",
"security",
"sftp",
"signature",
"signing",
"ssh",
"twofish",
"x.509",
"x509"
],
"support": {
"issues": "https://github.com/phpseclib/phpseclib/issues",
"source": "https://github.com/phpseclib/phpseclib/tree/2.0.50"
},
"funding": [
{
"url": "https://github.com/terrafrost",
"type": "github"
},
{
"url": "https://www.patreon.com/phpseclib",
"type": "patreon"
},
{
"url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
"type": "tidelift"
}
],
"time": "2025-12-15T11:48:50+00:00"
},
{
"name": "psr/clock",
"version": "1.0.0",
@ -7922,6 +8128,70 @@
},
"time": "2024-12-21T16:25:41+00:00"
},
{
"name": "uwil/admin-secure-laravel",
"version": "5.0.0",
"source": {
"type": "git",
"url": "git@lab.s-web.fr:ldc-web/projets/ldc-web-admin-secure-laravel.git",
"reference": "7d9c052db4318752a312dc9763bc8c31ea053aa2"
},
"dist": {
"type": "zip",
"url": "https://lab.s-web.fr/api/v4/projects/20/packages/composer/archives/uwil/admin-secure-laravel.zip?sha=7d9c052db4318752a312dc9763bc8c31ea053aa2",
"reference": "7d9c052db4318752a312dc9763bc8c31ea053aa2",
"shasum": ""
},
"require": {
"dxw/cidr": "^3.2",
"illuminate/support": "~11|~12",
"laravel/framework": "~11|~12",
"php": "^8.3",
"symfony/options-resolver": "^7.0"
},
"require-dev": {
"larastan/larastan": "^2.9",
"orchestra/testbench": "^9",
"phpunit/php-code-coverage": "^11",
"phpunit/phpunit": "^11",
"slevomat/coding-standard": "^8",
"squizlabs/php_codesniffer": "^3"
},
"type": "library",
"extra": {
"laravel": {
"providers": [
"Uwil\\AdminSecure\\Laravel\\AdminSecureServiceProvider"
]
}
},
"autoload": {
"psr-4": {
"Uwil\\AdminSecure\\Laravel\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"Uwil\\AdminSecure\\Laravel\\Tests\\": "tests"
}
},
"scripts": {
"test": [
"vendor/bin/phpunit"
],
"post-autoload-dump": [
"@php ./vendor/bin/testbench package:discover --ansi"
]
},
"license": [
"MIT"
],
"description": "Restrict access to LDC Network",
"support": {
"email": "digital@ldc.fr",
"issues": "https://lab.s-web.fr/ldc-web/projets/ldc-web-admin-secure-laravel/-/issues"
}
},
{
"name": "uwil/k8s-laravel",
"version": "2.0.0",

View file

@ -42,6 +42,7 @@ data:
SAML2_CONTACT_TECHNICAL_EMAIL: "${APP_SAML2_CONTACT_TECHNICAL_EMAIL}"
SAML2_CONTACT_SUPPORT_EMAIL: "${APP_SAML2_CONTACT_SUPPORT_EMAIL}"
SAML2_DEFAULT_TENANT_UUID: "${APP_SAML2_DEFAULT_TENANT_UUID}"
UWIL_ADMIN_SECURE_CIDR_LIST: "${APP_GLOBAL_UWIL_ADMIN_SECURE_CIDR_LIST}"
---
apiVersion: v1
kind: PersistentVolumeClaim
@ -85,6 +86,29 @@ spec:
volumeMounts:
- name: storage
mountPath: /app/srcs/storage
- name: ${CI_PROJECT_PATH_SLUG}-queue-worker
image: $IMAGE_TAG
lifecycle:
preStop:
exec:
command: [ "/bin/sh", "-c", "kill -s TERM 1; while test $(ps ax | grep -v grep | grep bash | wc -l) -gt 0; do sleep 2s; done" ]
resources:
limits:
cpu: "${APP_CI_CPU_LIMIT}"
memory: "${APP_CI_MEMORY_LIMIT}"
requests:
cpu: "${APP_CI_CPU_REQUEST}"
memory: "${APP_CI_MEMORY_REQUEST}"
command:
- "bash"
args:
- "k8s-queues.sh"
envFrom:
- configMapRef:
name: ${CI_PROJECT_PATH_SLUG}-config-map
volumeMounts:
- name: storage
mountPath: /app/srcs/storage
imagePullSecrets:
- name: docker-registry-credentials
securityContext: