This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
самый_простой_пример_ci_cd [2023/02/13 05:46] val [Шаг 2. Разворачиваем сервис Squid] |
самый_простой_пример_ci_cd [2023/02/13 08:46] (current) val |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Самый простой пример CI/CD ====== | ====== Самый простой пример CI/CD ====== | ||
+ | |||
+ | * [[https://habr.com/ru/post/716454/]] | ||
Однажды подслушано: | Однажды подслушано: | ||
Line 33: | Line 35: | ||
В настройках системы назначьте не менее 4096 МБ основной памяти (4GB RAM), подключите сетевой адаптер "мостом" к сетевой карте Вашего компьютера (хост системы), и запустите VM. | В настройках системы назначьте не менее 4096 МБ основной памяти (4GB RAM), подключите сетевой адаптер "мостом" к сетевой карте Вашего компьютера (хост системы), и запустите VM. | ||
- | Проведите инсталляцию системы, в большинстве экранов можно оставить значения по умолчанию (GUI не обязателен) установите сервис ssh. Можно оставить вариант автоматического (через сервис dhcp) назначения ip параметров. После финальной перезагрузки, подключитесь к консоли системы и узнайте назначенный ей ip адрес командой ip a. | + | Проведите инсталляцию системы, в большинстве экранов можно оставить значения по умолчанию (GUI не обязателен) установите сервис SSH. Можно оставить вариант автоматического (через сервис dhcp) назначения ip параметров. После финальной перезагрузки, подключитесь к консоли системы и узнайте назначенный ей ip адрес командой ip a. |
- | Если используете мой образ, то нужно подключиться к VM после запуска (учетная запись student/password), поднять привилегии, настроить получение ip параметров по dhcp и активировать интерфейс, выполнив команды: | + | Если используете мой образ, то нужно подключиться к VM после запуска (учетная запись student/password), поднять привилегии, настроить получение ip параметров по dhcp, активировать интерфейс и выяснить назначенный системе ip, выполнив команды: |
<code> | <code> | ||
Line 53: | Line 55: | ||
</code> | </code> | ||
- | Последняя инструкция дана "на всякий случай", для исключения возможных предупреждений о невозможности получить ip по hostname (выполнить ее можно на 2-м шаге, скопировав после подключения к VM по SSH). | + | Последняя инструкция дана для исключения предупреждений о невозможности получить ip по hostname сервисов sudo и proxy Squid (выполнить ее можно на 2-м шаге, скопировав после подключения к VM по SSH). |
===== Шаг 2. Разворачиваем сервис Squid ===== | ===== Шаг 2. Разворачиваем сервис Squid ===== | ||
- | Для удобства копирования команд из статьи, подключитесь к VM используя ssh клиент. Если у Вас Windows на домашнем компьютере, можно использовать PuTTY: | + | Для удобства копирования команд из статьи, подключитесь к VM используя SSH клиент. Если у Вас Windows на домашнем компьютере, можно использовать PuTTY: |
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html | https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html | ||
Line 155: | Line 157: | ||
</code> | </code> | ||
- | "Щелкнув" по названию проекта убедитесь, что все файлы из каталога /etc/squid появились в GitLab. Для изменения файлов конфигурации теперь можно не подключаться через ssh к VM с сервисом Squid, а отредактировать прямо здесь через "Web IDE". Остается вопрос, как эти изменения попадут в VM с сервисом Squid? | + | "Щелкнув" по названию проекта убедитесь, что все файлы из каталога /etc/squid появились в GitLab. Для изменения файлов конфигурации теперь можно не подключаться через SSH к VM с сервисом Squid, а отредактировать их прямо здесь через "Web IDE". Остается вопрос, как эти изменения попадут в VM с сервисом Squid? |
===== Шаг 5. GitLab Runner ===== | ===== Шаг 5. GitLab Runner ===== | ||
Line 177: | Line 179: | ||
</code> | </code> | ||
- | Разрешим пользователю gitlab-runner выполнять команды с повышенными привилегиями, необходимые для тестирования, копирования и применения новой конфигурации proxy. | + | Разрешим пользователю gitlab-runner выполнять команды с повышенными привилегиями, необходимые для тестирования, копирования и применения новой конфигурации proxy: |
<code> | <code> | ||
debian:~# nano /etc/sudoers.d/squid-sudo | debian:~# nano /etc/sudoers.d/squid-sudo | ||
Line 184: | Line 186: | ||
</code> | </code> | ||
- | Проверим, все ли работает. Для этого добавьте домен какого нибудь сайта в файл permit_domains.txt используя “Web IDE” в GitLab и выполните Commit изменений в ветку main. Далее, с правами пользователя gitlab-runner, склонируйте проект, зайдите в его каталог и выполните команды тестирования, копирования и применения новой конфигурации: | + | Проверим, все ли работает. Для этого добавьте домен какого-нибудь сайта в файл permit_domains.txt используя “Web IDE” в GitLab и выполните Commit изменений в ветку main. Далее, с правами пользователя gitlab-runner, склонируйте проект, зайдите в его каталог и выполните команды тестирования, копирования и применения новой конфигурации: |
<code> | <code> | ||
Line 282: | Line 284: | ||
и нажмите на кнопку "Commit Changes". | и нажмите на кнопку "Commit Changes". | ||
- | Добавьте домен еще какого нибудь сайта в файл permit_domains.txt используя “Web IDE” в GitLab и выполните Commit изменений в ветку main. | + | Добавьте домен еще какого-нибудь сайта в файл permit_domains.txt используя “Web IDE” в GitLab и выполните Commit изменений в ветку main. |
+ | |||
+ | Убедитесь, что в разделе CI/CD->Pipelines проекта значение Status установилось в passed, в браузере открывается новый сайт, а добавленный домен присутствует в файле: | ||
+ | |||
+ | <code> | ||
+ | debian:~# cat /etc/squid/permit_domains.txt | ||
+ | </code> | ||
- | Убедитесь, что в разделе CI/CD->Pipelines проекта значение Status установилось в passed и убедитесь, что в браузере открывается новый сайт. Если так, поздравляю, Вы только что написали свой первый CI/CD Pipeline! | + | Если так, поздравляю, Вы только что написали свой первый CI/CD Pipeline! |
===== Итоги ===== | ===== Итоги ===== | ||