1
+ <!DOCTYPE html>
2
+
3
+ < html lang ="en " data-content_root ="../../ ">
4
+ < head >
5
+ < meta charset ="utf-8 " />
6
+ < meta name ="viewport " content ="width=device-width, initial-scale=1.0 " />
7
+ < title > app.config — Youtube node downloader 0.0.1 documentation</ title >
8
+ < link rel ="stylesheet " type ="text/css " href ="../../_static/pygments.css?v=d1102ebc " />
9
+ < link rel ="stylesheet " type ="text/css " href ="../../_static/alabaster.css?v=12dfc556 " />
10
+ < script src ="../../_static/documentation_options.js?v=d45e8c67 "> </ script >
11
+ < script src ="../../_static/doctools.js?v=888ff710 "> </ script >
12
+ < script src ="../../_static/sphinx_highlight.js?v=dc90522c "> </ script >
13
+ < link rel ="index " title ="Index " href ="../../genindex.html " />
14
+ < link rel ="search " title ="Search " href ="../../search.html " />
15
+
16
+ < link rel ="stylesheet " href ="../../_static/custom.css " type ="text/css " />
17
+
18
+
19
+
20
+
21
+
22
+ </ head > < body >
23
+
24
+
25
+ < div class ="document ">
26
+ < div class ="documentwrapper ">
27
+ < div class ="bodywrapper ">
28
+
29
+
30
+ < div class ="body " role ="main ">
31
+
32
+ < h1 > Source code for app.config</ h1 > < div class ="highlight "> < pre >
33
+ < span > </ span > < span class ="kn "> from</ span > < span class ="nn "> functools</ span > < span class ="kn "> import</ span > < span class ="n "> lru_cache</ span >
34
+
35
+ < span class ="kn "> from</ span > < span class ="nn "> pydantic_settings</ span > < span class ="kn "> import</ span > < span class ="n "> BaseSettings</ span >
36
+
37
+
38
+ < div class ="viewcode-block " id ="Settings ">
39
+ < a class ="viewcode-back " href ="../../app.html#app.config.Settings "> [docs]</ a >
40
+ < span class ="k "> class</ span > < span class ="nc "> Settings</ span > < span class ="p "> (</ span > < span class ="n "> BaseSettings</ span > < span class ="p "> ):</ span >
41
+ < span class ="n "> app_host</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "localhost"</ span >
42
+ < span class ="n "> app_port</ span > < span class ="p "> :</ span > < span class ="nb "> int</ span > < span class ="o "> =</ span > < span class ="mi "> 9091</ span >
43
+
44
+ < span class ="n "> storage_path</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "/mnt/volume"</ span >
45
+ < span class ="n "> video_download_path</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "/videos"</ span >
46
+ < span class ="n "> thumbnail_download_path</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "/videos/thumbnail"</ span >
47
+
48
+ < span class ="n "> db_host</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "localhost"</ span >
49
+ < span class ="n "> db_port</ span > < span class ="p "> :</ span > < span class ="nb "> int</ span > < span class ="o "> =</ span > < span class ="mi "> 5432</ span >
50
+ < span class ="n "> db_name</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "peer_tube"</ span >
51
+ < span class ="n "> db_schema</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "youtube"</ span >
52
+ < span class ="n "> db_username</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "postgres"</ span >
53
+ < span class ="n "> db_password</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "postgres"</ span >
54
+
55
+ < span class ="n "> youtube_api_key</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "youtube_key"</ span >
56
+ < span class ="n "> youtube_secret_json</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> ""</ span >
57
+
58
+ < div class ="viewcode-block " id ="Settings.Config ">
59
+ < a class ="viewcode-back " href ="../../app.html#app.config.Settings.Config "> [docs]</ a >
60
+ < span class ="k "> class</ span > < span class ="nc "> Config</ span > < span class ="p "> :</ span >
61
+ < span class ="n "> env_file</ span > < span class ="o "> =</ span > < span class ="s2 "> ".env"</ span >
62
+ < span class ="n "> env_file_encoding</ span > < span class ="o "> =</ span > < span class ="s2 "> "utf-8"</ span > </ div >
63
+
64
+
65
+ < span class ="nd "> @property</ span >
66
+ < span class ="k "> def</ span > < span class ="nf "> database_url</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="nb "> str</ span > < span class ="p "> :</ span >
67
+ < span class ="k "> return</ span > < span class ="p "> (</ span >
68
+ < span class ="sa "> f</ span > < span class ="s2 "> "postgresql+psycopg2://</ span > < span class ="si "> {</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db_username</ span > < span class ="si "> }</ span > < span class ="s2 "> :</ span > < span class ="si "> {</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db_password</ span > < span class ="si "> }</ span > < span class ="s2 "> @</ span > < span class ="si "> {</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db_host</ span > < span class ="si "> }</ span > < span class ="s2 "> :</ span > < span class ="si "> {</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db_port</ span > < span class ="si "> }</ span > < span class ="s2 "> /</ span > < span class ="si "> {</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> db_name</ span > < span class ="si "> }</ span > < span class ="s2 "> "</ span >
69
+ < span class ="p "> )</ span > </ div >
70
+
71
+
72
+
73
+ < div class ="viewcode-block " id ="get_settings ">
74
+ < a class ="viewcode-back " href ="../../app.html#app.config.get_settings "> [docs]</ a >
75
+ < span class ="nd "> @lru_cache</ span > < span class ="p "> ()</ span >
76
+ < span class ="k "> def</ span > < span class ="nf "> get_settings</ span > < span class ="p "> ()</ span > < span class ="o "> -></ span > < span class ="n "> Settings</ span > < span class ="p "> :</ span >
77
+ < span class ="k "> return</ span > < span class ="n "> Settings</ span > < span class ="p "> ()</ span > </ div >
78
+
79
+
80
+
81
+ < span class ="n "> settings</ span > < span class ="o "> =</ span > < span class ="n "> get_settings</ span > < span class ="p "> ()</ span >
82
+ </ pre > </ div >
83
+
84
+ </ div >
85
+
86
+ </ div >
87
+ </ div >
88
+ < div class ="sphinxsidebar " role ="navigation " aria-label ="main navigation ">
89
+ < div class ="sphinxsidebarwrapper ">
90
+ < h1 class ="logo "> < a href ="../../index.html "> Youtube node downloader</ a > </ h1 >
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+ < h3 > Navigation</ h3 >
100
+ < p class ="caption " role ="heading "> < span class ="caption-text "> Contents:</ span > </ p >
101
+ < ul >
102
+ < li class ="toctree-l1 "> < a class ="reference internal " href ="../../app.html "> app package</ a > </ li >
103
+ </ ul >
104
+
105
+ < div class ="relations ">
106
+ < h3 > Related Topics</ h3 >
107
+ < ul >
108
+ < li > < a href ="../../index.html "> Documentation overview</ a > < ul >
109
+ < li > < a href ="../index.html "> Module code</ a > < ul >
110
+ </ ul > </ li >
111
+ </ ul > </ li >
112
+ </ ul >
113
+ </ div >
114
+ < div id ="searchbox " style ="display: none " role ="search ">
115
+ < h3 id ="searchlabel "> Quick search</ h3 >
116
+ < div class ="searchformwrapper ">
117
+ < form class ="search " action ="../../search.html " method ="get ">
118
+ < input type ="text " name ="q " aria-labelledby ="searchlabel " autocomplete ="off " autocorrect ="off " autocapitalize ="off " spellcheck ="false "/>
119
+ < input type ="submit " value ="Go " />
120
+ </ form >
121
+ </ div >
122
+ </ div >
123
+ < script > document . getElementById ( 'searchbox' ) . style . display = "block" </ script >
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+ </ div >
133
+ </ div >
134
+ < div class ="clearer "> </ div >
135
+ </ div >
136
+ < div class ="footer ">
137
+ ©2024, mithmith.
138
+
139
+ |
140
+ Powered by < a href ="https://www.sphinx-doc.org/ "> Sphinx 7.2.6</ a >
141
+ & < a href ="https://alabaster.readthedocs.io "> Alabaster 0.7.16</ a >
142
+
143
+ </ div >
144
+
145
+
146
+
147
+
148
+ </ body >
149
+ </ html >
0 commit comments