diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..5122bf2 --- /dev/null +++ b/.env.example @@ -0,0 +1,2 @@ +AUTH_COMMAND=sh ./resources/scripts/entrypoint.sh +JWT_KEY=key \ No newline at end of file diff --git a/auth/.flake8 b/.flake8 similarity index 100% rename from auth/.flake8 rename to .flake8 diff --git a/auth/README.MD b/README.MD similarity index 100% rename from auth/README.MD rename to README.MD diff --git a/auth/core/apps/accounts/urls.py b/auth/core/apps/accounts/urls.py deleted file mode 100644 index bc57560..0000000 --- a/auth/core/apps/accounts/urls.py +++ /dev/null @@ -1,26 +0,0 @@ -""" -Accounts app urls -""" - -from django.urls import path, include -from rest_framework_simplejwt import views as jwt_views -from .views import RegisterView, ResetPasswordView, MeView, ChangePasswordView -from rest_framework.routers import DefaultRouter - -router = DefaultRouter() -router.register("auth", RegisterView, basename="auth") -router.register("auth", ResetPasswordView, basename="reset-password") -router.register("auth", MeView, basename="me") -router.register("auth", ChangePasswordView, basename="change-password") - - -urlpatterns = [ - path("", include(router.urls)), - path("auth/token/", jwt_views.TokenObtainPairView.as_view(), name="token_obtain_pair"), - path("auth/token/verify/", jwt_views.TokenVerifyView.as_view(), name="token_verify"), - path( - "auth/token/refresh/", - jwt_views.TokenRefreshView.as_view(), - name="token_refresh", - ), -] diff --git a/docker-compose.yml b/docker-compose.yml index e28c9af..076b5b0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,16 +7,35 @@ volumes: pycache: null services: - auth-nginx: + traefik: + image: traefik:v2.10 + command: + - "--api.insecure=true" + - "--providers.docker=true" + - "--entrypoints.web.address=:80" + - "--providers.docker.exposedbydefault=false" + ports: + - "80:80" + - "8080:8080" # Dashboard uchun + volumes: + - "/var/run/docker.sock:/var/run/docker.sock:ro" + networks: + - lamenu + auth-nginx: + labels: + - "traefik.enable=true" + - "traefik.http.routers.auth.rule=PathPrefix(`/auth`)" + - "traefik.http.routers.auth.entrypoints=web" + - "traefik.http.services.auth.loadbalancer.server.port=80" + - "traefik.http.middlewares.auth-strip-prefix.stripPrefix.prefixes=/auth" + - "traefik.http.routers.auth.middlewares=auth-strip-prefix" networks: - lamenu - ports: - - ${PORT:-8001}:80 volumes: - - ./auth/resources/layout/nginx.conf:/etc/nginx/nginx.conf - - ./auth/resources/:/usr/share/nginx/html/resources/ + - ./services/auth/resources/layout/nginx.conf:/etc/nginx/nginx.conf + - ./services/auth/resources/:/usr/share/nginx/html/resources/ build: - context: ./auth + context: ./services/auth dockerfile: ./docker/Dockerfile.nginx depends_on: - auth @@ -24,14 +43,15 @@ services: networks: - lamenu build: - context: ./auth + context: ./services/auth dockerfile: ./docker/Dockerfile.web restart: always command: ${AUTH_COMMAND:-sh ./resources/scripts/entrypoint.sh} environment: - PYTHONPYCACHEPREFIX=/var/cache/pycache + - JWT_KEY=${JWT_KEY} volumes: - - ./auth:/code + - ./services/auth:/code - pycache:/var/cache/pycache depends_on: - auth-db @@ -51,4 +71,4 @@ services: networks: - lamenu restart: always - image: redis \ No newline at end of file + image: redis diff --git a/auth/.cruft.json b/services/auth/.cruft.json similarity index 100% rename from auth/.cruft.json rename to services/auth/.cruft.json diff --git a/auth/.dockerignore b/services/auth/.dockerignore similarity index 100% rename from auth/.dockerignore rename to services/auth/.dockerignore diff --git a/auth/.env.example b/services/auth/.env.example similarity index 100% rename from auth/.env.example rename to services/auth/.env.example diff --git a/services/auth/.flake8 b/services/auth/.flake8 new file mode 100644 index 0000000..95f57f4 --- /dev/null +++ b/services/auth/.flake8 @@ -0,0 +1,3 @@ +[flake8] +max-line-length = 120 +ignore = E701, E704, W503 diff --git a/auth/.gitignore b/services/auth/.gitignore similarity index 100% rename from auth/.gitignore rename to services/auth/.gitignore diff --git a/services/auth/README.MD b/services/auth/README.MD new file mode 100644 index 0000000..153f280 --- /dev/null +++ b/services/auth/README.MD @@ -0,0 +1,2 @@ +# JST-DJANGO +[Docs](https://docs.jscorp.uz) diff --git a/auth/config/__init__.py b/services/auth/config/__init__.py similarity index 100% rename from auth/config/__init__.py rename to services/auth/config/__init__.py diff --git a/auth/config/asgi.py b/services/auth/config/asgi.py similarity index 100% rename from auth/config/asgi.py rename to services/auth/config/asgi.py diff --git a/auth/config/celery.py b/services/auth/config/celery.py similarity index 100% rename from auth/config/celery.py rename to services/auth/config/celery.py diff --git a/auth/config/conf/__init__.py b/services/auth/config/conf/__init__.py similarity index 100% rename from auth/config/conf/__init__.py rename to services/auth/config/conf/__init__.py diff --git a/auth/config/conf/apps.py b/services/auth/config/conf/apps.py similarity index 100% rename from auth/config/conf/apps.py rename to services/auth/config/conf/apps.py diff --git a/auth/config/conf/cache.py b/services/auth/config/conf/cache.py similarity index 100% rename from auth/config/conf/cache.py rename to services/auth/config/conf/cache.py diff --git a/auth/config/conf/celery.py b/services/auth/config/conf/celery.py similarity index 100% rename from auth/config/conf/celery.py rename to services/auth/config/conf/celery.py diff --git a/auth/config/conf/channels.py b/services/auth/config/conf/channels.py similarity index 100% rename from auth/config/conf/channels.py rename to services/auth/config/conf/channels.py diff --git a/auth/config/conf/ckeditor.py b/services/auth/config/conf/ckeditor.py similarity index 100% rename from auth/config/conf/ckeditor.py rename to services/auth/config/conf/ckeditor.py diff --git a/auth/config/conf/cron.py b/services/auth/config/conf/cron.py similarity index 100% rename from auth/config/conf/cron.py rename to services/auth/config/conf/cron.py diff --git a/auth/config/conf/jwt.py b/services/auth/config/conf/jwt.py similarity index 95% rename from auth/config/conf/jwt.py rename to services/auth/config/conf/jwt.py index 15d8970..1cf938d 100644 --- a/auth/config/conf/jwt.py +++ b/services/auth/config/conf/jwt.py @@ -9,7 +9,7 @@ SIMPLE_JWT = { "BLACKLIST_AFTER_ROTATION": False, "UPDATE_LAST_LOGIN": False, "ALGORITHM": "HS256", - "SIGNING_KEY": env("DJANGO_SECRET_KEY"), + "SIGNING_KEY": env("JWT_KEY"), "VERIFYING_KEY": "", "AUDIENCE": None, "ISSUER": None, diff --git a/auth/config/conf/logs.py b/services/auth/config/conf/logs.py similarity index 100% rename from auth/config/conf/logs.py rename to services/auth/config/conf/logs.py diff --git a/auth/config/conf/modules.py b/services/auth/config/conf/modules.py similarity index 100% rename from auth/config/conf/modules.py rename to services/auth/config/conf/modules.py diff --git a/auth/config/conf/navigation.py b/services/auth/config/conf/navigation.py similarity index 100% rename from auth/config/conf/navigation.py rename to services/auth/config/conf/navigation.py diff --git a/auth/config/conf/rest_framework.py b/services/auth/config/conf/rest_framework.py similarity index 100% rename from auth/config/conf/rest_framework.py rename to services/auth/config/conf/rest_framework.py diff --git a/auth/config/conf/spectacular.py b/services/auth/config/conf/spectacular.py similarity index 100% rename from auth/config/conf/spectacular.py rename to services/auth/config/conf/spectacular.py diff --git a/auth/config/conf/storage.py b/services/auth/config/conf/storage.py similarity index 100% rename from auth/config/conf/storage.py rename to services/auth/config/conf/storage.py diff --git a/auth/config/conf/unfold.py b/services/auth/config/conf/unfold.py similarity index 100% rename from auth/config/conf/unfold.py rename to services/auth/config/conf/unfold.py diff --git a/auth/config/env.py b/services/auth/config/env.py similarity index 100% rename from auth/config/env.py rename to services/auth/config/env.py diff --git a/auth/config/settings/__init__.py b/services/auth/config/settings/__init__.py similarity index 100% rename from auth/config/settings/__init__.py rename to services/auth/config/settings/__init__.py diff --git a/auth/config/settings/common.py b/services/auth/config/settings/common.py similarity index 94% rename from auth/config/settings/common.py rename to services/auth/config/settings/common.py index 7c1b661..d8e0d89 100644 --- a/auth/config/settings/common.py +++ b/services/auth/config/settings/common.py @@ -109,7 +109,7 @@ AUTH_PASSWORD_VALIDATORS = [ TIME_ZONE = "Asia/Tashkent" USE_I18N = True USE_TZ = True -STATIC_URL = "resources/static/" +STATIC_URL = "/auth/resources/static/" DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" # Date formats @@ -140,7 +140,7 @@ LOCALE_PATHS = [os.path.join(BASE_DIR, "resources/locale")] LANGUAGE_CODE = "uz" MEDIA_ROOT = os.path.join(BASE_DIR, "resources/media") # Media files -MEDIA_URL = "/resources/media/" +MEDIA_URL = "/auth/resources/media/" AUTH_USER_MODEL = "accounts.User" @@ -152,9 +152,6 @@ CSRF_TRUSTED_ORIGINS = env("CSRF_TRUSTED_ORIGINS").split(",") SILKY_AUTHORISATION = True SILKY_PYTHON_PROFILER = True - - - JST_LANGUAGES = [ { "code": "uz", diff --git a/auth/config/settings/local.py b/services/auth/config/settings/local.py similarity index 100% rename from auth/config/settings/local.py rename to services/auth/config/settings/local.py diff --git a/auth/config/settings/production.py b/services/auth/config/settings/production.py similarity index 100% rename from auth/config/settings/production.py rename to services/auth/config/settings/production.py diff --git a/auth/config/urls.py b/services/auth/config/urls.py similarity index 100% rename from auth/config/urls.py rename to services/auth/config/urls.py diff --git a/auth/config/wsgi.py b/services/auth/config/wsgi.py similarity index 100% rename from auth/config/wsgi.py rename to services/auth/config/wsgi.py diff --git a/auth/core/__init__.py b/services/auth/core/__init__.py similarity index 100% rename from auth/core/__init__.py rename to services/auth/core/__init__.py diff --git a/auth/core/apps/__init__.py b/services/auth/core/apps/__init__.py similarity index 100% rename from auth/core/apps/__init__.py rename to services/auth/core/apps/__init__.py diff --git a/auth/core/apps/accounts/__init__.py b/services/auth/core/apps/accounts/__init__.py similarity index 100% rename from auth/core/apps/accounts/__init__.py rename to services/auth/core/apps/accounts/__init__.py diff --git a/auth/core/apps/accounts/admin/__init__.py b/services/auth/core/apps/accounts/admin/__init__.py similarity index 100% rename from auth/core/apps/accounts/admin/__init__.py rename to services/auth/core/apps/accounts/admin/__init__.py diff --git a/auth/core/apps/accounts/admin/core.py b/services/auth/core/apps/accounts/admin/core.py similarity index 100% rename from auth/core/apps/accounts/admin/core.py rename to services/auth/core/apps/accounts/admin/core.py diff --git a/auth/core/apps/accounts/admin/user.py b/services/auth/core/apps/accounts/admin/user.py similarity index 100% rename from auth/core/apps/accounts/admin/user.py rename to services/auth/core/apps/accounts/admin/user.py diff --git a/auth/core/apps/accounts/apps.py b/services/auth/core/apps/accounts/apps.py similarity index 100% rename from auth/core/apps/accounts/apps.py rename to services/auth/core/apps/accounts/apps.py diff --git a/auth/core/apps/accounts/choices/__init__.py b/services/auth/core/apps/accounts/choices/__init__.py similarity index 100% rename from auth/core/apps/accounts/choices/__init__.py rename to services/auth/core/apps/accounts/choices/__init__.py diff --git a/auth/core/apps/accounts/choices/user.py b/services/auth/core/apps/accounts/choices/user.py similarity index 100% rename from auth/core/apps/accounts/choices/user.py rename to services/auth/core/apps/accounts/choices/user.py diff --git a/auth/core/apps/accounts/managers/__init__.py b/services/auth/core/apps/accounts/managers/__init__.py similarity index 100% rename from auth/core/apps/accounts/managers/__init__.py rename to services/auth/core/apps/accounts/managers/__init__.py diff --git a/auth/core/apps/accounts/managers/user.py b/services/auth/core/apps/accounts/managers/user.py similarity index 100% rename from auth/core/apps/accounts/managers/user.py rename to services/auth/core/apps/accounts/managers/user.py diff --git a/auth/core/apps/accounts/migrations/0001_initial.py b/services/auth/core/apps/accounts/migrations/0001_initial.py similarity index 100% rename from auth/core/apps/accounts/migrations/0001_initial.py rename to services/auth/core/apps/accounts/migrations/0001_initial.py diff --git a/auth/core/apps/accounts/migrations/__init__.py b/services/auth/core/apps/accounts/migrations/__init__.py similarity index 100% rename from auth/core/apps/accounts/migrations/__init__.py rename to services/auth/core/apps/accounts/migrations/__init__.py diff --git a/auth/core/apps/accounts/models/__init__.py b/services/auth/core/apps/accounts/models/__init__.py similarity index 100% rename from auth/core/apps/accounts/models/__init__.py rename to services/auth/core/apps/accounts/models/__init__.py diff --git a/auth/core/apps/accounts/models/reset_token.py b/services/auth/core/apps/accounts/models/reset_token.py similarity index 100% rename from auth/core/apps/accounts/models/reset_token.py rename to services/auth/core/apps/accounts/models/reset_token.py diff --git a/auth/core/apps/accounts/models/user.py b/services/auth/core/apps/accounts/models/user.py similarity index 100% rename from auth/core/apps/accounts/models/user.py rename to services/auth/core/apps/accounts/models/user.py diff --git a/auth/core/apps/accounts/seeder/__init__.py b/services/auth/core/apps/accounts/seeder/__init__.py similarity index 100% rename from auth/core/apps/accounts/seeder/__init__.py rename to services/auth/core/apps/accounts/seeder/__init__.py diff --git a/auth/core/apps/accounts/seeder/core.py b/services/auth/core/apps/accounts/seeder/core.py similarity index 100% rename from auth/core/apps/accounts/seeder/core.py rename to services/auth/core/apps/accounts/seeder/core.py diff --git a/auth/core/apps/accounts/serializers/__init__.py b/services/auth/core/apps/accounts/serializers/__init__.py similarity index 100% rename from auth/core/apps/accounts/serializers/__init__.py rename to services/auth/core/apps/accounts/serializers/__init__.py diff --git a/auth/core/apps/accounts/serializers/auth.py b/services/auth/core/apps/accounts/serializers/auth.py similarity index 100% rename from auth/core/apps/accounts/serializers/auth.py rename to services/auth/core/apps/accounts/serializers/auth.py diff --git a/auth/core/apps/accounts/serializers/change_password.py b/services/auth/core/apps/accounts/serializers/change_password.py similarity index 100% rename from auth/core/apps/accounts/serializers/change_password.py rename to services/auth/core/apps/accounts/serializers/change_password.py diff --git a/auth/core/apps/accounts/serializers/set_password.py b/services/auth/core/apps/accounts/serializers/set_password.py similarity index 100% rename from auth/core/apps/accounts/serializers/set_password.py rename to services/auth/core/apps/accounts/serializers/set_password.py diff --git a/auth/core/apps/accounts/serializers/user.py b/services/auth/core/apps/accounts/serializers/user.py similarity index 100% rename from auth/core/apps/accounts/serializers/user.py rename to services/auth/core/apps/accounts/serializers/user.py diff --git a/auth/core/apps/accounts/signals/__init__.py b/services/auth/core/apps/accounts/signals/__init__.py similarity index 100% rename from auth/core/apps/accounts/signals/__init__.py rename to services/auth/core/apps/accounts/signals/__init__.py diff --git a/auth/core/apps/accounts/signals/user.py b/services/auth/core/apps/accounts/signals/user.py similarity index 100% rename from auth/core/apps/accounts/signals/user.py rename to services/auth/core/apps/accounts/signals/user.py diff --git a/auth/core/apps/accounts/test/__init__.py b/services/auth/core/apps/accounts/test/__init__.py similarity index 100% rename from auth/core/apps/accounts/test/__init__.py rename to services/auth/core/apps/accounts/test/__init__.py diff --git a/auth/core/apps/accounts/test/test_auth.py b/services/auth/core/apps/accounts/test/test_auth.py similarity index 100% rename from auth/core/apps/accounts/test/test_auth.py rename to services/auth/core/apps/accounts/test/test_auth.py diff --git a/auth/core/apps/accounts/test/test_change_password.py b/services/auth/core/apps/accounts/test/test_change_password.py similarity index 100% rename from auth/core/apps/accounts/test/test_change_password.py rename to services/auth/core/apps/accounts/test/test_change_password.py diff --git a/services/auth/core/apps/accounts/urls.py b/services/auth/core/apps/accounts/urls.py new file mode 100644 index 0000000..14de69f --- /dev/null +++ b/services/auth/core/apps/accounts/urls.py @@ -0,0 +1,26 @@ +""" +Accounts app urls +""" + +from django.urls import path, include +from rest_framework_simplejwt import views as jwt_views +from .views import RegisterView, ResetPasswordView, MeView, ChangePasswordView +from rest_framework.routers import DefaultRouter + +router = DefaultRouter() +router.register("", RegisterView, basename="auth") +router.register("", ResetPasswordView, basename="reset-password") +router.register("", MeView, basename="me") +router.register("", ChangePasswordView, basename="change-password") + + +urlpatterns = [ + path("", include(router.urls)), + path("token/", jwt_views.TokenObtainPairView.as_view(), name="token_obtain_pair"), + path("token/verify/", jwt_views.TokenVerifyView.as_view(), name="token_verify"), + path( + "token/refresh/", + jwt_views.TokenRefreshView.as_view(), + name="token_refresh", + ), +] diff --git a/auth/core/apps/accounts/views/__init__.py b/services/auth/core/apps/accounts/views/__init__.py similarity index 100% rename from auth/core/apps/accounts/views/__init__.py rename to services/auth/core/apps/accounts/views/__init__.py diff --git a/auth/core/apps/accounts/views/auth.py b/services/auth/core/apps/accounts/views/auth.py similarity index 100% rename from auth/core/apps/accounts/views/auth.py rename to services/auth/core/apps/accounts/views/auth.py diff --git a/auth/core/apps/logs/.gitignore b/services/auth/core/apps/logs/.gitignore similarity index 100% rename from auth/core/apps/logs/.gitignore rename to services/auth/core/apps/logs/.gitignore diff --git a/auth/core/services/__init__.py b/services/auth/core/services/__init__.py similarity index 100% rename from auth/core/services/__init__.py rename to services/auth/core/services/__init__.py diff --git a/auth/core/services/otp.py b/services/auth/core/services/otp.py similarity index 100% rename from auth/core/services/otp.py rename to services/auth/core/services/otp.py diff --git a/auth/core/services/sms.py b/services/auth/core/services/sms.py similarity index 100% rename from auth/core/services/sms.py rename to services/auth/core/services/sms.py diff --git a/auth/core/services/user.py b/services/auth/core/services/user.py similarity index 100% rename from auth/core/services/user.py rename to services/auth/core/services/user.py diff --git a/auth/core/utils/__init__.py b/services/auth/core/utils/__init__.py similarity index 100% rename from auth/core/utils/__init__.py rename to services/auth/core/utils/__init__.py diff --git a/auth/core/utils/cache.py b/services/auth/core/utils/cache.py similarity index 100% rename from auth/core/utils/cache.py rename to services/auth/core/utils/cache.py diff --git a/auth/core/utils/console.py b/services/auth/core/utils/console.py similarity index 100% rename from auth/core/utils/console.py rename to services/auth/core/utils/console.py diff --git a/auth/core/utils/core.py b/services/auth/core/utils/core.py similarity index 100% rename from auth/core/utils/core.py rename to services/auth/core/utils/core.py diff --git a/auth/core/utils/storage.py b/services/auth/core/utils/storage.py similarity index 100% rename from auth/core/utils/storage.py rename to services/auth/core/utils/storage.py diff --git a/auth/docker-compose.yml b/services/auth/docker-compose.yml similarity index 100% rename from auth/docker-compose.yml rename to services/auth/docker-compose.yml diff --git a/auth/docker/Dockerfile.nginx b/services/auth/docker/Dockerfile.nginx similarity index 100% rename from auth/docker/Dockerfile.nginx rename to services/auth/docker/Dockerfile.nginx diff --git a/auth/docker/Dockerfile.web b/services/auth/docker/Dockerfile.web similarity index 100% rename from auth/docker/Dockerfile.web rename to services/auth/docker/Dockerfile.web diff --git a/auth/jst.json b/services/auth/jst.json similarity index 100% rename from auth/jst.json rename to services/auth/jst.json diff --git a/auth/manage.py b/services/auth/manage.py similarity index 100% rename from auth/manage.py rename to services/auth/manage.py diff --git a/auth/pyproject.toml b/services/auth/pyproject.toml similarity index 100% rename from auth/pyproject.toml rename to services/auth/pyproject.toml diff --git a/auth/requirements.txt b/services/auth/requirements.txt similarity index 100% rename from auth/requirements.txt rename to services/auth/requirements.txt diff --git a/auth/resources/.gitignore b/services/auth/resources/.gitignore similarity index 100% rename from auth/resources/.gitignore rename to services/auth/resources/.gitignore diff --git a/auth/resources/layout/.flake8 b/services/auth/resources/layout/.flake8 similarity index 100% rename from auth/resources/layout/.flake8 rename to services/auth/resources/layout/.flake8 diff --git a/auth/resources/layout/Dockerfile.alpine b/services/auth/resources/layout/Dockerfile.alpine similarity index 100% rename from auth/resources/layout/Dockerfile.alpine rename to services/auth/resources/layout/Dockerfile.alpine diff --git a/auth/resources/layout/Dockerfile.nginx b/services/auth/resources/layout/Dockerfile.nginx similarity index 100% rename from auth/resources/layout/Dockerfile.nginx rename to services/auth/resources/layout/Dockerfile.nginx diff --git a/auth/resources/layout/mypy.ini b/services/auth/resources/layout/mypy.ini similarity index 100% rename from auth/resources/layout/mypy.ini rename to services/auth/resources/layout/mypy.ini diff --git a/auth/resources/layout/nginx.conf b/services/auth/resources/layout/nginx.conf similarity index 92% rename from auth/resources/layout/nginx.conf rename to services/auth/resources/layout/nginx.conf index e86631b..12ffb9d 100644 --- a/auth/resources/layout/nginx.conf +++ b/services/auth/resources/layout/nginx.conf @@ -29,14 +29,14 @@ http { server_name _; location / { - proxy_pass http://web:8000; + proxy_pass http://auth:8000; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header Host $http_host; } location /ws/ { - proxy_pass http://web:8000; # Uvicorn serveri ishga tushadigan port + proxy_pass http://auth:8000; # Uvicorn serveri ishga tushadigan port proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; diff --git a/auth/resources/locale/.gitkeep b/services/auth/resources/locale/.gitkeep similarity index 100% rename from auth/resources/locale/.gitkeep rename to services/auth/resources/locale/.gitkeep diff --git a/auth/resources/locale/en/LC_MESSAGES/django.po b/services/auth/resources/locale/en/LC_MESSAGES/django.po similarity index 100% rename from auth/resources/locale/en/LC_MESSAGES/django.po rename to services/auth/resources/locale/en/LC_MESSAGES/django.po diff --git a/auth/resources/locale/ru/LC_MESSAGES/django.po b/services/auth/resources/locale/ru/LC_MESSAGES/django.po similarity index 100% rename from auth/resources/locale/ru/LC_MESSAGES/django.po rename to services/auth/resources/locale/ru/LC_MESSAGES/django.po diff --git a/auth/resources/locale/uz/LC_MESSAGES/django.po b/services/auth/resources/locale/uz/LC_MESSAGES/django.po similarity index 100% rename from auth/resources/locale/uz/LC_MESSAGES/django.po rename to services/auth/resources/locale/uz/LC_MESSAGES/django.po diff --git a/auth/resources/logs/.gitignore b/services/auth/resources/logs/.gitignore similarity index 100% rename from auth/resources/logs/.gitignore rename to services/auth/resources/logs/.gitignore diff --git a/auth/resources/media/.gitignore b/services/auth/resources/media/.gitignore similarity index 100% rename from auth/resources/media/.gitignore rename to services/auth/resources/media/.gitignore diff --git a/auth/resources/scripts/backup.sh b/services/auth/resources/scripts/backup.sh similarity index 100% rename from auth/resources/scripts/backup.sh rename to services/auth/resources/scripts/backup.sh diff --git a/auth/resources/scripts/entrypoint-server.sh b/services/auth/resources/scripts/entrypoint-server.sh similarity index 100% rename from auth/resources/scripts/entrypoint-server.sh rename to services/auth/resources/scripts/entrypoint-server.sh diff --git a/auth/resources/scripts/entrypoint.sh b/services/auth/resources/scripts/entrypoint.sh similarity index 100% rename from auth/resources/scripts/entrypoint.sh rename to services/auth/resources/scripts/entrypoint.sh diff --git a/auth/resources/static/css/app.css b/services/auth/resources/static/css/app.css similarity index 100% rename from auth/resources/static/css/app.css rename to services/auth/resources/static/css/app.css diff --git a/auth/resources/static/css/error.css b/services/auth/resources/static/css/error.css similarity index 100% rename from auth/resources/static/css/error.css rename to services/auth/resources/static/css/error.css diff --git a/auth/resources/static/css/input.css b/services/auth/resources/static/css/input.css similarity index 100% rename from auth/resources/static/css/input.css rename to services/auth/resources/static/css/input.css diff --git a/auth/resources/static/css/jazzmin.css b/services/auth/resources/static/css/jazzmin.css similarity index 100% rename from auth/resources/static/css/jazzmin.css rename to services/auth/resources/static/css/jazzmin.css diff --git a/auth/resources/static/css/output.css b/services/auth/resources/static/css/output.css similarity index 100% rename from auth/resources/static/css/output.css rename to services/auth/resources/static/css/output.css diff --git a/auth/resources/static/images/logo.png b/services/auth/resources/static/images/logo.png similarity index 100% rename from auth/resources/static/images/logo.png rename to services/auth/resources/static/images/logo.png diff --git a/auth/resources/static/js/alpine.js b/services/auth/resources/static/js/alpine.js similarity index 100% rename from auth/resources/static/js/alpine.js rename to services/auth/resources/static/js/alpine.js diff --git a/auth/resources/static/js/app.js b/services/auth/resources/static/js/app.js similarity index 100% rename from auth/resources/static/js/app.js rename to services/auth/resources/static/js/app.js diff --git a/auth/resources/static/js/counter.js b/services/auth/resources/static/js/counter.js similarity index 100% rename from auth/resources/static/js/counter.js rename to services/auth/resources/static/js/counter.js diff --git a/auth/resources/static/js/customer.js b/services/auth/resources/static/js/customer.js similarity index 100% rename from auth/resources/static/js/customer.js rename to services/auth/resources/static/js/customer.js diff --git a/auth/resources/static/js/vite-refresh.js b/services/auth/resources/static/js/vite-refresh.js similarity index 100% rename from auth/resources/static/js/vite-refresh.js rename to services/auth/resources/static/js/vite-refresh.js diff --git a/auth/resources/static/vite/assets/appCss-w40geAFS.js b/services/auth/resources/static/vite/assets/appCss-w40geAFS.js similarity index 100% rename from auth/resources/static/vite/assets/appCss-w40geAFS.js rename to services/auth/resources/static/vite/assets/appCss-w40geAFS.js diff --git a/auth/resources/static/vite/assets/appJs-YH6iAcjX.js b/services/auth/resources/static/vite/assets/appJs-YH6iAcjX.js similarity index 100% rename from auth/resources/static/vite/assets/appJs-YH6iAcjX.js rename to services/auth/resources/static/vite/assets/appJs-YH6iAcjX.js diff --git a/auth/resources/static/vite/assets/outCss-r8J2MRAR.css b/services/auth/resources/static/vite/assets/outCss-r8J2MRAR.css similarity index 100% rename from auth/resources/static/vite/assets/outCss-r8J2MRAR.css rename to services/auth/resources/static/vite/assets/outCss-r8J2MRAR.css diff --git a/auth/resources/static/vite/manifest.json b/services/auth/resources/static/vite/manifest.json similarity index 100% rename from auth/resources/static/vite/manifest.json rename to services/auth/resources/static/vite/manifest.json diff --git a/auth/resources/templates/400.html b/services/auth/resources/templates/400.html similarity index 100% rename from auth/resources/templates/400.html rename to services/auth/resources/templates/400.html diff --git a/auth/resources/templates/401.html b/services/auth/resources/templates/401.html similarity index 100% rename from auth/resources/templates/401.html rename to services/auth/resources/templates/401.html diff --git a/auth/resources/templates/403.html b/services/auth/resources/templates/403.html similarity index 100% rename from auth/resources/templates/403.html rename to services/auth/resources/templates/403.html diff --git a/auth/resources/templates/404.html b/services/auth/resources/templates/404.html similarity index 100% rename from auth/resources/templates/404.html rename to services/auth/resources/templates/404.html diff --git a/auth/resources/templates/405.html b/services/auth/resources/templates/405.html similarity index 100% rename from auth/resources/templates/405.html rename to services/auth/resources/templates/405.html diff --git a/auth/resources/templates/408.html b/services/auth/resources/templates/408.html similarity index 100% rename from auth/resources/templates/408.html rename to services/auth/resources/templates/408.html diff --git a/auth/resources/templates/500.html b/services/auth/resources/templates/500.html similarity index 100% rename from auth/resources/templates/500.html rename to services/auth/resources/templates/500.html diff --git a/auth/resources/templates/502.html b/services/auth/resources/templates/502.html similarity index 100% rename from auth/resources/templates/502.html rename to services/auth/resources/templates/502.html diff --git a/auth/resources/templates/503.html b/services/auth/resources/templates/503.html similarity index 100% rename from auth/resources/templates/503.html rename to services/auth/resources/templates/503.html diff --git a/auth/resources/templates/504.html b/services/auth/resources/templates/504.html similarity index 100% rename from auth/resources/templates/504.html rename to services/auth/resources/templates/504.html diff --git a/auth/resources/templates/admin/index.html b/services/auth/resources/templates/admin/index.html similarity index 100% rename from auth/resources/templates/admin/index.html rename to services/auth/resources/templates/admin/index.html diff --git a/auth/resources/templates/registration/login.html b/services/auth/resources/templates/registration/login.html similarity index 100% rename from auth/resources/templates/registration/login.html rename to services/auth/resources/templates/registration/login.html diff --git a/auth/resources/templates/user/home.html b/services/auth/resources/templates/user/home.html similarity index 100% rename from auth/resources/templates/user/home.html rename to services/auth/resources/templates/user/home.html