my-cloud-devops-consulting 1.1.202507120112__tar.gz → 1.1.202507120158__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- my-cloud-devops-consulting-1.1.202507120158/PKG-INFO +21 -0
- my-cloud-devops-consulting-1.1.202507120158/README.md +3 -0
- my-cloud-devops-consulting-1.1.202507120158/my_cloud_devops_consulting.egg-info/PKG-INFO +21 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/my_cloud_devops_consulting.egg-info/SOURCES.txt +1 -0
- my-cloud-devops-consulting-1.1.202507120158/static/video/7989443-hd_1920_1080_25fps.mp4 +3 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/index.html +152 -164
- my-cloud-devops-consulting-1.1.202507120112/PKG-INFO +0 -108
- my-cloud-devops-consulting-1.1.202507120112/README.md +0 -91
- my-cloud-devops-consulting-1.1.202507120112/my_cloud_devops_consulting.egg-info/PKG-INFO +0 -108
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/MANIFEST.in +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/app.py +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/my_cloud_devops_consulting.egg-info/dependency_links.txt +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/my_cloud_devops_consulting.egg-info/requires.txt +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/my_cloud_devops_consulting.egg-info/top_level.txt +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/setup.cfg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/setup.py +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/anifest.json +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/about.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/assessment.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/contact-form.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/index.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/login.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/main.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/register.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/css/services.css +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/facebook.png +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/favicon.svg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/image.jpg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/instagram.png +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/linkedin.png +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/pexels-divinetechygirl-1181341.jpg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/pexels-divinetechygirl-1181472.jpg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/pexels-fotios-photos-16129703.jpg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/pexels-tiger-lily-7108466.jpg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/whatsapp-navbar.png +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/images/worldmap.jpeg +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/counter.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/index.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/login.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/main.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/register.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/services.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/js/typing.js +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/robots.txt +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/static/sitemap.xml +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/about.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/assessment.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/base.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/contact-form.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/forgot-password.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/login.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/private-videos.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/register.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/reset-password.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/templates/services.html +0 -0
- {my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/test/test.py +0 -0
@@ -0,0 +1,21 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: my-cloud-devops-consulting
|
3
|
+
Version: 1.1.202507120158
|
4
|
+
Summary: This is my consulting website for Cloud & DevOps services.
|
5
|
+
Home-page: https://github.com/Betrand1999/project-root
|
6
|
+
Author: Betrand Mutagha
|
7
|
+
Author-email: mmutagha@gmail.com
|
8
|
+
License: UNKNOWN
|
9
|
+
Platform: UNKNOWN
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
13
|
+
Classifier: Operating System :: OS Independent
|
14
|
+
Requires-Python: >=3.6
|
15
|
+
Description-Content-Type: text/markdown
|
16
|
+
|
17
|
+
version https://git-lfs.github.com/spec/v1
|
18
|
+
oid sha256:394e615b3896176f1cf9c740125d5ded5ed4f97df135f1276942e915f84bdbc9
|
19
|
+
size 2771
|
20
|
+
|
21
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: my-cloud-devops-consulting
|
3
|
+
Version: 1.1.202507120158
|
4
|
+
Summary: This is my consulting website for Cloud & DevOps services.
|
5
|
+
Home-page: https://github.com/Betrand1999/project-root
|
6
|
+
Author: Betrand Mutagha
|
7
|
+
Author-email: mmutagha@gmail.com
|
8
|
+
License: UNKNOWN
|
9
|
+
Platform: UNKNOWN
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
13
|
+
Classifier: Operating System :: OS Independent
|
14
|
+
Requires-Python: >=3.6
|
15
|
+
Description-Content-Type: text/markdown
|
16
|
+
|
17
|
+
version https://git-lfs.github.com/spec/v1
|
18
|
+
oid sha256:394e615b3896176f1cf9c740125d5ded5ed4f97df135f1276942e915f84bdbc9
|
19
|
+
size 2771
|
20
|
+
|
21
|
+
|
@@ -1,181 +1,174 @@
|
|
1
1
|
{% extends "base.html" %} {% block main %}
|
2
2
|
|
3
|
+
<!-- Hero Section -->
|
4
|
+
<section
|
5
|
+
class="hero-section"
|
6
|
+
style="position: relative; text-align: center; padding: 60px 20px"
|
7
|
+
>
|
8
|
+
<!-- ✨ Floating Shapes -->
|
9
|
+
<div class="floating-shape one"></div>
|
10
|
+
<div class="floating-shape two"></div>
|
3
11
|
|
12
|
+
<h1 data-aos="fade-up" id="dynamic-headline"></h1>
|
13
|
+
<p data-aos="fade-up" data-aos-delay="200">
|
14
|
+
We specialize in delivering Cloud and DevOps consulting services tailored to
|
15
|
+
your unique business needs.
|
16
|
+
</p>
|
17
|
+
<a
|
18
|
+
href="{{ url_for('services') }}"
|
19
|
+
class="btn btn-primary mt-3"
|
20
|
+
data-aos="zoom-in"
|
21
|
+
data-aos-delay="400"
|
22
|
+
>
|
23
|
+
Explore Our Services
|
24
|
+
</a>
|
25
|
+
</section>
|
4
26
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
27
|
+
<!-- 🔥 Background Video Section -->
|
28
|
+
<section
|
29
|
+
class="video-hero-section"
|
30
|
+
style="
|
31
|
+
position: relative;
|
32
|
+
height: 100vh;
|
33
|
+
overflow: hidden;
|
34
|
+
text-align: center;
|
35
|
+
"
|
36
|
+
>
|
37
|
+
<!-- 🌐 Background Video with Poster -->
|
38
|
+
<video
|
39
|
+
autoplay
|
40
|
+
muted
|
41
|
+
loop
|
42
|
+
playsinline
|
43
|
+
aria-hidden="true"
|
44
|
+
poster="{{ url_for('static', filename='images/video-poster.jpg') }}"
|
45
|
+
style="
|
46
|
+
position: absolute;
|
47
|
+
top: 0;
|
48
|
+
left: 0;
|
49
|
+
width: 100%;
|
50
|
+
height: 100%;
|
51
|
+
object-fit: cover;
|
52
|
+
z-index: -2;
|
53
|
+
"
|
9
54
|
>
|
10
|
-
|
11
|
-
|
12
|
-
|
55
|
+
<source
|
56
|
+
src="{{ url_for('static', filename='videos/7989443-hd_1920_1080_25fps.mp4') }}"
|
57
|
+
type="video/mp4"
|
58
|
+
/>
|
59
|
+
Your browser does not support the video tag.
|
60
|
+
</video>
|
13
61
|
|
14
|
-
|
62
|
+
<!-- 💡 Optional Dark Overlay -->
|
63
|
+
<div
|
64
|
+
style="
|
65
|
+
position: absolute;
|
66
|
+
top: 0;
|
67
|
+
left: 0;
|
68
|
+
width: 100%;
|
69
|
+
height: 100%;
|
70
|
+
background: rgba(0, 0, 0, 0.5);
|
71
|
+
z-index: -1;
|
72
|
+
"
|
73
|
+
></div>
|
74
|
+
|
75
|
+
<!-- ✨ Content Over Video -->
|
76
|
+
<div
|
77
|
+
style="position: relative; z-index: 1; padding: 120px 20px; color: white"
|
78
|
+
>
|
79
|
+
<h1 data-aos="fade-up">Innovation That Scales Globally</h1>
|
15
80
|
<p data-aos="fade-up" data-aos-delay="200">
|
16
|
-
|
17
|
-
to your unique business needs.
|
81
|
+
Automation. Performance. Security. Delivered from the cloud to the edge.
|
18
82
|
</p>
|
19
83
|
<a
|
20
|
-
href="{{ url_for('
|
84
|
+
href="{{ url_for('contact_form') }}"
|
21
85
|
class="btn btn-primary mt-3"
|
22
86
|
data-aos="zoom-in"
|
23
87
|
data-aos-delay="400"
|
24
88
|
>
|
25
|
-
|
89
|
+
Request a Consultation
|
26
90
|
</a>
|
27
|
-
</
|
91
|
+
</div>
|
92
|
+
</section>
|
28
93
|
|
29
|
-
|
30
|
-
|
31
|
-
|
94
|
+
<!-- 🔥 Background Video Section -->
|
95
|
+
|
96
|
+
<!-- add demo -->
|
97
|
+
<section style="background: #f8f9fa; padding: 60px 20px; text-align: center">
|
98
|
+
<h2
|
32
99
|
style="
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
100
|
+
color: #1b1b1b;
|
101
|
+
font-size: 28px;
|
102
|
+
font-weight: 600;
|
103
|
+
margin-bottom: 10px;
|
37
104
|
"
|
38
105
|
>
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
background: rgba(0, 0, 0, 0.5);
|
73
|
-
z-index: -1;
|
74
|
-
"
|
75
|
-
></div>
|
76
|
-
|
77
|
-
<!-- ✨ Content Over Video -->
|
78
|
-
<div
|
79
|
-
style="position: relative; z-index: 1; padding: 120px 20px; color: white"
|
80
|
-
>
|
81
|
-
<h1 data-aos="fade-up">Innovation That Scales Globally</h1>
|
82
|
-
<p data-aos="fade-up" data-aos-delay="200">
|
83
|
-
Automation. Performance. Security. Delivered from the cloud to the edge.
|
84
|
-
</p>
|
85
|
-
<a
|
86
|
-
href="{{ url_for('contact_form') }}"
|
87
|
-
class="btn btn-primary mt-3"
|
88
|
-
data-aos="zoom-in"
|
89
|
-
data-aos-delay="400"
|
90
|
-
>
|
91
|
-
Request a Consultation
|
92
|
-
</a>
|
93
|
-
</div>
|
94
|
-
</section>
|
95
|
-
|
96
|
-
<!-- 🔥 Background Video Section -->
|
97
|
-
|
98
|
-
<!-- add demo -->
|
99
|
-
<section style="background: #f8f9fa; padding: 60px 20px; text-align: center">
|
100
|
-
<h2
|
101
|
-
style="
|
102
|
-
color: #1b1b1b;
|
103
|
-
font-size: 28px;
|
104
|
-
font-weight: 600;
|
105
|
-
margin-bottom: 10px;
|
106
|
-
"
|
107
|
-
>
|
108
|
-
Drive More Sales and Deliver an Effortless Experience
|
109
|
-
</h2>
|
110
|
-
<h1
|
111
|
-
style="
|
112
|
-
color: #005f73;
|
113
|
-
font-size: 36px;
|
114
|
-
font-weight: 700;
|
115
|
-
margin-bottom: 20px;
|
116
|
-
"
|
117
|
-
>
|
118
|
-
Live Chat Customer Service Software
|
119
|
-
</h1>
|
120
|
-
<p
|
121
|
-
style="
|
122
|
-
color: #333;
|
123
|
-
font-size: 18px;
|
124
|
-
max-width: 700px;
|
125
|
-
margin: 0 auto 30px;
|
126
|
-
"
|
127
|
-
>
|
128
|
-
CDC’s highly effective solution for cross-channel interactive customer
|
129
|
-
interactions.
|
130
|
-
</p>
|
131
|
-
<a
|
132
|
-
href="/contact-form"
|
133
|
-
style="
|
134
|
-
display: inline-block;
|
135
|
-
background-color: #005f73;
|
136
|
-
color: white;
|
137
|
-
padding: 15px 30px;
|
138
|
-
border-radius: 30px;
|
139
|
-
font-weight: 600;
|
140
|
-
text-decoration: none;
|
141
|
-
"
|
142
|
-
>
|
143
|
-
Request A Demo
|
144
|
-
</a>
|
145
|
-
</section>
|
106
|
+
Drive More Sales and Deliver an Effortless Experience
|
107
|
+
</h2>
|
108
|
+
<h1
|
109
|
+
style="
|
110
|
+
color: #005f73;
|
111
|
+
font-size: 36px;
|
112
|
+
font-weight: 700;
|
113
|
+
margin-bottom: 20px;
|
114
|
+
"
|
115
|
+
>
|
116
|
+
Live Chat Customer Service Software
|
117
|
+
</h1>
|
118
|
+
<p
|
119
|
+
style="color: #333; font-size: 18px; max-width: 700px; margin: 0 auto 30px"
|
120
|
+
>
|
121
|
+
CDC’s highly effective solution for cross-channel interactive customer
|
122
|
+
interactions.
|
123
|
+
</p>
|
124
|
+
<a
|
125
|
+
href="/contact-form"
|
126
|
+
style="
|
127
|
+
display: inline-block;
|
128
|
+
background-color: #005f73;
|
129
|
+
color: white;
|
130
|
+
padding: 15px 30px;
|
131
|
+
border-radius: 30px;
|
132
|
+
font-weight: 600;
|
133
|
+
text-decoration: none;
|
134
|
+
"
|
135
|
+
>
|
136
|
+
Request A Demo
|
137
|
+
</a>
|
138
|
+
</section>
|
146
139
|
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
140
|
+
<!-- Moving Image Section 1 -->
|
141
|
+
<!-- Horizontal Moving Images -->
|
142
|
+
<section class="moving-images-row">
|
143
|
+
<div class="moving-image-box">
|
144
|
+
<img
|
145
|
+
src="{{ url_for('static', filename='images/pexels-tiger-lily-7108466.jpg') }}"
|
146
|
+
alt="Tiger Lily"
|
147
|
+
class="moving-image"
|
148
|
+
/>
|
149
|
+
</div>
|
150
|
+
<div class="moving-image-box">
|
151
|
+
<img
|
152
|
+
src="{{ url_for('static', filename='images/pexels-divinetechygirl-1181341.jpg') }}"
|
153
|
+
alt="Techy Girl"
|
154
|
+
class="moving-image"
|
155
|
+
/>
|
156
|
+
</div>
|
157
|
+
<div class="moving-image-box">
|
158
|
+
<img
|
159
|
+
src="{{ url_for('static', filename='images/pexels-divinetechygirl-1181472.jpg') }}"
|
160
|
+
alt="Techy Girl"
|
161
|
+
class="moving-image"
|
162
|
+
/>
|
163
|
+
</div>
|
164
|
+
<div class="moving-image-box">
|
165
|
+
<img
|
166
|
+
src="{{ url_for('static', filename='images/pexels-fotios-photos-16129703.jpg') }}"
|
167
|
+
alt="Techy Girl"
|
168
|
+
class="moving-image"
|
169
|
+
/>
|
170
|
+
</div>
|
171
|
+
</section>
|
179
172
|
|
180
173
|
=======
|
181
174
|
|
@@ -312,7 +305,6 @@
|
|
312
305
|
environments.
|
313
306
|
</p>
|
314
307
|
<a href="{{ url_for('services') }}" class="btn-link">Learn More</a>
|
315
|
-
|
316
308
|
</div>
|
317
309
|
</div>
|
318
310
|
</section>
|
@@ -382,12 +374,10 @@
|
|
382
374
|
<div class="testimonial">
|
383
375
|
<p>Their DevOps support transformed our infrastructure!</p>
|
384
376
|
<span>– <strong>DevOps Solutions</strong></span>
|
385
|
-
|
386
377
|
</div>
|
387
378
|
</div>
|
388
379
|
</section>
|
389
380
|
|
390
|
-
|
391
381
|
<!-- me added -->
|
392
382
|
<!-- Impact Stats Section -->
|
393
383
|
<section
|
@@ -457,7 +447,6 @@
|
|
457
447
|
</div>
|
458
448
|
</section>
|
459
449
|
|
460
|
-
|
461
450
|
<!-- Quick Links Section -->
|
462
451
|
<section class="quick-links">
|
463
452
|
<h3>Quick Links for more</h3>
|
@@ -494,7 +483,6 @@
|
|
494
483
|
/>
|
495
484
|
</section>
|
496
485
|
|
497
|
-
|
498
486
|
<!-- Subscription Section -->
|
499
487
|
<section
|
500
488
|
style="
|
@@ -1,108 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: my-cloud-devops-consulting
|
3
|
-
Version: 1.1.202507120112
|
4
|
-
Summary: This is my consulting website for Cloud & DevOps services.
|
5
|
-
Home-page: https://github.com/Betrand1999/project-root
|
6
|
-
Author: Betrand Mutagha
|
7
|
-
Author-email: mmutagha@gmail.com
|
8
|
-
License: UNKNOWN
|
9
|
-
Platform: UNKNOWN
|
10
|
-
Classifier: Programming Language :: Python :: 3
|
11
|
-
Classifier: Programming Language :: Python :: 3.10
|
12
|
-
Classifier: License :: OSI Approved :: MIT License
|
13
|
-
Classifier: Operating System :: OS Independent
|
14
|
-
Requires-Python: >=3.6
|
15
|
-
Description-Content-Type: text/markdown
|
16
|
-
|
17
|
-
# Project‑Root
|
18
|
-
|
19
|
-
A full‑stack web application with an **API‑driven Python backend**, a **static/templated frontend**, and complete **container/Kubernetes** deployment workflows.
|
20
|
-
Security gates (Gitleaks) and CI/CD are handled through GitHub Actions.
|
21
|
-
|
22
|
-
---
|
23
|
-
##
|
24
|
-
crontab -e
|
25
|
-
#####
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
## Table of Contents
|
30
|
-
1. [Architecture](#architecture)
|
31
|
-
2. [Directory Layout](#directory-layout)
|
32
|
-
3. [Local Development](#local-development)
|
33
|
-
4. [Docker Usage](#docker-usage)
|
34
|
-
5. [Kubernetes Deployment](#kubernetes-deployment)
|
35
|
-
6. [CI/CD & Secret Scanning](#cicd--secret-scanning)
|
36
|
-
7. [Environment Variables](#environment-variables)
|
37
|
-
8. [Contributing](#contributing)
|
38
|
-
9. [License](#license)
|
39
|
-
|
40
|
-
---
|
41
|
-
|
42
|
-
## Architecture
|
43
|
-
```text
|
44
|
-
┌─────────────┐ HTTP ┌──────────────┐
|
45
|
-
│ Browser │ ───────────▶ │ Flask API │
|
46
|
-
│ (frontend) │ │ (backend) │
|
47
|
-
└─────────────┘ └──────────────┘
|
48
|
-
▲ │
|
49
|
-
│ Static assets / Jinja │
|
50
|
-
└───────────────┬──────────────┘
|
51
|
-
▼
|
52
|
-
┌──────────────┐
|
53
|
-
│ Database │
|
54
|
-
└──────────────┘
|
55
|
-
|
56
|
-
|
57
|
-
### 🔧 Tech Stack at a Glance
|
58
|
-
|
59
|
-
| Layer | What We Use | Where It Lives |
|
60
|
-
|-------|-------------|----------------|
|
61
|
-
| **Frontend** | HTML • CSS • JavaScript | `static/`, `templates/` |
|
62
|
-
| **Backend** | Flask (`app.py`) | project root |
|
63
|
-
| **Container** | Docker (single image) | `Dockerfile` |
|
64
|
-
| **Orchestration** | Kubernetes manifests | `kubernetes/` |
|
65
|
-
| **Automation / CI · CD** | GitHub Actions | `.github/workflows/` |
|
66
|
-
|
67
|
-
|
68
|
-
# 1. Clone & install deps
|
69
|
-
git clone https://github.com/your-org/project-root.git
|
70
|
-
cd project-root
|
71
|
-
python -m venv .venv && source .venv/bin/activate
|
72
|
-
pip install -r requirements.txt
|
73
|
-
|
74
|
-
# 2. Set env vars (see .env.example)
|
75
|
-
export FLASK_ENV=development
|
76
|
-
export SECRET_KEY=changeme
|
77
|
-
# …
|
78
|
-
|
79
|
-
# 3. Run the server
|
80
|
-
python app.py
|
81
|
-
# → http://localhost:5000
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
/etc/nginx/nginx.conf
|
86
|
-
#
|
87
|
-
|
88
|
-
#
|
89
|
-
|
90
|
-
####################################################
|
91
|
-
pending pod disk space
|
92
|
-
# See what images are present
|
93
|
-
clear
|
94
|
-
ctr -n k8s.io images list
|
95
|
-
|
96
|
-
# Remove unused containerd images (be cautious)
|
97
|
-
ctr -n k8s.io images prune
|
98
|
-
|
99
|
-
# Or for Docker users (if running Docker instead):
|
100
|
-
docker system prune -a
|
101
|
-
################################################
|
102
|
-
|
103
|
-
|
104
|
-
site:1beto.com ### it confirms that 1beto.com is not yet indexed by Google
|
105
|
-
|
106
|
-
|
107
|
-
# moving image is in the base.html start with moving
|
108
|
-
|
@@ -1,91 +0,0 @@
|
|
1
|
-
# Project‑Root
|
2
|
-
|
3
|
-
A full‑stack web application with an **API‑driven Python backend**, a **static/templated frontend**, and complete **container/Kubernetes** deployment workflows.
|
4
|
-
Security gates (Gitleaks) and CI/CD are handled through GitHub Actions.
|
5
|
-
|
6
|
-
---
|
7
|
-
##
|
8
|
-
crontab -e
|
9
|
-
#####
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
## Table of Contents
|
14
|
-
1. [Architecture](#architecture)
|
15
|
-
2. [Directory Layout](#directory-layout)
|
16
|
-
3. [Local Development](#local-development)
|
17
|
-
4. [Docker Usage](#docker-usage)
|
18
|
-
5. [Kubernetes Deployment](#kubernetes-deployment)
|
19
|
-
6. [CI/CD & Secret Scanning](#cicd--secret-scanning)
|
20
|
-
7. [Environment Variables](#environment-variables)
|
21
|
-
8. [Contributing](#contributing)
|
22
|
-
9. [License](#license)
|
23
|
-
|
24
|
-
---
|
25
|
-
|
26
|
-
## Architecture
|
27
|
-
```text
|
28
|
-
┌─────────────┐ HTTP ┌──────────────┐
|
29
|
-
│ Browser │ ───────────▶ │ Flask API │
|
30
|
-
│ (frontend) │ │ (backend) │
|
31
|
-
└─────────────┘ └──────────────┘
|
32
|
-
▲ │
|
33
|
-
│ Static assets / Jinja │
|
34
|
-
└───────────────┬──────────────┘
|
35
|
-
▼
|
36
|
-
┌──────────────┐
|
37
|
-
│ Database │
|
38
|
-
└──────────────┘
|
39
|
-
|
40
|
-
|
41
|
-
### 🔧 Tech Stack at a Glance
|
42
|
-
|
43
|
-
| Layer | What We Use | Where It Lives |
|
44
|
-
|-------|-------------|----------------|
|
45
|
-
| **Frontend** | HTML • CSS • JavaScript | `static/`, `templates/` |
|
46
|
-
| **Backend** | Flask (`app.py`) | project root |
|
47
|
-
| **Container** | Docker (single image) | `Dockerfile` |
|
48
|
-
| **Orchestration** | Kubernetes manifests | `kubernetes/` |
|
49
|
-
| **Automation / CI · CD** | GitHub Actions | `.github/workflows/` |
|
50
|
-
|
51
|
-
|
52
|
-
# 1. Clone & install deps
|
53
|
-
git clone https://github.com/your-org/project-root.git
|
54
|
-
cd project-root
|
55
|
-
python -m venv .venv && source .venv/bin/activate
|
56
|
-
pip install -r requirements.txt
|
57
|
-
|
58
|
-
# 2. Set env vars (see .env.example)
|
59
|
-
export FLASK_ENV=development
|
60
|
-
export SECRET_KEY=changeme
|
61
|
-
# …
|
62
|
-
|
63
|
-
# 3. Run the server
|
64
|
-
python app.py
|
65
|
-
# → http://localhost:5000
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
/etc/nginx/nginx.conf
|
70
|
-
#
|
71
|
-
|
72
|
-
#
|
73
|
-
|
74
|
-
####################################################
|
75
|
-
pending pod disk space
|
76
|
-
# See what images are present
|
77
|
-
clear
|
78
|
-
ctr -n k8s.io images list
|
79
|
-
|
80
|
-
# Remove unused containerd images (be cautious)
|
81
|
-
ctr -n k8s.io images prune
|
82
|
-
|
83
|
-
# Or for Docker users (if running Docker instead):
|
84
|
-
docker system prune -a
|
85
|
-
################################################
|
86
|
-
|
87
|
-
|
88
|
-
site:1beto.com ### it confirms that 1beto.com is not yet indexed by Google
|
89
|
-
|
90
|
-
|
91
|
-
# moving image is in the base.html start with moving
|
@@ -1,108 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: my-cloud-devops-consulting
|
3
|
-
Version: 1.1.202507120112
|
4
|
-
Summary: This is my consulting website for Cloud & DevOps services.
|
5
|
-
Home-page: https://github.com/Betrand1999/project-root
|
6
|
-
Author: Betrand Mutagha
|
7
|
-
Author-email: mmutagha@gmail.com
|
8
|
-
License: UNKNOWN
|
9
|
-
Platform: UNKNOWN
|
10
|
-
Classifier: Programming Language :: Python :: 3
|
11
|
-
Classifier: Programming Language :: Python :: 3.10
|
12
|
-
Classifier: License :: OSI Approved :: MIT License
|
13
|
-
Classifier: Operating System :: OS Independent
|
14
|
-
Requires-Python: >=3.6
|
15
|
-
Description-Content-Type: text/markdown
|
16
|
-
|
17
|
-
# Project‑Root
|
18
|
-
|
19
|
-
A full‑stack web application with an **API‑driven Python backend**, a **static/templated frontend**, and complete **container/Kubernetes** deployment workflows.
|
20
|
-
Security gates (Gitleaks) and CI/CD are handled through GitHub Actions.
|
21
|
-
|
22
|
-
---
|
23
|
-
##
|
24
|
-
crontab -e
|
25
|
-
#####
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
## Table of Contents
|
30
|
-
1. [Architecture](#architecture)
|
31
|
-
2. [Directory Layout](#directory-layout)
|
32
|
-
3. [Local Development](#local-development)
|
33
|
-
4. [Docker Usage](#docker-usage)
|
34
|
-
5. [Kubernetes Deployment](#kubernetes-deployment)
|
35
|
-
6. [CI/CD & Secret Scanning](#cicd--secret-scanning)
|
36
|
-
7. [Environment Variables](#environment-variables)
|
37
|
-
8. [Contributing](#contributing)
|
38
|
-
9. [License](#license)
|
39
|
-
|
40
|
-
---
|
41
|
-
|
42
|
-
## Architecture
|
43
|
-
```text
|
44
|
-
┌─────────────┐ HTTP ┌──────────────┐
|
45
|
-
│ Browser │ ───────────▶ │ Flask API │
|
46
|
-
│ (frontend) │ │ (backend) │
|
47
|
-
└─────────────┘ └──────────────┘
|
48
|
-
▲ │
|
49
|
-
│ Static assets / Jinja │
|
50
|
-
└───────────────┬──────────────┘
|
51
|
-
▼
|
52
|
-
┌──────────────┐
|
53
|
-
│ Database │
|
54
|
-
└──────────────┘
|
55
|
-
|
56
|
-
|
57
|
-
### 🔧 Tech Stack at a Glance
|
58
|
-
|
59
|
-
| Layer | What We Use | Where It Lives |
|
60
|
-
|-------|-------------|----------------|
|
61
|
-
| **Frontend** | HTML • CSS • JavaScript | `static/`, `templates/` |
|
62
|
-
| **Backend** | Flask (`app.py`) | project root |
|
63
|
-
| **Container** | Docker (single image) | `Dockerfile` |
|
64
|
-
| **Orchestration** | Kubernetes manifests | `kubernetes/` |
|
65
|
-
| **Automation / CI · CD** | GitHub Actions | `.github/workflows/` |
|
66
|
-
|
67
|
-
|
68
|
-
# 1. Clone & install deps
|
69
|
-
git clone https://github.com/your-org/project-root.git
|
70
|
-
cd project-root
|
71
|
-
python -m venv .venv && source .venv/bin/activate
|
72
|
-
pip install -r requirements.txt
|
73
|
-
|
74
|
-
# 2. Set env vars (see .env.example)
|
75
|
-
export FLASK_ENV=development
|
76
|
-
export SECRET_KEY=changeme
|
77
|
-
# …
|
78
|
-
|
79
|
-
# 3. Run the server
|
80
|
-
python app.py
|
81
|
-
# → http://localhost:5000
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
/etc/nginx/nginx.conf
|
86
|
-
#
|
87
|
-
|
88
|
-
#
|
89
|
-
|
90
|
-
####################################################
|
91
|
-
pending pod disk space
|
92
|
-
# See what images are present
|
93
|
-
clear
|
94
|
-
ctr -n k8s.io images list
|
95
|
-
|
96
|
-
# Remove unused containerd images (be cautious)
|
97
|
-
ctr -n k8s.io images prune
|
98
|
-
|
99
|
-
# Or for Docker users (if running Docker instead):
|
100
|
-
docker system prune -a
|
101
|
-
################################################
|
102
|
-
|
103
|
-
|
104
|
-
site:1beto.com ### it confirms that 1beto.com is not yet indexed by Google
|
105
|
-
|
106
|
-
|
107
|
-
# moving image is in the base.html start with moving
|
108
|
-
|
File without changes
|
{my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/app.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{my-cloud-devops-consulting-1.1.202507120112 → my-cloud-devops-consulting-1.1.202507120158}/setup.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|