From c1a7741c7a04c29d9da80cb6ac6ae022500b0b5d Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Sun, 1 Oct 2023 17:01:31 +0300
Subject: [PATCH 01/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=BA=D0=BD=D0=B8=D0=B3=D0=B8=20=D0=BF?=
 =?UTF-8?q?=D1=80=D0=BE=D0=B4=D0=B2=D0=B8=D0=BD=D1=83=D1=82=D0=BE=D0=B3?=
 =?UTF-8?q?=D0=BE=20=D1=83=D1=80=D0=BE=D0=B2=D0=BD=D1=8F=20=D0=B8=20=D0=B4?=
 =?UTF-8?q?=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA=D0=B8=20=D0=B4=D1=80?=
 =?UTF-8?q?=D1=83=D0=B3=D0=B8=D1=85=20=D1=80=D0=B0=D0=B7=D0=B4=D0=B5=D0=BB?=
 =?UTF-8?q?=D0=BE=D0=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 HELP-PIPELINE-MKDOCS.md                       |  6 +-
 README.md                                     |  6 ++
 .../devops/free-ipa/index.md                  |  7 ++
 docs/effective-developer/devops/index.md      | 66 +++++++++++++++++++
 docs/effective-developer/index.md             |  7 +-
 docs/index.md                                 |  2 +-
 docs/resources/books/advanced-web.md          | 61 +++++++++++++++++
 docs/resources/books/essential.md             |  2 +-
 docs/resources/index.md                       |  6 +-
 k8s-deployment.yaml                           |  2 +-
 10 files changed, 154 insertions(+), 11 deletions(-)
 create mode 100644 docs/effective-developer/devops/free-ipa/index.md
 create mode 100644 docs/effective-developer/devops/index.md
 create mode 100644 docs/resources/books/advanced-web.md

diff --git a/HELP-PIPELINE-MKDOCS.md b/HELP-PIPELINE-MKDOCS.md
index 60dce20..2f58be2 100644
--- a/HELP-PIPELINE-MKDOCS.md
+++ b/HELP-PIPELINE-MKDOCS.md
@@ -9,14 +9,14 @@ mkdocs build
 ```
 ## Docker Build
 ````
-docker build -t codemonstersteam/website:0.0.1-RC35 .
+docker build -t codemonstersteam/website:0.0.1-RC36 .
 ````
 ## check
 ```
-docker run --name nginx -p 8082:80 codemonstersteam/website:0.0.1-RC35
+docker run --name nginx -p 8082:80 codemonstersteam/website:0.0.1-RC36
 ```
 ## push
 ````
-docker push codemonstersteam/website:0.0.1-RC35
+docker push codemonstersteam/website:0.0.1-RC36
 kubectl apply -f k8s-deployment.yaml
 ````
diff --git a/README.md b/README.md
index 9747ea9..46eed8c 100644
--- a/README.md
+++ b/README.md
@@ -14,3 +14,9 @@ Build and deploy
 https://hub.docker.com/r/squidfunk/mkdocs-material
 
 
+curl -v \
+-H 'Host: codemonsters.team' \
+-H 'Connection: keep-alive' \
+-H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \
+-H 'Accept-Language: en-GB,en-US;q=0.8,en;q=0.6' \
+-e 192.168.50.98
\ No newline at end of file
diff --git a/docs/effective-developer/devops/free-ipa/index.md b/docs/effective-developer/devops/free-ipa/index.md
new file mode 100644
index 0000000..c3ca4fc
--- /dev/null
+++ b/docs/effective-developer/devops/free-ipa/index.md
@@ -0,0 +1,7 @@
+https://www.freeipa.org/page/Documentation.html
+
+https://hub.docker.com/r/freeipa/freeipa-server/
+
+https://itsecforu.ru/2021/09/01/%F0%9F%90%B3-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0-freeipa-%D0%B2-%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%B0%D1%85-docker-podman/
+
+
diff --git a/docs/effective-developer/devops/index.md b/docs/effective-developer/devops/index.md
new file mode 100644
index 0000000..10aaf87
--- /dev/null
+++ b/docs/effective-developer/devops/index.md
@@ -0,0 +1,66 @@
+---
+title: Emerge DevOps
+description: Links to Dart codelabs.
+toc: false
+---
+
+# Как построить песочницу разработчика
+
+Для того, чтобы собрать и структурировать эксперименты и в качестве образовательного челенджа 
+я создал эту страницу. 
+
+По шагам я опишу создание **Песочницы разработчика** в которой и буду вести эксперименты
+
+## Введение
+
+Сначала я платил Digital Ocean, позже понял и посчитал: у меня большие аппетиты и много идей, для меня дорого платить ежемесячно 40$
+
+Я не хочу ограничений  
+
+Я уверен, что хороший инженер должен разбираться в том, как настроить Пайплайн производства, как создать песочницу для разработки, написать код и выстроить процессы.
+
+Очен классная книга, в жизни так и происходит, я наблюдаю изменения у нас в ГПБ.
+()[]
+
+
+## План
+
+Настраиваем приватный dev контур   
+
+✔️ Настроить сервак: мой выбор [Gentoo](https://wiki.gentoo.org/wiki/Handbook:Main_Page)  
+⚒️ Настроить email: [email: postman](https://wiki.gentoo.org/wiki/Complete_Virtual_Mail_Server)    
+⚒️ Настроить Private DNS: bind  
+⚒️ Настроить систему авторизации: [Keycloak](https://www.keycloak.org/)     
+✔️️ Настроить Nginx Proxy для разрула запросов на разные ресурсы в рамках одного сервака (minikube, docker swarm)   
+✔️ Настроить git: как сердце CI - gitlab  
+   ✔️ Настроить gitlab: runner (CD)   
+⚒️ Настроить nexus: для хранения артефактов  
+✔️ Настроить minikube: сервер stateless приложений  
+⚒️ Настроить istio service mesh (minikube)  
+⚒️ Настроить ELK  
+⚒️ Настроить мониторинг: [Zabbix](https://www.zabbix.com/documentation/5.4/ru/manual)  
+
+### Research
+main resource
+https://landscape.cncf.io/
+
+https://traefik.io/traefik/
+
+https://nextcloud.com/about/  
+
+
+
+### Zabbix
+
+https://github.com/zabbix/zabbix-docker/blob/6.4/docker-compose_v3_alpine_pgsql_latest.yaml
+
+````
+curl -O https://raw.githubusercontent.com/zabbix/zabbix-docker/6.4/docker-compose_v3_alpine_pgsql_latest.yaml
+
+````
+Learn
+
+Init
+````
+docker swarm init
+````
\ No newline at end of file
diff --git a/docs/effective-developer/index.md b/docs/effective-developer/index.md
index d8b84f0..6bf1c88 100644
--- a/docs/effective-developer/index.md
+++ b/docs/effective-developer/index.md
@@ -12,13 +12,14 @@ toc: false
 Следую им и собираю с 2011-го.
 
 ### [Жизнь](/effective-developer/life/)
+ 
+💎 Дисциплина и правильные маленькие шажки как Ката - помогают выстроить мастерство.  
+💎 В основе понимание базовых принципов.
 
-Все в жизни взаимосвязано.
-Особые Мышление и Дисциплина в сердцевине стержня внутреннего эффективного творца горят.
 
 ## Кодопись
 
 ### [Основы](/effective-developer/code/essential/)
 
 Use DartPad to explore how
-Dart makes writing apps easy and fun.
\ No newline at end of file
+Dart makes writing apps easy and fun.
diff --git a/docs/index.md b/docs/index.md
index 1987a6d..4dc8263 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -10,7 +10,7 @@ src="/Максим-Морев-на-стиле.jpg"
 alt="Codemonsters: автор : Максим Морев">
 
 Я знаю, что разработка может быть понятным, прагматичным, актуальным и искусно разработанным красивым решением.
-Код такого ПО сам по себе будет решать и проблему бизнеса и обучения новичков «Правильным» вещам.
+Код такого ПО сам по себе будет решать и проблему бизнеса и обучения новичков «Правильным» практикам.
 
 ## На сайте вы познакомитесь:
 - с моей парадигмой «Правильной» разработки
diff --git a/docs/resources/books/advanced-web.md b/docs/resources/books/advanced-web.md
new file mode 100644
index 0000000..5c05ad3
--- /dev/null
+++ b/docs/resources/books/advanced-web.md
@@ -0,0 +1,61 @@
+---
+title: Подборка Эффективных книг > Веб-разработка
+description: Рекомендую к прочтению! Коллекция про качественную разработку распределенных веб-приложений.
+---
+На этой странице представлена подборка книг **Для тех, кто решил основательно подойти к разработке веб-приложений**:
+
+> Если вы находите, что достойная книга отсутствует в этой селекции - напишите мне.
+
+## Привет, неравномерно распределенный мир компьютерного флота
+
+!!! tip "Уровень безграничного только начинается"
+
+    Я подобрал максимально полезные книги для буста в кроличью нору, мой друг.   
+
+
+## Принципы юнит-тестирования
+
+!!! note ""
+
+     <div class="grid cards" markdown>
+      ![Image "Принципы юнит-тестирования"](/resources/img/unit-testing.png){ align=left width="300" }
+       <a href="https://www.piter.com/product_by_id/212580594">Владимир Хориков | "Питер Пресс"</a><br/>
+       Исчерпывающая математическая новелла про тестирование, которая изменила мою жизнь навсегда. Рекомендую абсолютно каждому! Уместно Затрагивает Вопросы DDD.
+     </div>
+
+## Микросервисы. Паттерны разработки и рефакторинга
+
+!!! note ""
+
+     <div class="grid cards" markdown>
+      ![Image "Микросервисы. Паттерны разработки и рефакторинга"](/resources/img/microservices-patterns.png){ align=left width="300" }
+       <a href="https://www.ozon.ru/product/mikroservisy-patterny-razrabotki-i-refaktoringa-richardson-kris-211432697/">Крис Ричардсон | "Прогресс книга"</a><br/>
+       Книга, предназначенная для всех любопытных разработчиков, рассказывает, как проектировать и писать приложения в духе микросервисной архитектуры. Также в ней описано, как делается рефакторинг крупного приложения – и монолит превращается в набор микросервисов.
+     </div>
+
+## Domain Modeling Made Functional. Tackle Software Complexity with Domain-Driven Design and F#
+!!! note ""
+
+     <div class="grid cards" markdown>
+      ![Image "Domain Modeling Made Functional. Tackle Software Complexity with Domain-Driven Design and F#"](/resources/img/domain-modeling-made-functional.png){ align=left width="300" }
+       <a href="https://pragprog.com/titles/swdddf/domain-modeling-made-functional/">Scott Wlaschin | "pragprog"</a><br/>
+       Книга про то как можно прагматично разрабатывать в функциональном стиле по R.O.P., реализуя на практике паттерны DDD. Прекрасный труд Скота Влашина!
+     </div>
+
+## Domain-Driven Design The First 15 Years
+!!! note ""
+
+     <div class="grid cards" markdown>
+      ![Image "Domain-Driven Design The First 15 Years"](/resources/img/ddd-15years.png){ align=left width="300" }
+       <a href="https://dddeurope.com/15years/">dddeurope</a><br/>
+       Прекрасная книга и подборка интереснейших эссе на разные темы по DDD. Читается Взахлеб. Если бы была золотая коллекция книг по проектированию - книга была бы в рамке на почетном месте в коллекции.
+     </div>
+
+## The Humane Interface: New Directions for Designing Interactive Systems
+!!! note ""
+
+     <div class="grid cards" markdown>
+      ![Image "The Humane Interface: New Directions for Designing Interactive Systems"](/resources/img/humane-interface.png){ align=left width="300" }
+       <a href="https://www.amazon.com/Humane-Interface-Directions-Designing-Interactive/dp/0201379376">Jef Raskin | "Addison-Wesley Professional (April 8, 2000)"</a><br/>
+       Эту Книгу Я хочу перечитать. Она изменила мое восприятие интерфейса как понятия. О Jef, спасибо тебе за прекрасную книгу. Рекомендую книгу и тебе, мой друг. Давно первые строки унесли меня в размышления автора и я иначе стал воспринимать даже переписку в почте и то - насколько вообще добно получить в ответ скрин шот текста, когда тебе нужен текст.
+     </div>
diff --git a/docs/resources/books/essential.md b/docs/resources/books/essential.md
index 762ce77..9f4d045 100644
--- a/docs/resources/books/essential.md
+++ b/docs/resources/books/essential.md
@@ -2,7 +2,7 @@
 title: Подборка Эффективных книг > новичку
 description: Рекомендую к прочтению! Коллекция про качественную разработку.
 ---
-На этой странице представлена подборка книг по уровням:
+На этой странице представлена подборка книг **Новичку**:
 
 > Если вы находите, что достойная книга отсутствует в этой селекции - напишите мне. 
 
diff --git a/docs/resources/index.md b/docs/resources/index.md
index 9aa649f..fe662f2 100644
--- a/docs/resources/index.md
+++ b/docs/resources/index.md
@@ -4,9 +4,11 @@ description: Рекомендую к изучению! Коллекция про
 ---
 На этой странице представлена подборка книг, видео, ссылок, которые изменили мою жизнь к лучшему.
 
-## Книги
+## Книги 📚
 
-[Новичку](/resources/books/essential/)
+📚 [Новичку](/resources/books/essential/)
+
+📚 [Разработчику веб приложений](/resources/books/advanced-web/)
 
 ## Видосики
 [Видосы](/resources/videos/)
diff --git a/k8s-deployment.yaml b/k8s-deployment.yaml
index d6ea017..bd69442 100644
--- a/k8s-deployment.yaml
+++ b/k8s-deployment.yaml
@@ -35,7 +35,7 @@ spec:
       terminationGracePeriodSeconds: 10
       containers:
         - name: codemonsters-website
-          image: codemonstersteam/website:0.0.1-RC35
+          image: codemonstersteam/website:0.0.1-RC36
           ports:
             - containerPort: 80
               name: nginx
-- 
GitLab


From 5e11b7bc525f39599235401543f676fc6002305a Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Sun, 1 Oct 2023 17:21:16 +0300
Subject: [PATCH 02/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=20=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=20=D0=BF?=
 =?UTF-8?q?=D0=B0=D0=B9=D0=BF=D0=BB=D0=B0=D0=B9=D0=BD=D0=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml   | 24 ++++++++++++++++++++++++
 requirements.txt |  2 ++
 2 files changed, 26 insertions(+)
 create mode 100644 .gitlab-ci.yml
 create mode 100644 requirements.txt

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..60868c7
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,24 @@
+image: python:3.9.17-buster
+
+before_script:
+  - pip install -r requirements.txt
+stages:
+  - build
+  - deploy
+
+Build:
+  stage: build
+  tags:
+    - pip
+  script:
+    - mkdocs build
+  artifacts:
+    paths:
+      - site
+#  rules:
+#    - if: $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
+
+Deploy:
+  stage: deploy
+  script:
+    - ls -la
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..7e5c556
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+# Documentation static site generator & deployment tool
+mkdocs>=1.5.2
-- 
GitLab


From d88392ca83157bfb6113ea7badd779042f776464 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Sun, 1 Oct 2023 14:22:05 +0000
Subject: [PATCH 03/25] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BD=20=D1=82?=
 =?UTF-8?q?=D0=B0=D0=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 60868c7..2bd5854 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,8 +8,8 @@ stages:
 
 Build:
   stage: build
-  tags:
-    - pip
+  # tags:
+  #   - pip
   script:
     - mkdocs build
   artifacts:
-- 
GitLab


From 5b14b5ea61be73eb87de1e824eece44b4d1c16aa Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 05:13:04 +0000
Subject: [PATCH 04/25] Update install mkdocs-material

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2bd5854..38e9804 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,7 +1,7 @@
 image: python:3.9.17-buster
 
 before_script:
-  - pip install -r requirements.txt
+  - pip install mkdocs-material
 stages:
   - build
   - deploy
-- 
GitLab


From b2c6d684f1ed7616ed39c4c1c337b70290c470bc Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 08:21:26 +0300
Subject: [PATCH 05/25] Removed requirements.txt

---
 requirements.txt | 2 --
 1 file changed, 2 deletions(-)
 delete mode 100644 requirements.txt

diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644
index 7e5c556..0000000
--- a/requirements.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# Documentation static site generator & deployment tool
-mkdocs>=1.5.2
-- 
GitLab


From 36987a22f962f9452a669202a45826a3a6cf3885 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 05:55:38 +0000
Subject: [PATCH 06/25] Added docker build

---
 .gitlab-ci.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 38e9804..7ec824a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -22,3 +22,4 @@ Deploy:
   stage: deploy
   script:
     - ls -la
+    - docker build -t codemonstersteam/website:0.0.1 .
-- 
GitLab


From 1f5f36544bb6058e8bd25e39694810f44cdc20bc Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 07:14:15 +0000
Subject: [PATCH 07/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7ec824a..9c0bcc3 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,7 @@ before_script:
   - pip install mkdocs-material
 stages:
   - build
-  - deploy
+  - docker
 
 Build:
   stage: build
@@ -18,8 +18,24 @@ Build:
 #  rules:
 #    - if: $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
 
-Deploy:
-  stage: deploy
+DockerBuild:
+  stage: docker
+  variables:
+    CI_REGISTRY_IMAGE: "codemonstersteam/${CI_PROJECT_NAME}"
+    #CI_REGISTRY: ${AZURE_REGISTRY_USERNAME_DEV}.azurecr.io
+    #CI_REGISTRY_USER: ${AZURE_REGISTRY_USERNAME_DEV}
+    #CI_REGISTRY_PASSWORD: ${AZURE_REGISTRY_PASS_DEV}
+  image:
+    name: gcr.io/kaniko-project/executor:v1.14.0-debug
+    entrypoint: [""]
   script:
-    - ls -la
-    - docker build -t codemonstersteam/website:0.0.1 .
+    - echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
+    - echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
+    - echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
+    - echo "CI_REGISTRY : ${CI_REGISTRY}"
+    - /kaniko/executor
+      --context "${CI_PROJECT_DIR}"
+      --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
+      --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}"
+  rules:
+    - if: $CI_COMMIT_TAG
\ No newline at end of file
-- 
GitLab


From 0c69bd0a6714124440c1474ccb320abb52a193e2 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 07:27:43 +0000
Subject: [PATCH 08/25] Update script

---
 .gitlab-ci.yml | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9c0bcc3..b2cff9e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -29,13 +29,14 @@ DockerBuild:
     name: gcr.io/kaniko-project/executor:v1.14.0-debug
     entrypoint: [""]
   script:
-    - echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-    - echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
-    - echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
-    - echo "CI_REGISTRY : ${CI_REGISTRY}"
+    - |
+        echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
+        echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
+        echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
+        echo "CI_REGISTRY : ${CI_REGISTRY}"
     - /kaniko/executor
       --context "${CI_PROJECT_DIR}"
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
       --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}"
   rules:
-    - if: $CI_COMMIT_TAG
\ No newline at end of file
+    - if: $CI_COMMIT_TAG
-- 
GitLab


From 6c2abe3e07bcb2e6fdd6f1d5963d1a83ed2148dc Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 07:41:03 +0000
Subject: [PATCH 09/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b2cff9e..f3e17b6 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,16 +1,14 @@
-image: python:3.9.17-buster
-
-before_script:
-  - pip install mkdocs-material
 stages:
   - build
   - docker
 
 Build:
   stage: build
+  image: python:3.9.17-buster
   # tags:
   #   - pip
   script:
+    - pip install mkdocs-material
     - mkdocs build
   artifacts:
     paths:
@@ -30,6 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
+        ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
         echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
         echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
-- 
GitLab


From 3b15fb4fe96c3985883d2abab6bcd9b546d210ac Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 11:14:01 +0000
Subject: [PATCH 10/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f3e17b6..3d09006 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -33,6 +33,7 @@ DockerBuild:
         echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
         echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
         echo "CI_REGISTRY : ${CI_REGISTRY}"
+        echo "CI_REGISTRY_PASSWORD : ${CI_REGISTRY_PASSWORD}"
     - /kaniko/executor
       --context "${CI_PROJECT_DIR}"
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
-- 
GitLab


From c1169be0b54652a7b154baa637967a1b05051992 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 12:00:45 +0000
Subject: [PATCH 11/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3d09006..9fa7d14 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,6 +19,7 @@ Build:
 DockerBuild:
   stage: docker
   variables:
+    CI_DEBUG_TRACE: "true"
     CI_REGISTRY_IMAGE: "codemonstersteam/${CI_PROJECT_NAME}"
     #CI_REGISTRY: ${AZURE_REGISTRY_USERNAME_DEV}.azurecr.io
     #CI_REGISTRY_USER: ${AZURE_REGISTRY_USERNAME_DEV}
@@ -34,6 +35,8 @@ DockerBuild:
         echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
         echo "CI_REGISTRY : ${CI_REGISTRY}"
         echo "CI_REGISTRY_PASSWORD : ${CI_REGISTRY_PASSWORD}"
+    - ls -l /kaniko/.docker/
+    - cat /kaniko/.docker/config.json
     - /kaniko/executor
       --context "${CI_PROJECT_DIR}"
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
-- 
GitLab


From 560d5671c95fb868fd76fc9a58d34af4595bacf8 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 12:09:17 +0000
Subject: [PATCH 12/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9fa7d14..bb39fd5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,6 +28,8 @@ DockerBuild:
     name: gcr.io/kaniko-project/executor:v1.14.0-debug
     entrypoint: [""]
   script:
+    - |
+      echo $DOCKER_CONFIG > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-- 
GitLab


From 7fbf9f6504c8447a66b428c460a54d3307861eeb Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 12:18:02 +0000
Subject: [PATCH 13/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bb39fd5..ce9c4c4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,7 +19,6 @@ Build:
 DockerBuild:
   stage: docker
   variables:
-    CI_DEBUG_TRACE: "true"
     CI_REGISTRY_IMAGE: "codemonstersteam/${CI_PROJECT_NAME}"
     #CI_REGISTRY: ${AZURE_REGISTRY_USERNAME_DEV}.azurecr.io
     #CI_REGISTRY_USER: ${AZURE_REGISTRY_USERNAME_DEV}
@@ -29,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      echo $DOCKER_CONFIG > /kaniko/.docker/config.json
+      echo "{$DOCKER_CONFIG}" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-- 
GitLab


From 896f54856fcdf1e55eb35391c0b4f2763efc75d4 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 12:24:56 +0000
Subject: [PATCH 14/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ce9c4c4..2be86bb 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      echo "{$DOCKER_CONFIG}" > /kaniko/.docker/config.json
+      - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
@@ -36,8 +36,9 @@ DockerBuild:
         echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
         echo "CI_REGISTRY : ${CI_REGISTRY}"
         echo "CI_REGISTRY_PASSWORD : ${CI_REGISTRY_PASSWORD}"
-    - ls -l /kaniko/.docker/
+    - ls -la /kaniko/.docker/
     - cat /kaniko/.docker/config.json
+    - echo "-------------------push-------------------"
     - /kaniko/executor
       --context "${CI_PROJECT_DIR}"
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
-- 
GitLab


From 78ca95541d6e278c64693b8943016c4e8d82da25 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 12:43:32 +0000
Subject: [PATCH 15/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2be86bb..383a53b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
+      - echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-- 
GitLab


From bec9ace2a3f5c79767abb6c37022ad2232f053f2 Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 15:59:15 +0300
Subject: [PATCH 16/25] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BD=20=D0=B1?=
 =?UTF-8?q?=D0=B0=D0=B3=20=D0=B2=20=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3?=
 =?UTF-8?q?=D0=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml          |  2 +-
 HELP-PIPELINE-MKDOCS.md | 21 +++++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 383a53b..a12bfac 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      - echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
+      echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
diff --git a/HELP-PIPELINE-MKDOCS.md b/HELP-PIPELINE-MKDOCS.md
index 2f58be2..4c4a838 100644
--- a/HELP-PIPELINE-MKDOCS.md
+++ b/HELP-PIPELINE-MKDOCS.md
@@ -1,22 +1,43 @@
 Pipeline for CD
+## install
+```
+pip install mkdocs-material
+```
+
 ## Serve
 ```
 mkdocs serve
 ```
+
 ## build
 ```
 mkdocs build
 ```
+
 ## Docker Build
 ````
 docker build -t codemonstersteam/website:0.0.1-RC36 .
 ````
+
 ## check
 ```
 docker run --name nginx -p 8082:80 codemonstersteam/website:0.0.1-RC36
 ```
+
 ## push
 ````
 docker push codemonstersteam/website:0.0.1-RC36
 kubectl apply -f k8s-deployment.yaml
 ````
+## GitLab CI/CD
+```
+docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
+```
+## Kaniko
+https://docs.gitlab.com/ee/ci/docker/using_kaniko.html
+
+```
+echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}"
+
+
+```
\ No newline at end of file
-- 
GitLab


From 3f2be32daf208491c6fbd286d40603703e70c930 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 13:21:31 +0000
Subject: [PATCH 17/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a12bfac..aea244e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
+      echo "$DOCKER_CONFIG" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-- 
GitLab


From f025266284659adcb6c804d319cb1865e79739d3 Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 13:38:03 +0000
Subject: [PATCH 18/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index aea244e..a12bfac 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,7 +28,7 @@ DockerBuild:
     entrypoint: [""]
   script:
     - |
-      echo "$DOCKER_CONFIG" > /kaniko/.docker/config.json
+      echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
     - |
         ls -l
         echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-- 
GitLab


From bb9366cf8a2579e2d01ad74c810a26328ab406bf Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 18:02:04 +0300
Subject: [PATCH 19/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=20=D1=88=D0=B0=D0=B3=20kubectl?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml          | 40 +++++++++++++++++++++-------------------
 HELP-PIPELINE-MKDOCS.md |  6 ++++--
 k8s-deployment.yaml     |  2 +-
 3 files changed, 26 insertions(+), 22 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a12bfac..3ceb9c4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,47 +1,49 @@
 stages:
   - build
   - docker
+  - deploy
 
-Build:
+build:
   stage: build
   image: python:3.9.17-buster
-  # tags:
-  #   - pip
   script:
     - pip install mkdocs-material
     - mkdocs build
   artifacts:
     paths:
       - site
-#  rules:
-#    - if: $CI_COMMIT_REF_NAME != $CI_DEFAULT_BRANCH
 
-DockerBuild:
+docker-build:
   stage: docker
   variables:
     CI_REGISTRY_IMAGE: "codemonstersteam/${CI_PROJECT_NAME}"
-    #CI_REGISTRY: ${AZURE_REGISTRY_USERNAME_DEV}.azurecr.io
-    #CI_REGISTRY_USER: ${AZURE_REGISTRY_USERNAME_DEV}
-    #CI_REGISTRY_PASSWORD: ${AZURE_REGISTRY_PASS_DEV}
   image:
     name: gcr.io/kaniko-project/executor:v1.14.0-debug
     entrypoint: [""]
   script:
     - |
       echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
-    - |
-        ls -l
-        echo "CI_PROJECT_DIR : ${CI_PROJECT_DIR}"
-        echo "CI_REGISTRY_IMAGE : ${CI_REGISTRY_IMAGE}"
-        echo "CI_COMMIT_TAG : ${CI_COMMIT_TAG}"
-        echo "CI_REGISTRY : ${CI_REGISTRY}"
-        echo "CI_REGISTRY_PASSWORD : ${CI_REGISTRY_PASSWORD}"
-    - ls -la /kaniko/.docker/
-    - cat /kaniko/.docker/config.json
-    - echo "-------------------push-------------------"
     - /kaniko/executor
       --context "${CI_PROJECT_DIR}"
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
       --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}"
   rules:
+#    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
     - if: $CI_COMMIT_TAG
+
+deploy:
+  stage: deploy
+  image:
+    name: bitnami/kubectl:latest
+    entrypoint: ['']
+  script:
+    - ls -l
+    - kubectl config get-contexts
+    - kubectl config use-context k8s.codemonsters.team
+    - kubectl get pods
+  dependencies:
+    - build
+    - docker
+  rules:
+#    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
+    - if: $CI_COMMIT_TAG
\ No newline at end of file
diff --git a/HELP-PIPELINE-MKDOCS.md b/HELP-PIPELINE-MKDOCS.md
index 4c4a838..eb29dca 100644
--- a/HELP-PIPELINE-MKDOCS.md
+++ b/HELP-PIPELINE-MKDOCS.md
@@ -21,7 +21,10 @@ docker build -t codemonstersteam/website:0.0.1-RC36 .
 
 ## check
 ```
-docker run --name nginx -p 8082:80 codemonstersteam/website:0.0.1-RC36
+docker run --name web-book -p 8082:80 codemonstersteam/web-book:0.0.1-RC5
+
+curl http://localhost:8082 
+
 ```
 
 ## push
@@ -39,5 +42,4 @@ https://docs.gitlab.com/ee/ci/docker/using_kaniko.html
 ```
 echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}"
 
-
 ```
\ No newline at end of file
diff --git a/k8s-deployment.yaml b/k8s-deployment.yaml
index bd69442..726ccac 100644
--- a/k8s-deployment.yaml
+++ b/k8s-deployment.yaml
@@ -35,7 +35,7 @@ spec:
       terminationGracePeriodSeconds: 10
       containers:
         - name: codemonsters-website
-          image: codemonstersteam/website:0.0.1-RC36
+          image: codemonstersteam/website:latest
           ports:
             - containerPort: 80
               name: nginx
-- 
GitLab


From 2d9b0d0acd85ad6df5789de5062c3902c977c3af Mon Sep 17 00:00:00 2001
From: Maxim Morev <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 15:03:19 +0000
Subject: [PATCH 20/25] Update .gitlab-ci.yml file

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3ceb9c4..b76ce9d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -43,7 +43,7 @@ deploy:
     - kubectl get pods
   dependencies:
     - build
-    - docker
+    - docker-build
   rules:
 #    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
     - if: $CI_COMMIT_TAG
\ No newline at end of file
-- 
GitLab


From cf8f1bf97c04a52b8146f274f1f6a5c7744423fe Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 18:42:09 +0300
Subject: [PATCH 21/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=20=D1=88=D0=B0=D0=B3=20kubectl?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml      | 3 ++-
 k8s-deployment.yaml | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3ceb9c4..dfa2263 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -40,7 +40,8 @@ deploy:
     - ls -l
     - kubectl config get-contexts
     - kubectl config use-context k8s.codemonsters.team
-    - kubectl get pods
+    - TAG=$CI_COMMIT_TAG && sed -i 's|${CI_REGISTRY_IMAGE}:tagname|${CI_REGISTRY_IMAGE}:'${TAG}'|' k8s-deployment.yaml
+    - kubectl apply -f k8s-deployment.yaml
   dependencies:
     - build
     - docker
diff --git a/k8s-deployment.yaml b/k8s-deployment.yaml
index 726ccac..f601bc3 100644
--- a/k8s-deployment.yaml
+++ b/k8s-deployment.yaml
@@ -35,7 +35,7 @@ spec:
       terminationGracePeriodSeconds: 10
       containers:
         - name: codemonsters-website
-          image: codemonstersteam/website:latest
+          image: codemonstersteam/web-book:tagname
           ports:
             - containerPort: 80
               name: nginx
-- 
GitLab


From 84bae9aa690fc44e840336f0b48492546147e461 Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Mon, 2 Oct 2023 19:08:36 +0300
Subject: [PATCH 22/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=20=D1=88=D0=B0=D0=B3=20kubectl?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 757269c..4a94bb2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -40,7 +40,7 @@ deploy:
     - ls -l
     - kubectl config get-contexts
     - kubectl config use-context k8s.codemonsters.team
-    - TAG=$CI_COMMIT_TAG && sed -i 's|${CI_REGISTRY_IMAGE}:tagname|${CI_REGISTRY_IMAGE}:'${TAG}'|' k8s-deployment.yaml
+    - TAG=$CI_COMMIT_TAG && sed -i "s/:tagname/:${TAG}/g" k8s-deployment.yaml
     - kubectl apply -f k8s-deployment.yaml
   dependencies:
     - build
-- 
GitLab


From 9b70732dab473444ab21ff9c646b7d541da141e1 Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Wed, 22 Nov 2023 22:39:15 +0300
Subject: [PATCH 23/25] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D1=80=D0=B0?=
 =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B0=D0=BD=D0=B0=20=D0=B3=D0=BB=D0=B0=D0=B2?=
 =?UTF-8?q?=D0=BD=D0=B0=D1=8F,=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D0=B1=D0=B7=D0=BE=D1=80=D0=BD=D0=B0?=
 =?UTF-8?q?=D1=8F.=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD?=
 =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BF=D0=B8=D1=81=D1=8C=20=D0=B2=20=D0=BB?=
 =?UTF-8?q?=D0=BE=D0=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 docs/index.md     | 77 ++++++++++++++++++++++++++---------------------
 docs/log/index.md |  3 ++
 docs/overview.md  | 51 +++++++++++++++++++++++++++++++
 3 files changed, 96 insertions(+), 35 deletions(-)
 create mode 100644 docs/overview.md

diff --git a/docs/index.md b/docs/index.md
index 4dc8263..f9e9f84 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,51 +1,58 @@
 ---
-title: Обзор
-description: О миссии и видении
+title: Начало
+description: Подбор статей и видосиков
 js: [{url: 'https://dartpad.dev/inject_embed.dart.js', defer: true}]
 ---
 
-<img
-style="padding: 30px; float: right; width: 400px"
-src="/Максим-Морев-на-стиле.jpg"
-alt="Codemonsters: автор : Максим Морев">
+## 5 октября, 2023: 5 основной кирпичик ООП: Объект-Значение
+Главное не говорить про DDD 😟
+Рассказал про базовые принципы,
+основной кирпичик ООП Объект-Значение
+Зацепил подход R.O.P. Railway Oriented Programming
+<iframe width="560" height="315" src="https://www.youtube.com/embed/-Y39J5UuAGE?si=GQ5J3e8e-cUU-ern" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
 
-Я знаю, что разработка может быть понятным, прагматичным, актуальным и искусно разработанным красивым решением.
-Код такого ПО сам по себе будет решать и проблему бизнеса и обучения новичков «Правильным» практикам.
+## 29 авгуcта, 2023: Как не стоит писать код: разбираем ошибки
+👾 [статья на tproger #2](https://tproger.ru/articles/kak-ne-stoit-pisat-kod-razbiraem-owibki) из серии статей про юзабельный код и рефакторинг.
 
-## На сайте вы познакомитесь:
-- с моей парадигмой «Правильной» разработки
-  и «Правильной» архитектуры сложных распределенных веб-приложений. Проверено на практике.
-- с рекомендациями для начинающих создателей.
-- с моими экспериментами, челенджами - так я учусь. Just For Fun.
+## 30 июня, 2023: Как написать чистый код и сделать жизнь проще
+👾 [статья на tproger #1](https://tproger.ru/articles/kak-napisat-chistyj-kod-i-sdelat-zhizn-proshh) из серии статей про юзабельный код и рефакторинг.
 
-Разработка - это супер интересно и весело.
 
-Я размещаю тут все самое полезное, что вытащил из разных источников и применил на практике.  
-Как правило - мои источники инженера - это книги, статьи, рекомендации коллег помноженные на практический опыт.  
-«Правильное ПО» - это не уникальные эксклюзивные истории - при этом так поступают редко и, очевидно, не все с ними знакомы даже несмотря на свой многолетний опыт исчисляемый 20ти летними практиками в корпорациях, стартапах и т.д.
+## 30 Марта, 2023 09:00: Подкаст «Техно.Логично». Китаев и Морев: как устроена разработка банковских продуктов
+Как меняется разработка продуктов в Газпромбанке?
 
-## Миссия {#mission}
+Важный вопрос, на который мы подготовили подробный ответ в новом эпизоде подкаста «Техно.Логично»🎙
 
-Цель этого ресурса — Поделиться опытом качественной прагматичной разработки по TDD,   
-DDD и другими лучшими инженерным практиками из жизни Software Craftsman-а. Поделиться этим опытом с тобой - будущий создатель и Software Craftsman.  
-А также собрать комьюнити из тех, для кого Software Craftsmanship - не просто два слова - а еще и плодотворное партнерство профессионалов. ;)
+Разобраться с продуктовой разработкой помогли герои выпуска:
 
-Друзья - присоединяйтесь - шарьте экспертизу - предлагаю запилить нечто достойное)
+🔹Роман Китаев, Исполнительный Вице-Президент – начальник Департамента технологий розничных некредитных продуктов
+🔹Максим Морев, технический директор Департамента технологий розничных некредитных продуктов, ИТ-Лидер стрима Госпроекты
 
-Open Source! This is the way.
+Наши гости обсудили:
+🔹зачем нужны автоматизированные банковские системы
+🔹что такое платформизация
+🔹почему Газпромбанк переходит на параллельную разработку
+🔹как программисты относятся к изменению процессов
+🔹инхаус-разработка или услуги вендора: что эффективнее
 
-## CodeMonsters: Максим Морев {#maxmorev}
+🎥
+<iframe width="560" height="315" src="https://www.youtube.com/embed/f0sMFIRpH-o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
 
-автор проекта CodeMonsters.dev.
+## 18 Апреля, 2023 15:15: выступил на Jpoint 2023 с докладом «DDD в действии»
+Подход к разработке, о котором я [рассказывал на Jpoint 2023](https://jpoint.ru/talks/668277d4982a4cfeb47cc30a93465a69/), мне помог обеспечить качественное деливери на позиции ТимЛида проекта МВНО в ГПБ с сентября 2020.
 
-С 2002-го года со страстью погрузился в мир веб-разработки и linux.  
-Linux фан.  
-Изучал искусство и фотографию. Работал в рекламе и коммерческим фотографом.  
-Изучает и применяет инженерные практики в реальных условиях.  
-Инженер с расширенным кругозором и тягой к прекрасному.  
-Software Craftsmanship энтузиаст.  
-TDD, DDD Advocate.  
-Clean Code Advocate.
+Помог настроить процессы и разработку на позиции ТехЛида проекта "Цифровой Рубль" начиная с сентября 2022-го и помогает мне сейчас на позиции CTO стрима Госпроекты (Цифровой Рубль, Биометрия)
 
-Идея создать проект возникла во время подготовки к выступлению на [Tech Lead Conf 2022](https://techleadconf.ru/2022/abstracts/9228).  
-Автор считает, что в сети недостаточно практичных, простых и грамотных эссенций о разработке сложных приложений.
+Доклад-руководство с примерами на Kotlin по внедрению предметно-ориентированного проектирования (Domain Driven Design) в команду и обращения ее в безумную машину по доставке чистого кода. С собой вы унесете паттерн приложения с тестами на бизнес-логике и кучу полезных рекомендаций, которые работают.
+
+Спикер расскажет, как коммуникация, документация, юзабильность кода, функциональное программирование, Type Driven Development, Test Driven Development поможет выйти на новый уровень.
+
+Сложности:
+
+не говорить про DDD;  
+внедрение кукбука в существующей команде;  
+рефакторинг существующего «старого» кода по кукбуку.  
+
+## 16 марта, 2023: Как я делал внутренний cookbook по тому, как писать код (и результат можно скачать)
+[Статья на Хабре](https://habr.com/ru/companies/gazprombank/articles/722620/)  
+О том как я сделал кукбук с большим количеством примеров, чтобы объяснить культуру и методологию не через абстракции, а очень предметно. Начал вроде как просто для себя, оказалось полезно — и внедрил в работу команды.
diff --git a/docs/log/index.md b/docs/log/index.md
index 83f4252..aad3746 100644
--- a/docs/log/index.md
+++ b/docs/log/index.md
@@ -78,6 +78,9 @@ https://jpoint.ru/talks/668277d4982a4cfeb47cc30a93465a69/
 🎥
 <iframe width="560" height="315" src="https://www.youtube.com/embed/f0sMFIRpH-o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
 
+## 16 марта, 2023: Как я делал внутренний cookbook по тому, как писать код (и результат можно скачать)
+[Статья на Хабре](https://habr.com/ru/companies/gazprombank/articles/722620/)  
+О том как я сделал кукбук с большим количеством примеров, чтобы объяснить культуру и методологию не через абстракции, а очень предметно. Начал вроде как просто для себя, оказалось полезно — и внедрил в работу команды.
 
 ## 21 Февраля, 2023 19:43: Статья 👨‍💻Личный опыт бэкенд-разработчика: от фаната Linux до техлида на GPB Space
 
diff --git a/docs/overview.md b/docs/overview.md
new file mode 100644
index 0000000..1987a6d
--- /dev/null
+++ b/docs/overview.md
@@ -0,0 +1,51 @@
+---
+title: Обзор
+description: О миссии и видении
+js: [{url: 'https://dartpad.dev/inject_embed.dart.js', defer: true}]
+---
+
+<img
+style="padding: 30px; float: right; width: 400px"
+src="/Максим-Морев-на-стиле.jpg"
+alt="Codemonsters: автор : Максим Морев">
+
+Я знаю, что разработка может быть понятным, прагматичным, актуальным и искусно разработанным красивым решением.
+Код такого ПО сам по себе будет решать и проблему бизнеса и обучения новичков «Правильным» вещам.
+
+## На сайте вы познакомитесь:
+- с моей парадигмой «Правильной» разработки
+  и «Правильной» архитектуры сложных распределенных веб-приложений. Проверено на практике.
+- с рекомендациями для начинающих создателей.
+- с моими экспериментами, челенджами - так я учусь. Just For Fun.
+
+Разработка - это супер интересно и весело.
+
+Я размещаю тут все самое полезное, что вытащил из разных источников и применил на практике.  
+Как правило - мои источники инженера - это книги, статьи, рекомендации коллег помноженные на практический опыт.  
+«Правильное ПО» - это не уникальные эксклюзивные истории - при этом так поступают редко и, очевидно, не все с ними знакомы даже несмотря на свой многолетний опыт исчисляемый 20ти летними практиками в корпорациях, стартапах и т.д.
+
+## Миссия {#mission}
+
+Цель этого ресурса — Поделиться опытом качественной прагматичной разработки по TDD,   
+DDD и другими лучшими инженерным практиками из жизни Software Craftsman-а. Поделиться этим опытом с тобой - будущий создатель и Software Craftsman.  
+А также собрать комьюнити из тех, для кого Software Craftsmanship - не просто два слова - а еще и плодотворное партнерство профессионалов. ;)
+
+Друзья - присоединяйтесь - шарьте экспертизу - предлагаю запилить нечто достойное)
+
+Open Source! This is the way.
+
+## CodeMonsters: Максим Морев {#maxmorev}
+
+автор проекта CodeMonsters.dev.
+
+С 2002-го года со страстью погрузился в мир веб-разработки и linux.  
+Linux фан.  
+Изучал искусство и фотографию. Работал в рекламе и коммерческим фотографом.  
+Изучает и применяет инженерные практики в реальных условиях.  
+Инженер с расширенным кругозором и тягой к прекрасному.  
+Software Craftsmanship энтузиаст.  
+TDD, DDD Advocate.  
+Clean Code Advocate.
+
+Идея создать проект возникла во время подготовки к выступлению на [Tech Lead Conf 2022](https://techleadconf.ru/2022/abstracts/9228).  
+Автор считает, что в сети недостаточно практичных, простых и грамотных эссенций о разработке сложных приложений.
-- 
GitLab


From 511cb88d4e41f96cd5cd9f53ebe3ee2953d262e1 Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Wed, 22 Nov 2023 22:49:39 +0300
Subject: [PATCH 24/25] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?=
 =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B7=D0=B0=D0=BF=D0=B8=D1=81=D1=8C=20?=
 =?UTF-8?q?=D0=B2=20=D0=BB=D0=BE=D0=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 docs/log/index.md | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/docs/log/index.md b/docs/log/index.md
index aad3746..db2cbd8 100644
--- a/docs/log/index.md
+++ b/docs/log/index.md
@@ -4,6 +4,14 @@ description: Лог разработки
 ---
 
 Лог разработки, публикаций
+
+## 5 октября, 2023: 5 основной кирпичик ООП: Объект-Значение
+Главное не говорить про DDD 😟
+Рассказал про базовые принципы,
+основной кирпичик ООП Объект-Значение
+Зацепил подход R.O.P. Railway Oriented Programming
+<iframe width="560" height="315" src="https://www.youtube.com/embed/-Y39J5UuAGE?si=GQ5J3e8e-cUU-ern" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
+
 ## 14 Июля, 2023 в 09:00: Осенило как улучшить производство стрима
 
 У нас ярко вырисовались три продукта    
@@ -31,13 +39,11 @@ description: Лог разработки
 Очень рад, что удалось набрать хороших ребят и из них собирать сквады по продуктам  
 результат уже вижу по течению задач в джирке  
 
-## 30 Июня, 2023 в 12:50: Как написать чистый код и сделать жизнь проще
-🧙
-Вышла [первая статья](https://tproger.ru/articles/kak-napisat-chistyj-kod-i-sdelat-zhizn-proshh) из серии статей про юзабельный код с тестами и рефакторинг по кукбуку.
-👾
-
-[tprogger: Как написать чистый код]([https://tproger.ru/articles/kak-napisat-chistyj-kod-i-sdelat-zhizn-proshh)
+## 29 авгуcта, 2023: Как не стоит писать код: разбираем ошибки
+👾 [статья на tproger #2](https://tproger.ru/articles/kak-ne-stoit-pisat-kod-razbiraem-owibki) из серии статей про юзабельный код и рефакторинг.
 
+## 30 июня, 2023: Как написать чистый код и сделать жизнь проще
+👾 [статья на tproger #1](https://tproger.ru/articles/kak-napisat-chistyj-kod-i-sdelat-zhizn-proshh) из серии статей про юзабельный код и рефакторинг.
 
 ## 8 Июня, 2023 15:15: ☺️ Из IT в фэшн-фото, из фэшн-фото в IT
 В блоге Газпромбанка на «Коде Дурова» вышла [история Максима](https://kod.ru/ya-ushel-iz-it-v-feshn-foto-no-vernulsya-obratno) — человека,   
-- 
GitLab


From 63c087ef501282e42e4c80caba187effcc0fad75 Mon Sep 17 00:00:00 2001
From: huggybear <maxim@codemonsters.team>
Date: Wed, 7 Feb 2024 11:25:19 +0300
Subject: [PATCH 25/25] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE?=
 =?UTF-8?q?=D1=82=D0=B0=D0=BD=20=D0=BF=D0=B0=D0=B9=D0=BF=20=D0=B8=20=D1=83?=
 =?UTF-8?q?=D0=B1=D1=80=D0=B0=D0=BD=D0=BE=20=D1=81=D0=BB=D0=BE=D0=B2=D0=BE?=
 =?UTF-8?q?=20=D0=B2=20=D1=80=D0=B8=D0=B4=D0=BC=D0=B8=D1=85=D0=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitlab-ci.yml | 8 ++------
 docs/index.md  | 2 +-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4a94bb2..aa0695e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -28,8 +28,7 @@ docker-build:
       --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
       --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}"
   rules:
-#    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-    - if: $CI_COMMIT_TAG
+    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
 
 deploy:
   stage: deploy
@@ -38,13 +37,10 @@ deploy:
     entrypoint: ['']
   script:
     - ls -l
-    - kubectl config get-contexts
-    - kubectl config use-context k8s.codemonsters.team
     - TAG=$CI_COMMIT_TAG && sed -i "s/:tagname/:${TAG}/g" k8s-deployment.yaml
     - kubectl apply -f k8s-deployment.yaml
   dependencies:
     - build
     - docker-build
   rules:
-#    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
-    - if: $CI_COMMIT_TAG
\ No newline at end of file
+    - if: $CI_COMMIT_TAG && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
\ No newline at end of file
diff --git a/docs/index.md b/docs/index.md
index 4dc8263..8942acb 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -9,7 +9,7 @@ style="padding: 30px; float: right; width: 400px"
 src="/Максим-Морев-на-стиле.jpg"
 alt="Codemonsters: автор : Максим Морев">
 
-Я знаю, что разработка может быть понятным, прагматичным, актуальным и искусно разработанным красивым решением.
+Я знаю, что разработка может быть понятным, прагматичным, актуальным и искусно разработанным решением.
 Код такого ПО сам по себе будет решать и проблему бизнеса и обучения новичков «Правильным» практикам.
 
 ## На сайте вы познакомитесь:
-- 
GitLab