Селекторы позволяют точечно выбирать ресурсы в Kubernetes и управлять релизами Helm. Это основа фильтрации, автоматизации и CI/CD сценариев.
В этом посте: равенство и исключение, множественный выбор и фильтрация, проверка наличия ключей и работа с Helm-релизами. Минимум синтаксиса — максимум контроля над кластерами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥5👍4
•
Push
— центральный сервер сам подключается к хостам и накатывает плейбуки. Полный контроль, удобные логи, но нужен доступ ко всем серверам.
• Pull
— каждый сервер тянет конфиги из git и применяет локально. Подходит для распределённых систем, но сложнее отслеживать ошибки и версии.🔥 — если узнал что-то новое
🤝 — если уже их использовал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6🤝5❤4
Vault
позволяет централизованно хранить секреты и управлять доступом к ним. Больше никаких паролей в коде или конфиге — всё под контролем политик и токенов.В этом посте:
• Устанавливаем и запускаем Vault в dev-режиме.
• Сохраняем секреты через vault kv put и достаём их обратно.
• Создаём политику доступа с ограничением прав.
• Разбираем, как подключать авторизацию под разные окружения.
Это дает DevOps-командам безопасный инструмент для работы с чувствительными данными.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍6🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Можно запускать Docker-команды без установки на локальную машину: тестировать образы, сетевые настройки и связку контейнеров. Отличный инструмент для обучения и быстрых экспериментов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4🔥4
Ошибки в инфраструктурном коде могут дорого стоить. Поэтому вместо ручной проверки добавляем шаги terraform validate и terraform plan прямо в CI/CD — код проверяется автоматически при каждом коммите.
В этом посте:
• Настраиваем шаги init → validate → plan.
• Используем -no-color, чтобы логи CI были читаемыми.
• Сохраняем план в файл для последующего аппрува.
• Подключаем всё в GitHub Actions workflow.
Так мы ловим ошибки до применения изменений и минимизируем риск случайных поломок.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🔥4
Параллельный запуск джобов в GitHub Actions с matrix!
Нужно проверить код на нескольких версиях Python? Вместо дублирования job используем matrix — он сам создаст нужные окружения и прогонит тесты параллельно.
1. Базовое определение job
Создаём задачу test, которая работает на Ubuntu.
2. Добавляем matrix
Matrix запускает job на каждой указанной версии Python.
3. Готовим окружение
Клонируем репозиторий и ставим Python версии из matrix.
4. Запуск тестов
Тесты выполняются параллельно на всех версиях Python.
🔥 В итоге, один
➡️ DevOps Ready | #практика
Нужно проверить код на нескольких версиях Python? Вместо дублирования job используем matrix — он сам создаст нужные окружения и прогонит тесты параллельно.
1. Базовое определение job
jobs:
test:
runs-on: ubuntu-latest
Создаём задачу test, которая работает на Ubuntu.
2. Добавляем matrix
strategy:
matrix:
python-version: [3.8, 3.9, 3.10]
Matrix запускает job на каждой указанной версии Python.
3. Готовим окружение
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
Клонируем репозиторий и ставим Python версии из matrix.
4. Запуск тестов
- run: pytest
Тесты выполняются параллельно на всех версиях Python.
🔥 В итоге, один
job
с matrix
заменяет кучу дублирующегося кода и ускоряет CI/CD. Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍5🔥5
.env
упрощает хранение секретов и настроек, а при запуске можно гибко подменять значения прямо из CLI или через fallback в docker-compose.yml. Это делает конфигурацию гибкой и удобной.В этом посте:
• Используем .env для вынесения паролей и логинов.
• Переопределяем переменные при запуске.
• Добавляем дефолтные значения через подстановки.
• Разносим окружения на отдельные env_file.
Это упрощает работу с проектами и позволяет быстро переключаться между dev, staging и prod без правки кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🔥4