Merge pull request #4556 from ezyostudio/next-oauth-infomaniak
feat: add infomaniak oauth
This commit is contained in:
@@ -11,6 +11,7 @@ use Illuminate\Foundation\Events\MaintenanceModeEnabled;
|
||||
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
|
||||
use SocialiteProviders\Authentik\AuthentikExtendSocialite;
|
||||
use SocialiteProviders\Azure\AzureExtendSocialite;
|
||||
use SocialiteProviders\Infomaniak\InfomaniakExtendSocialite;
|
||||
use SocialiteProviders\Manager\SocialiteWasCalled;
|
||||
|
||||
class EventServiceProvider extends ServiceProvider
|
||||
@@ -25,6 +26,7 @@ class EventServiceProvider extends ServiceProvider
|
||||
SocialiteWasCalled::class => [
|
||||
AzureExtendSocialite::class.'@handle',
|
||||
AuthentikExtendSocialite::class.'@handle',
|
||||
InfomaniakExtendSocialite::class.'@handle',
|
||||
],
|
||||
ProxyStarted::class => [
|
||||
ProxyStartedNotification::class,
|
||||
|
||||
@@ -40,6 +40,7 @@ function get_socialite_provider(string $provider)
|
||||
'github' => \Laravel\Socialite\Two\GithubProvider::class,
|
||||
'gitlab' => \Laravel\Socialite\Two\GitlabProvider::class,
|
||||
'google' => \Laravel\Socialite\Two\GoogleProvider::class,
|
||||
'infomaniak' => \SocialiteProviders\Infomaniak\Provider::class,
|
||||
];
|
||||
|
||||
return Socialite::buildProvider(
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
"resend/resend-laravel": "^0.15.0",
|
||||
"sentry/sentry-laravel": "^4.6",
|
||||
"socialiteproviders/authentik": "^5.2",
|
||||
"socialiteproviders/infomaniak": "^4.0",
|
||||
"socialiteproviders/microsoft-azure": "^5.1",
|
||||
"spatie/laravel-activitylog": "^4.7.3",
|
||||
"spatie/laravel-data": "^4.11",
|
||||
|
||||
53
composer.lock
generated
53
composer.lock
generated
@@ -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": "871067cb42e6347ca53ff36e81ac5079",
|
||||
"content-hash": "5517a7becb5d31fa2ef3ecfaea06f7a7",
|
||||
"packages": [
|
||||
{
|
||||
"name": "3sidedcube/laravel-redoc",
|
||||
@@ -7467,6 +7467,57 @@
|
||||
},
|
||||
"time": "2023-11-07T22:21:16+00:00"
|
||||
},
|
||||
{
|
||||
"name": "socialiteproviders/infomaniak",
|
||||
"version": "4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/SocialiteProviders/Infomaniak.git",
|
||||
"reference": "9796ad686204443bfdf3ff19a6c409e8771667e1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/SocialiteProviders/Infomaniak/zipball/9796ad686204443bfdf3ff19a6c409e8771667e1",
|
||||
"reference": "9796ad686204443bfdf3ff19a6c409e8771667e1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-json": "*",
|
||||
"php": "^8.0",
|
||||
"socialiteproviders/manager": "^4.4"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"SocialiteProviders\\Infomaniak\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Leopold Jacquot",
|
||||
"email": "leopold.jacquot@infomaniak.com"
|
||||
}
|
||||
],
|
||||
"description": "Infomaniak OAuth2 Provider for Laravel Socialite",
|
||||
"keywords": [
|
||||
"infomaniak",
|
||||
"laravel",
|
||||
"oauth",
|
||||
"oauth2",
|
||||
"provider",
|
||||
"socialite"
|
||||
],
|
||||
"support": {
|
||||
"docs": "https://socialiteproviders.com/qq",
|
||||
"issues": "https://github.com/socialiteproviders/providers/issues",
|
||||
"source": "https://github.com/socialiteproviders/providers"
|
||||
},
|
||||
"time": "2024-11-20T05:42:36+00:00"
|
||||
},
|
||||
{
|
||||
"name": "socialiteproviders/manager",
|
||||
"version": "v4.7.0",
|
||||
|
||||
@@ -19,6 +19,7 @@ class OauthSettingSeeder extends Seeder
|
||||
'gitlab',
|
||||
'google',
|
||||
'authentik',
|
||||
'infomaniak',
|
||||
]);
|
||||
|
||||
$isOauthSeeded = OauthSetting::count() > 0;
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "تسجيل الدخول باستخدام GitHub",
|
||||
"auth.login.gitlab": "تسجيل الدخول باستخدام Gitlab",
|
||||
"auth.login.google": "تسجيل الدخول باستخدام Google",
|
||||
"auth.login.infomaniak": "تسجيل الدخول باستخدام Infomaniak",
|
||||
"auth.already_registered": "هل سبق لك التسجيل؟",
|
||||
"auth.confirm_password": "تأكيد كلمة المرور",
|
||||
"auth.forgot_password": "نسيت كلمة المرور",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Přihlásit se pomocí GitHubu",
|
||||
"auth.login.gitlab": "Přihlásit se pomocí Gitlabu",
|
||||
"auth.login.google": "Přihlásit se pomocí Google",
|
||||
"auth.login.infomaniak": "Přihlásit se pomocí Infomaniak",
|
||||
"auth.already_registered": "Již jste registrováni?",
|
||||
"auth.confirm_password": "Potvrďte heslo",
|
||||
"auth.forgot_password": "Zapomněli jste heslo",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Mit GitHub anmelden",
|
||||
"auth.login.gitlab": "Mit GitLab anmelden",
|
||||
"auth.login.google": "Mit Google anmelden",
|
||||
"auth.login.infomaniak": "Mit Infomaniak anmelden",
|
||||
"auth.already_registered": "Bereits registriert?",
|
||||
"auth.confirm_password": "Passwort bestätigen",
|
||||
"auth.forgot_password": "Passwort vergessen",
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
"auth.login.github": "Login with GitHub",
|
||||
"auth.login.gitlab": "Login with Gitlab",
|
||||
"auth.login.google": "Login with Google",
|
||||
"auth.login.infomaniak": "Login with Infomaniak",
|
||||
"auth.already_registered": "Already registered?",
|
||||
"auth.confirm_password": "Confirm password",
|
||||
"auth.forgot_password": "Forgot password",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Acceder con GitHub",
|
||||
"auth.login.gitlab": "Acceder con Gitlab",
|
||||
"auth.login.google": "Acceder con Google",
|
||||
"auth.login.infomaniak": "Acceder con Infomaniak",
|
||||
"auth.already_registered": "¿Ya estás registrado?",
|
||||
"auth.confirm_password": "Confirmar contraseña",
|
||||
"auth.forgot_password": "¿Olvidaste tu contraseña?",
|
||||
@@ -27,4 +28,4 @@
|
||||
"input.recovery_code": "Código de recuperación",
|
||||
"button.save": "Guardar",
|
||||
"repository.url": "<span class='text-helper'>Examples</span><br>Para repositorios públicos, usar <span class='text-helper'>https://...</span>.<br>Para repositorios privados, usar <span class='text-helper'>git@...</span>.<br><br>https://github.com/coollabsio/coolify-examples <span class='text-helper'>main</span> la rama 'main' será seleccionada.<br>https://github.com/coollabsio/coolify-examples/tree/nodejs-fastify <span class='text-helper'>nodejs-fastify</span> la rama 'nodejs-fastify' será seleccionada.<br>https://gitea.com/sedlav/expressjs.git <span class='text-helper'>main</span> la rama 'main' será seleccionada.<br>https://gitlab.com/andrasbacsai/nodejs-example.git <span class='text-helper'>main</span> la rama 'main' será seleccionada."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "ورود با گیت هاب",
|
||||
"auth.login.gitlab": "ورود با گیت لب",
|
||||
"auth.login.google": "ورود با گوگل",
|
||||
"auth.login.infomaniak": "ورود با Infomaniak",
|
||||
"auth.already_registered": "قبلاً ثبت نام کردهاید؟",
|
||||
"auth.confirm_password": "تایید رمز عبور",
|
||||
"auth.forgot_password": "فراموشی رمز عبور",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Connexion avec GitHub",
|
||||
"auth.login.gitlab": "Connexion avec Gitlab",
|
||||
"auth.login.google": "Connexion avec Google",
|
||||
"auth.login.infomaniak": "Connexion avec Infomaniak",
|
||||
"auth.already_registered": "Déjà enregistré ?",
|
||||
"auth.confirm_password": "Confirmer le mot de passe",
|
||||
"auth.forgot_password": "Mot de passe oublié",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Accedi con GitHub",
|
||||
"auth.login.gitlab": "Accedi con Gitlab",
|
||||
"auth.login.google": "Accedi con Google",
|
||||
"auth.login.infomaniak": "Accedi con Infomaniak",
|
||||
"auth.already_registered": "Già registrato?",
|
||||
"auth.confirm_password": "Conferma password",
|
||||
"auth.forgot_password": "Password dimenticata",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "GitHubでログイン",
|
||||
"auth.login.gitlab": "Gitlabでログイン",
|
||||
"auth.login.google": "Googleでログイン",
|
||||
"auth.login.infomaniak": "Infomaniakでログイン",
|
||||
"auth.already_registered": "すでに登録済みですか?",
|
||||
"auth.confirm_password": "パスワードを確認",
|
||||
"auth.forgot_password": "パスワードを忘れた",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Entrar com GitHub",
|
||||
"auth.login.gitlab": "Entrar com Gitlab",
|
||||
"auth.login.google": "Entrar com Google",
|
||||
"auth.login.infomaniak": "Entrar com Infomaniak",
|
||||
"auth.already_registered": "Já tem uma conta?",
|
||||
"auth.confirm_password": "Confirmar senha",
|
||||
"auth.forgot_password": "Esqueceu a senha?",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Autentificare prin GitHub",
|
||||
"auth.login.gitlab": "Autentificare prin Gitlab",
|
||||
"auth.login.google": "Autentificare prin Google",
|
||||
"auth.login.infomaniak": "Autentificare prin Infomaniak",
|
||||
"auth.already_registered": "Sunteți deja înregistrat?",
|
||||
"auth.confirm_password": "Confirmați parola",
|
||||
"auth.forgot_password": "Ați uitat parola",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "GitHub ile Giriş Yap",
|
||||
"auth.login.gitlab": "GitLab ile Giriş Yap",
|
||||
"auth.login.google": "Google ile Giriş Yap",
|
||||
"auth.login.infomaniak": "Infomaniak ile Giriş Yap",
|
||||
"auth.already_registered": "Zaten kayıtlı mısınız?",
|
||||
"auth.confirm_password": "Şifreyi Onayla",
|
||||
"auth.forgot_password": "Şifremi Unuttum",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "Đăng Nhập Bằng GitHub",
|
||||
"auth.login.gitlab": "Đăng Nhập Bằng Gitlab",
|
||||
"auth.login.google": "Đăng Nhập Bằng Google",
|
||||
"auth.login.infomaniak": "Đăng Nhập Bằng Infomaniak",
|
||||
"auth.already_registered": "Đã đăng ký?",
|
||||
"auth.confirm_password": "Nhập lại mật khẩu",
|
||||
"auth.forgot_password": "Quên mật khẩu",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "使用 GitHub 登录",
|
||||
"auth.login.gitlab": "使用 Gitlab 登录",
|
||||
"auth.login.google": "使用 Google 登录",
|
||||
"auth.login.infomaniak": "使用 Infomaniak 登录",
|
||||
"auth.already_registered": "已经注册?",
|
||||
"auth.confirm_password": "确认密码",
|
||||
"auth.forgot_password": "忘记密码",
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
"auth.login.github": "使用 GitHub 登入",
|
||||
"auth.login.gitlab": "使用 Gitlab 登入",
|
||||
"auth.login.google": "使用 Google 登入",
|
||||
"auth.login.infomaniak": "使用 Infomaniak 登入",
|
||||
"auth.already_registered": "已經註冊?",
|
||||
"auth.confirm_password": "確認密碼",
|
||||
"auth.forgot_password": "忘記密碼",
|
||||
|
||||
@@ -258,6 +258,7 @@
|
||||
<input type="text" x-model="confirmationText"
|
||||
class="p-2 pr-10 w-full text-black rounded cursor-text input" readonly>
|
||||
<button @click="copyConfirmationText()"
|
||||
x-show="window.isSecureContext"
|
||||
class="absolute right-2 top-1/2 text-gray-500 transform -translate-y-1/2 hover:text-gray-700"
|
||||
title="Copy confirmation text" x-ref="copyButton">
|
||||
<template x-if="!copied">
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
class="font-mono pr-10"
|
||||
/>
|
||||
<button
|
||||
x-show="window.isSecureContext"
|
||||
@click="navigator.clipboard.writeText(secretKey); copiedSecretKey = true; setTimeout(() => copiedSecretKey = false, 2000)"
|
||||
class="absolute right-2 bottom-1 p-1 rounded hover:bg-gray-200 dark:hover:bg-gray-700"
|
||||
>
|
||||
@@ -78,6 +79,7 @@
|
||||
class="font-mono pr-10"
|
||||
/>
|
||||
<button
|
||||
x-show="window.isSecureContext"
|
||||
@click="navigator.clipboard.writeText(otpUrl); copiedOtpUrl = true; setTimeout(() => copiedOtpUrl = false, 2000)"
|
||||
class="absolute right-2 bottom-1 p-1 rounded hover:bg-gray-200 dark:hover:bg-gray-700"
|
||||
>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
# port: 5000
|
||||
|
||||
services:
|
||||
radarr:
|
||||
fileflows:
|
||||
image: revenz/fileflows
|
||||
environment:
|
||||
- SERVICE_FQDN_FILEFLOWS_5000
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# ignore: true
|
||||
# documentation: https://docs.twenty.com
|
||||
# slogan: Twenty is a CRM designed to fit your unique business needs.
|
||||
# tags: crm, self-hosted, dashboard
|
||||
|
||||
@@ -743,7 +743,7 @@
|
||||
"fileflows": {
|
||||
"documentation": "https://fileflows.com/docs/?utm_source=coolify.io",
|
||||
"slogan": "FileFlows can drastically reduce your files, up to 90%, saving you space and money. No need to buy more hard drives, just shrink your files and start saving.",
|
||||
"compose": "c2VydmljZXM6CiAgcmFkYXJyOgogICAgaW1hZ2U6IHJldmVuei9maWxlZmxvd3MKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9GSUxFRkxPV1NfNTAwMAogICAgICAtIF9BUFBfVVJMPSRTRVJWSUNFX0ZRRE5fRklMRV9GTE9XUwogICAgICAtIFBVSUQ9MTAwMAogICAgICAtIFBHSUQ9MTAwMAogICAgICAtICdUWj0ke1RaOi1BbWVyaWNhL1Rvcm9udG99JwogICAgdm9sdW1lczoKICAgICAgLSAnZmlsZWZsb3dzX3RlbXA6L3RlbXAnCiAgICAgIC0gJ2ZpbGVmbG93c19jb25maWdzOi9hcHAvRGF0YScKICAgICAgLSAnZmlsZWZsb3dzX2xvZ3M6L2FwcC9Mb2dzJwogICAgICAtICdmaWxlZmxvd3NfY29tbW9uOi9hcHAvY29tbW9uJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3N5c3RlbS92ZXJzaW9uJwogICAgICBpbnRlcnZhbDogMnMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1Cg==",
|
||||
"compose": "c2VydmljZXM6CiAgZmlsZWZsb3dzOgogICAgaW1hZ2U6IHJldmVuei9maWxlZmxvd3MKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9GSUxFRkxPV1NfNTAwMAogICAgICAtIF9BUFBfVVJMPSRTRVJWSUNFX0ZRRE5fRklMRV9GTE9XUwogICAgICAtIFBVSUQ9MTAwMAogICAgICAtIFBHSUQ9MTAwMAogICAgICAtICdUWj0ke1RaOi1BbWVyaWNhL1Rvcm9udG99JwogICAgdm9sdW1lczoKICAgICAgLSAnZmlsZWZsb3dzX3RlbXA6L3RlbXAnCiAgICAgIC0gJ2ZpbGVmbG93c19jb25maWdzOi9hcHAvRGF0YScKICAgICAgLSAnZmlsZWZsb3dzX2xvZ3M6L2FwcC9Mb2dzJwogICAgICAtICdmaWxlZmxvd3NfY29tbW9uOi9hcHAvY29tbW9uJwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vbG9jYWxob3N0OjUwMDAvYXBpL3N5c3RlbS92ZXJzaW9uJwogICAgICBpbnRlcnZhbDogMnMKICAgICAgdGltZW91dDogMTBzCiAgICAgIHJldHJpZXM6IDE1Cg==",
|
||||
"tags": [
|
||||
"media",
|
||||
"transcode",
|
||||
@@ -2803,19 +2803,6 @@
|
||||
"minversion": "0.0.0",
|
||||
"port": "3000"
|
||||
},
|
||||
"twenty": {
|
||||
"documentation": "https://docs.twenty.com?utm_source=coolify.io",
|
||||
"slogan": "Twenty is a CRM designed to fit your unique business needs.",
|
||||
"compose": "c2VydmljZXM6CiAgdHdlbnR5OgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5OmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9UV0VOVFlfMzAwMAogICAgICAtIFNFUlZFUl9VUkw9JFNFUlZJQ0VfRlFETl9UV0VOVFkKICAgICAgLSBGUk9OVF9CQVNFX1VSTD0kU0VSVklDRV9GUUROX1RXRU5UWQogICAgICAtIEVOQUJMRV9EQl9NSUdSQVRJT05TPXRydWUKICAgICAgLSAnQ0FDSEVfU1RPUkFHRV9UWVBFPSR7Q0FDSEVfU1RPUkFHRV9UWVBFOi1yZWRpc30nCiAgICAgIC0gJ1JFRElTX1VSTD1yZWRpczovL3JlZGlzOjYzNzknCiAgICAgIC0gJ0FQSV9SQVRFX0xJTUlUSU5HX1RUTD0ke0FQSV9SQVRFX0xJTUlUSU5HX1RUTDotMTAwfScKICAgICAgLSAnQVBJX1JBVEVfTElNSVRJTkdfTElNSVQ9JHtBUElfUkFURV9MSU1JVElOR19MSU1JVDotMTAwfScKICAgICAgLSBBUFBfU0VDUkVUPSRTRVJWSUNFX0JBU0U2NF8zMl9TRUNSRVQKICAgICAgLSBQT1NUR1JFU19BRE1JTl9QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtICdQR19EQVRBQkFTRV9VUkw9cG9zdGdyZXM6Ly9wb3N0Z3JlczokU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFU0Bwb3N0Z3Jlczo1NDMyL2RlZmF1bHQnCiAgICAgIC0gJ0lTX1NJR05fVVBfRElTQUJMRUQ9JHtJU19TSUdOX1VQX0RJU0FCTEVEOi1mYWxzZX0nCiAgICAgIC0gJ1BBU1NXT1JEX1JFU0VUX1RPS0VOX0VYUElSRVNfSU49JHtQQVNTV09SRF9SRVNFVF9UT0tFTl9FWFBJUkVTX0lOOi01bX0nCiAgICAgIC0gV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX05PVElGSUNBVElPTgogICAgICAtIFdPUktTUEFDRV9JTkFDVElWRV9EQVlTX0JFRk9SRV9ERUxFVElPTj0kV09SS1NQQUNFX0lOQUNUSVZFX0RBWVNfQkVGT1JFX0RFTEVUSU9OCiAgICAgIC0gJ1NUT1JBR0VfVFlQRT0ke1NUT1JBR0VfVFlQRTotbG9jYWx9JwogICAgICAtIFNUT1JBR0VfUzNfUkVHSU9OPSRTVE9SQUdFX1MzX1JFR0lPTgogICAgICAtIFNUT1JBR0VfUzNfTkFNRT0kU1RPUkFHRV9TM19OQU1FCiAgICAgIC0gU1RPUkFHRV9TM19FTkRQT0lOVD0kU1RPUkFHRV9TM19FTkRQT0lOVAogICAgICAtIFNUT1JBR0VfUzNfQUNDRVNTX0tFWV9JRD0kU1RPUkFHRV9TM19BQ0NFU1NfS0VZX0lECiAgICAgIC0gU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWT0kU1RPUkFHRV9TM19TRUNSRVRfQUNDRVNTX0tFWQogICAgICAtICdNRVNTQUdFX1FVRVVFX1RZUEU9JHtNRVNTQUdFX1FVRVVFX1RZUEU6LXBnLWJvc3N9JwogICAgICAtIEVNQUlMX0ZST01fQUREUkVTUz0kRU1BSUxfRlJPTV9BRERSRVNTCiAgICAgIC0gRU1BSUxfRlJPTV9OQU1FPSRFTUFJTF9GUk9NX05BTUUKICAgICAgLSBFTUFJTF9TWVNURU1fQUREUkVTUz0kRU1BSUxfU1lTVEVNX0FERFJFU1MKICAgICAgLSAnRU1BSUxfRFJJVkVSPSR7RU1BSUxfRFJJVkVSOi1sb2dnZXJ9JwogICAgICAtIEVNQUlMX1NNVFBfSE9TVD0kRU1BSUxfU01UUF9IT1NUCiAgICAgIC0gRU1BSUxfU01UUF9QT1JUPSRFTUFJTF9TTVRQX1BPUlQKICAgICAgLSBFTUFJTF9TTVRQX1VTRVI9JEVNQUlMX1NNVFBfVVNFUgogICAgICAtIEVNQUlMX1NNVFBfUEFTU1dPUkQ9JEVNQUlMX1NNVFBfUEFTU1dPUkQKICAgICAgLSBTSUdOX0lOX1BSRUZJTExFRD1mYWxzZQogICAgICAtICdERUJVR19NT0RFPSR7REVCVUdfTU9ERTotZmFsc2V9JwogICAgICAtICdURUxFTUVUUllfRU5BQkxFRD0ke1RFTEVNRVRSWV9FTkFCTEVEOi1mYWxzZX0nCiAgICBkZXBlbmRzX29uOgogICAgICBwb3N0Z3JlczoKICAgICAgICBjb25kaXRpb246IHNlcnZpY2VfaGVhbHRoeQogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQKICAgICAgICAtIGN1cmwKICAgICAgICAtICctZicKICAgICAgICAtICdodHRwOi8vMTI3LjAuMC4xOjMwMDAvaGVhbHRoeicKICAgICAgaW50ZXJ2YWw6IDJzCiAgICAgIHRpbWVvdXQ6IDEwcwogICAgICByZXRyaWVzOiAxNQogIHBvc3RncmVzOgogICAgaW1hZ2U6ICd0d2VudHljcm0vdHdlbnR5LXBvc3RncmVzOmxhdGVzdCcKICAgIGVudmlyb25tZW50OgogICAgICAtIFBPU1RHUkVTX1VTRVI9cG9zdGdyZXMKICAgICAgLSBQT1NUR1JFU19QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtIFBPU1RHUkVTX0RCPWRlZmF1bHQKICAgIHZvbHVtZXM6CiAgICAgIC0gJ3BnLWRhdGE6L2JpdG5hbWkvcG9zdGdyZXNxbCcKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAncGdfaXNyZWFkeSAtVSAkJHtQT1NUR1JFU19VU0VSfSAtZCAkJHtQT1NUR1JFU19EQn0nCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiAyMHMKICAgICAgcmV0cmllczogMTAKICByZWRpczoKICAgIGltYWdlOiAncmVkaXM6bGF0ZXN0JwogICAgdm9sdW1lczoKICAgICAgLSAncmVkaXMtZGF0YTovZGF0YScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ECiAgICAgICAgLSByZWRpcy1jbGkKICAgICAgICAtIHBpbmcKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=",
|
||||
"tags": [
|
||||
"crm",
|
||||
"self-hosted",
|
||||
"dashboard"
|
||||
],
|
||||
"logo": "svgs/twenty.svg",
|
||||
"minversion": "0.0.0",
|
||||
"port": "3000"
|
||||
},
|
||||
"umami": {
|
||||
"documentation": "https://umami.is?utm_source=coolify.io",
|
||||
"slogan": "Umami is web analytics platform which provides insights into visitor behavior without compromising user privacy.",
|
||||
|
||||
Reference in New Issue
Block a user