From be246b34e88e7c1e671dcdd3bec289ff8b2fb45d Mon Sep 17 00:00:00 2001 From: max Date: Mon, 10 Oct 2022 15:53:36 +0300 Subject: [PATCH 1/2] added python_tutorial --- services/python_tutorial_service/Dockerfile | 10 ++ services/python_tutorial_service/db.sqlite3 | 0 services/python_tutorial_service/manage.py | 22 ++++ .../python_tutorial_service/requirements.txt | 34 +++++ .../tutorial/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 147 bytes .../__pycache__/settings.cpython-39.pyc | Bin 0 -> 2276 bytes .../tutorial/__pycache__/urls.cpython-39.pyc | Bin 0 -> 925 bytes .../tutorial/__pycache__/wsgi.cpython-39.pyc | Bin 0 -> 552 bytes .../python_tutorial_service/tutorial/asgi.py | 16 +++ .../tutorial/settings.py | 123 ++++++++++++++++++ .../python_tutorial_service/tutorial/urls.py | 21 +++ .../python_tutorial_service/tutorial/wsgi.py | 16 +++ .../tutorial_app/__init__.py | 0 .../tutorial_app/admin.py | 3 + .../tutorial_app/apps.py | 6 + .../tutorial_app/migrations/__init__.py | 0 .../tutorial_app/models.py | 3 + .../tutorial_app/tests.py | 3 + .../tutorial_app/views.py | 3 + 20 files changed, 260 insertions(+) create mode 100644 services/python_tutorial_service/Dockerfile create mode 100644 services/python_tutorial_service/db.sqlite3 create mode 100755 services/python_tutorial_service/manage.py create mode 100644 services/python_tutorial_service/requirements.txt create mode 100644 services/python_tutorial_service/tutorial/__init__.py create mode 100644 services/python_tutorial_service/tutorial/__pycache__/__init__.cpython-39.pyc create mode 100644 services/python_tutorial_service/tutorial/__pycache__/settings.cpython-39.pyc create mode 100644 services/python_tutorial_service/tutorial/__pycache__/urls.cpython-39.pyc create mode 100644 services/python_tutorial_service/tutorial/__pycache__/wsgi.cpython-39.pyc create mode 100644 services/python_tutorial_service/tutorial/asgi.py create mode 100644 services/python_tutorial_service/tutorial/settings.py create mode 100644 services/python_tutorial_service/tutorial/urls.py create mode 100644 services/python_tutorial_service/tutorial/wsgi.py create mode 100644 services/python_tutorial_service/tutorial_app/__init__.py create mode 100644 services/python_tutorial_service/tutorial_app/admin.py create mode 100644 services/python_tutorial_service/tutorial_app/apps.py create mode 100644 services/python_tutorial_service/tutorial_app/migrations/__init__.py create mode 100644 services/python_tutorial_service/tutorial_app/models.py create mode 100644 services/python_tutorial_service/tutorial_app/tests.py create mode 100644 services/python_tutorial_service/tutorial_app/views.py diff --git a/services/python_tutorial_service/Dockerfile b/services/python_tutorial_service/Dockerfile new file mode 100644 index 0000000..1053285 --- /dev/null +++ b/services/python_tutorial_service/Dockerfile @@ -0,0 +1,10 @@ +FROM python:3.8 + +WORKDIR /code + +RUN pip install --upgrade pip +COPY requirements.txt /code/requirements.txt +RUN pip3 install -r requirements.txt +COPY . . + +ENTRYPOINT [ "python", "/code/manage.py" , "runserver", "0.0.0.0:8000"] \ No newline at end of file diff --git a/services/python_tutorial_service/db.sqlite3 b/services/python_tutorial_service/db.sqlite3 new file mode 100644 index 0000000..e69de29 diff --git a/services/python_tutorial_service/manage.py b/services/python_tutorial_service/manage.py new file mode 100755 index 0000000..07a69d9 --- /dev/null +++ b/services/python_tutorial_service/manage.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" +import os +import sys + + +def main(): + """Run administrative tasks.""" + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tutorial.settings') + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) + + +if __name__ == '__main__': + main() diff --git a/services/python_tutorial_service/requirements.txt b/services/python_tutorial_service/requirements.txt new file mode 100644 index 0000000..92ac41a --- /dev/null +++ b/services/python_tutorial_service/requirements.txt @@ -0,0 +1,34 @@ +asgiref==3.5.2 +backports.zoneinfo==0.2.1 +certifi==2022.6.15 +charset-normalizer==2.1.0 +coreapi==2.3.3 +coreschema==0.0.4 +Django==4.1 +django-cors-headers==3.13.0 +django-environ==0.9.0 +django-rest-auth==0.9.5 +django-rest-framework==0.1.0 +djangorestframework==3.13.1 +djangorestframework-simplejwt==5.2.0 +djongo==1.3.6 +drf-yasg==1.21.3 +environ==1.0 +idna==3.3 +inflection==0.5.1 +itypes==1.2.0 +Jinja2==3.1.2 +MarkupSafe==2.1.1 +packaging==21.3 +Pillow==9.2.0 +PyJWT==2.4.0 +pymongo==3.12.1 +pyparsing==3.0.9 +pytz==2022.1 +requests==2.28.1 +ruamel.yaml==0.17.21 +ruamel.yaml.clib==0.2.6 +six==1.16.0 +sqlparse +uritemplate==4.1.1 +urllib3==1.26.11 diff --git a/services/python_tutorial_service/tutorial/__init__.py b/services/python_tutorial_service/tutorial/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/python_tutorial_service/tutorial/__pycache__/__init__.cpython-39.pyc b/services/python_tutorial_service/tutorial/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ab2b2a95c083a1ada691b115433a643038ac7963 GIT binary patch literal 147 zcmYe~<>g`kf)~24l0fuh5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;!H8erR!OQL%n* zVugM{WpYMhQEos{epYI7NwI!OX-R%jW?~M45g(tKmst`YuUAlci^C>2KczG$)edCh IXCP((02$#UdH?_b literal 0 HcmV?d00001 diff --git a/services/python_tutorial_service/tutorial/__pycache__/settings.cpython-39.pyc b/services/python_tutorial_service/tutorial/__pycache__/settings.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b089df13c7e101864e1fc65a6ca4271d23704755 GIT binary patch literal 2276 zcmb7FOK;mo5T<16VZ}-uJBjl^3+51{ax2n-jl?aA)U-s~LiB=3#VrpdDDH}0n-7J% zj3ZwAGnzx2LxKJ!UVCZ#19~Wmrb9}y1vx-mK9;*XGvCa9JF_&)Zx%EMp>Uiu3(h|@WgL0Ko`X7y}_!&$uWL*^&`XYM3-lGF2OK`$U)FWQ{GXmcp{ zE~A&=n}_c;RM3|YNDz+_S?OJdWYD#@yq(d@Xi2}0%IG@IqZDj(OF=NED zsW9*ZfrZQui0KH!z(2tj6HBFi?BT#<7zzE6@ED~=RTH_y6DTtSHqm@6gcM+e3F?-( zA#Q>79)P-jfCb_KzH2h#djdS{n1Dy(;4dHmTsmfKNWYRK>PL z4~a#kX~fbPo*iRh5ITiF2*#NQi?a|rRm!qB2 zN)>NB(kl7r))+>#e2)dBFQ%kMtMjuVcziH7nV4XYvC$CIXl+hNF{MEBWq}I<(*}$C z^A-#?#!9w>RtiydB6SHu4n8vjET-!uY$U45f}ztomqlCiU=#P^jJ-OZo3W}~b^<%? z`kq)zKOa%0!9c7*^OE4R8P#WVv6w*KY#cI-fj45Mi8y08zlbSSv&OA4eKS^1Kd=ag zSf?kZbqd8Ge!CZ#F76DItfw<}uJ?#6EW3S z(*1wK3@8!{qVfY;;iJ#yVJ>Tl2=_xfTEBv3fL}q$u;}xN?s=9blzsp?p*q@}Q$DBh z0|rxBg^vrna_xoEuIqfgaj3>cx!X0;UZK;~8lAQp-8*OOjM_vrheO~w-Nd+n@W2cm zcAnL!e?cI9)SK9lHwi5Ggxupa}sO{)rF7h;Uh9;$Fet--(KL|?Q zi9Lz~nI#1qGOQApIA&51FUJ~w5Iw&tQj2)R4c#X8Y<7HM|IJnH$A!|J#CQR)b5($L z=;DA_ml1Nlo(To?$cX6(+?DqEK zvfONTj+DA_&`~utzTRl78ce|i1ampuvzQ0_u@rOX?2^j zrl|4qk-FbV^qY;EoTO5`SeG?9ajV96<(_t6bY)dN>KxXMmvXZK!VY9$xhc2zd-A?w z)H-zq02?jE&^wSa#U2FQc(UD&^GQ$BA#x3nYl-)GrLOGBy{2XWa>v+fD9!q>T<|Hd zkT!pBOG)}r$u-|d-H~-{25xu!r=`*~!!J71ADuWH#l^3I^w7c2;n&U418DfArG@1J wzrbhtTye2j;`wX_?riaW_8k1qd{4ViH0VuuCtQ8@r9G*bcVCR<8US{!*@7 zfCE2(3p}T(h>(zGDb};|{Jrn{{7jCHA`iy5;~&ePf#-d7i~bnE;st!>1SaY&JnGY+ z^hK};d>0SOfe06&@3D}EEZ7V;qtC(GUmVckJ1-fL4*+Uwt28Gix_sk}b zm5ieI1w%KrE-PX!)6(3ak{gS(sx33_fI(KFkDT3_6kRBdgwhOgxl&rR5U45{F$@{T z<`IHXSX-Gn##H4dr5hsGs?uu1a+~H#U?%ZtdV;O0cy6#u#!%ki==_cdz%ujbqL#U1 zw=3I%K2Fg~N)eHWi%MxbM`)#$Kw_Jbs_Hg-`A@q1Rx$|aDTJdSwwT88tkYE}!DdJj z!Jfq~j+5xDB*q*sK^X0!{*Q&S1=Eg5+8VW|^9rz9_V;At@>60m2Qp3mVRR|;vZh?F z!GyM+la|9}?)|xJjX^*KuE*uFX@XXrmGhllyX#1u;d_!@?yNQC-fWkpT4OM9UnzDQ zEpD77(Rb)oFY%ipp@K^YLg)CWQM<%%l5um8WzZj4ws_c40wq@SrG|F(n!_GX?Os3= z8g5w=I^xY??=ru5`T_iJr(dV|+AwXfAb0p`n-@fjt6k?Aynh3K1BaDX+h+V!C|Z~7 Sxeq{Q3{&`M;!g&X-+uu3d?8!_ literal 0 HcmV?d00001 diff --git a/services/python_tutorial_service/tutorial/__pycache__/wsgi.cpython-39.pyc b/services/python_tutorial_service/tutorial/__pycache__/wsgi.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8b77f77b075e80834c4d66645fbb4dca901261f3 GIT binary patch literal 552 zcmYjP!EO^V5cN7~6BddYZCk4H1_&Di4LASGzOj{jVLO$hnfIJ?$H=N&G8f*{F+$V5_| zOcLB%npUkzDFwV=q+iB^AuFtzsgljCV__MrQ$n-a z*##6KOVeRsa9djso`pHEO@`1~Tx(#$Gr=k=ml}>WtU$As!2Bj;LVQiu3-hw=w; z%~L+Y-&20&!FgVZTYj-F=E7AMn{j)-Rq+4Nuw?Z*cHeB~{1$%#@m+-WlP-NmpVNOI CK&_Yn literal 0 HcmV?d00001 diff --git a/services/python_tutorial_service/tutorial/asgi.py b/services/python_tutorial_service/tutorial/asgi.py new file mode 100644 index 0000000..ffcea42 --- /dev/null +++ b/services/python_tutorial_service/tutorial/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for tutorial project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.0/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tutorial.settings') + +application = get_asgi_application() diff --git a/services/python_tutorial_service/tutorial/settings.py b/services/python_tutorial_service/tutorial/settings.py new file mode 100644 index 0000000..9f40b57 --- /dev/null +++ b/services/python_tutorial_service/tutorial/settings.py @@ -0,0 +1,123 @@ +""" +Django settings for tutorial project. + +Generated by 'django-admin startproject' using Django 4.0.4. + +For more information on this file, see +https://docs.djangoproject.com/en/4.0/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/4.0/ref/settings/ +""" + +from pathlib import Path + +# Build paths inside the project like this: BASE_DIR / 'subdir'. +BASE_DIR = Path(__file__).resolve().parent.parent + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'django-insecure-ggjr0b1m!)^%ctk8!*!@03c)zb7-x*n6tfdt*8yw49y@k)-e0%' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'tutorial.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'tutorial.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/4.0/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': BASE_DIR / 'db.sqlite3', + } +} + + +# Password validation +# https://docs.djangoproject.com/en/4.0/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/4.0/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'UTC' + +USE_I18N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/4.0/howto/static-files/ + +STATIC_URL = 'static/' + +# Default primary key field type +# https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field + +DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' diff --git a/services/python_tutorial_service/tutorial/urls.py b/services/python_tutorial_service/tutorial/urls.py new file mode 100644 index 0000000..fc897b3 --- /dev/null +++ b/services/python_tutorial_service/tutorial/urls.py @@ -0,0 +1,21 @@ +"""tutorial URL Configuration + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/4.0/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import path + +urlpatterns = [ + path('admin/', admin.site.urls), +] diff --git a/services/python_tutorial_service/tutorial/wsgi.py b/services/python_tutorial_service/tutorial/wsgi.py new file mode 100644 index 0000000..2bfd6e2 --- /dev/null +++ b/services/python_tutorial_service/tutorial/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for tutorial project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.0/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tutorial.settings') + +application = get_wsgi_application() diff --git a/services/python_tutorial_service/tutorial_app/__init__.py b/services/python_tutorial_service/tutorial_app/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/python_tutorial_service/tutorial_app/admin.py b/services/python_tutorial_service/tutorial_app/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/services/python_tutorial_service/tutorial_app/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/services/python_tutorial_service/tutorial_app/apps.py b/services/python_tutorial_service/tutorial_app/apps.py new file mode 100644 index 0000000..6b638f0 --- /dev/null +++ b/services/python_tutorial_service/tutorial_app/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class TutorialAppConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'tutorial_app' diff --git a/services/python_tutorial_service/tutorial_app/migrations/__init__.py b/services/python_tutorial_service/tutorial_app/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/services/python_tutorial_service/tutorial_app/models.py b/services/python_tutorial_service/tutorial_app/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/services/python_tutorial_service/tutorial_app/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/services/python_tutorial_service/tutorial_app/tests.py b/services/python_tutorial_service/tutorial_app/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/services/python_tutorial_service/tutorial_app/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/services/python_tutorial_service/tutorial_app/views.py b/services/python_tutorial_service/tutorial_app/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/services/python_tutorial_service/tutorial_app/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. From d79d87d71da53880ad92a2b4b8635b9b69c1aa6b Mon Sep 17 00:00:00 2001 From: max Date: Mon, 10 Oct 2022 16:27:13 +0300 Subject: [PATCH 2/2] fixed python-service names and migration --- Tiltfile | 10 +++++++++- kubernetes/python-service.yaml | 18 ++++++++++++++++++ .../Dockerfile | 2 ++ .../db.sqlite3 | 0 .../manage.py | 0 .../requirements.txt | 0 .../tutorial/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin .../__pycache__/settings.cpython-39.pyc | Bin .../tutorial/__pycache__/urls.cpython-39.pyc | Bin .../tutorial/__pycache__/wsgi.cpython-39.pyc | Bin .../tutorial/asgi.py | 0 .../tutorial/settings.py | 0 .../tutorial/urls.py | 0 .../tutorial/wsgi.py | 0 .../tutorial_app/__init__.py | 0 .../tutorial_app/admin.py | 0 .../tutorial_app/apps.py | 0 .../tutorial_app/migrations/__init__.py | 0 .../tutorial_app/models.py | 0 .../tutorial_app/tests.py | 0 .../tutorial_app/views.py | 0 22 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 kubernetes/python-service.yaml rename services/{python_tutorial_service => python-service}/Dockerfile (77%) rename services/{python_tutorial_service => python-service}/db.sqlite3 (100%) rename services/{python_tutorial_service => python-service}/manage.py (100%) rename services/{python_tutorial_service => python-service}/requirements.txt (100%) rename services/{python_tutorial_service => python-service}/tutorial/__init__.py (100%) rename services/{python_tutorial_service => python-service}/tutorial/__pycache__/__init__.cpython-39.pyc (100%) rename services/{python_tutorial_service => python-service}/tutorial/__pycache__/settings.cpython-39.pyc (100%) rename services/{python_tutorial_service => python-service}/tutorial/__pycache__/urls.cpython-39.pyc (100%) rename services/{python_tutorial_service => python-service}/tutorial/__pycache__/wsgi.cpython-39.pyc (100%) rename services/{python_tutorial_service => python-service}/tutorial/asgi.py (100%) rename services/{python_tutorial_service => python-service}/tutorial/settings.py (100%) rename services/{python_tutorial_service => python-service}/tutorial/urls.py (100%) rename services/{python_tutorial_service => python-service}/tutorial/wsgi.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/__init__.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/admin.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/apps.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/migrations/__init__.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/models.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/tests.py (100%) rename services/{python_tutorial_service => python-service}/tutorial_app/views.py (100%) diff --git a/Tiltfile b/Tiltfile index c4bbc3f..81573e7 100644 --- a/Tiltfile +++ b/Tiltfile @@ -41,6 +41,12 @@ docker_build( entrypoint=['npm', 'run', 'start:debug'] ) +docker_build( + ref='python-service', + context='services/python-service', + dockerfile='services/python-service/Dockerfile', +) + # Deploy K8s manifests k8s_yaml([ 'kubernetes/first-service.yaml', @@ -48,7 +54,8 @@ k8s_yaml([ 'kubernetes/nats.yaml', 'kubernetes/second-service.yaml', 'kubernetes/cron-service.yaml', - 'kubernetes/auth-service.yaml' + 'kubernetes/auth-service.yaml', + 'kubernetes/python-service.yaml' ]) # Config K8s resources @@ -58,3 +65,4 @@ k8s_resource('second-service', labels=['backend'], resource_deps=['nats']) k8s_resource('cron-service', labels=['backend'], resource_deps=['nats']) k8s_resource('auth-service', labels=['backend'], resource_deps=['nats']) k8s_resource('nats', labels=['services']) +k8s_resource('python-service', port_forwards=8000, labels=['services']) diff --git a/kubernetes/python-service.yaml b/kubernetes/python-service.yaml new file mode 100644 index 0000000..57db93f --- /dev/null +++ b/kubernetes/python-service.yaml @@ -0,0 +1,18 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: python-service + labels: + app: python-service +spec: + selector: + matchLabels: + app: python-service + template: + metadata: + labels: + app: python-service + spec: + containers: + - name: python-service + image: python-service:latest \ No newline at end of file diff --git a/services/python_tutorial_service/Dockerfile b/services/python-service/Dockerfile similarity index 77% rename from services/python_tutorial_service/Dockerfile rename to services/python-service/Dockerfile index 1053285..a4d1faf 100644 --- a/services/python_tutorial_service/Dockerfile +++ b/services/python-service/Dockerfile @@ -6,5 +6,7 @@ RUN pip install --upgrade pip COPY requirements.txt /code/requirements.txt RUN pip3 install -r requirements.txt COPY . . +RUN python manage.py makemigrations +RUN python manage.py migrate ENTRYPOINT [ "python", "/code/manage.py" , "runserver", "0.0.0.0:8000"] \ No newline at end of file diff --git a/services/python_tutorial_service/db.sqlite3 b/services/python-service/db.sqlite3 similarity index 100% rename from services/python_tutorial_service/db.sqlite3 rename to services/python-service/db.sqlite3 diff --git a/services/python_tutorial_service/manage.py b/services/python-service/manage.py similarity index 100% rename from services/python_tutorial_service/manage.py rename to services/python-service/manage.py diff --git a/services/python_tutorial_service/requirements.txt b/services/python-service/requirements.txt similarity index 100% rename from services/python_tutorial_service/requirements.txt rename to services/python-service/requirements.txt diff --git a/services/python_tutorial_service/tutorial/__init__.py b/services/python-service/tutorial/__init__.py similarity index 100% rename from services/python_tutorial_service/tutorial/__init__.py rename to services/python-service/tutorial/__init__.py diff --git a/services/python_tutorial_service/tutorial/__pycache__/__init__.cpython-39.pyc b/services/python-service/tutorial/__pycache__/__init__.cpython-39.pyc similarity index 100% rename from services/python_tutorial_service/tutorial/__pycache__/__init__.cpython-39.pyc rename to services/python-service/tutorial/__pycache__/__init__.cpython-39.pyc diff --git a/services/python_tutorial_service/tutorial/__pycache__/settings.cpython-39.pyc b/services/python-service/tutorial/__pycache__/settings.cpython-39.pyc similarity index 100% rename from services/python_tutorial_service/tutorial/__pycache__/settings.cpython-39.pyc rename to services/python-service/tutorial/__pycache__/settings.cpython-39.pyc diff --git a/services/python_tutorial_service/tutorial/__pycache__/urls.cpython-39.pyc b/services/python-service/tutorial/__pycache__/urls.cpython-39.pyc similarity index 100% rename from services/python_tutorial_service/tutorial/__pycache__/urls.cpython-39.pyc rename to services/python-service/tutorial/__pycache__/urls.cpython-39.pyc diff --git a/services/python_tutorial_service/tutorial/__pycache__/wsgi.cpython-39.pyc b/services/python-service/tutorial/__pycache__/wsgi.cpython-39.pyc similarity index 100% rename from services/python_tutorial_service/tutorial/__pycache__/wsgi.cpython-39.pyc rename to services/python-service/tutorial/__pycache__/wsgi.cpython-39.pyc diff --git a/services/python_tutorial_service/tutorial/asgi.py b/services/python-service/tutorial/asgi.py similarity index 100% rename from services/python_tutorial_service/tutorial/asgi.py rename to services/python-service/tutorial/asgi.py diff --git a/services/python_tutorial_service/tutorial/settings.py b/services/python-service/tutorial/settings.py similarity index 100% rename from services/python_tutorial_service/tutorial/settings.py rename to services/python-service/tutorial/settings.py diff --git a/services/python_tutorial_service/tutorial/urls.py b/services/python-service/tutorial/urls.py similarity index 100% rename from services/python_tutorial_service/tutorial/urls.py rename to services/python-service/tutorial/urls.py diff --git a/services/python_tutorial_service/tutorial/wsgi.py b/services/python-service/tutorial/wsgi.py similarity index 100% rename from services/python_tutorial_service/tutorial/wsgi.py rename to services/python-service/tutorial/wsgi.py diff --git a/services/python_tutorial_service/tutorial_app/__init__.py b/services/python-service/tutorial_app/__init__.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/__init__.py rename to services/python-service/tutorial_app/__init__.py diff --git a/services/python_tutorial_service/tutorial_app/admin.py b/services/python-service/tutorial_app/admin.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/admin.py rename to services/python-service/tutorial_app/admin.py diff --git a/services/python_tutorial_service/tutorial_app/apps.py b/services/python-service/tutorial_app/apps.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/apps.py rename to services/python-service/tutorial_app/apps.py diff --git a/services/python_tutorial_service/tutorial_app/migrations/__init__.py b/services/python-service/tutorial_app/migrations/__init__.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/migrations/__init__.py rename to services/python-service/tutorial_app/migrations/__init__.py diff --git a/services/python_tutorial_service/tutorial_app/models.py b/services/python-service/tutorial_app/models.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/models.py rename to services/python-service/tutorial_app/models.py diff --git a/services/python_tutorial_service/tutorial_app/tests.py b/services/python-service/tutorial_app/tests.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/tests.py rename to services/python-service/tutorial_app/tests.py diff --git a/services/python_tutorial_service/tutorial_app/views.py b/services/python-service/tutorial_app/views.py similarity index 100% rename from services/python_tutorial_service/tutorial_app/views.py rename to services/python-service/tutorial_app/views.py