Блог

30. Май 2024, 00:22

Автоматическая миграция репозиториев из gitlab на свой сервер git

  1. Все совпадения случайны
  2. Действия могут быть деструктивны и выполняются на свой страх и риск

Представим следующее: дружелюбный gitlab.com уведомил нас, что в ближайшее время наши с ним пути разойдутся и нам пора собирать вещички.

Проблема осложняется тем, что репозиториев в нашем аккаунте гитлаба вагон и маленькая тележка.

На наше счастье у нас уже есть свой сервер git с блекджеком и всем остальным на базе selfhosted gitea (но на самом деле реализация сервера не сильно принципиальна). Все, что нам нужно – перенести репозитории со всей историей, ветками и тегами.

Читать дальше

26. Дек 2022, 20:23

Изменения в Ansible в RHEL9

Возникла недавно задача по развертыванию сервиса в RHEL9 и я столкнулся с тем что в RHEL9 выпилен ansible-engine в виде отдельного репозитория и теперь используется пакет ansible-core, входящий в базовый репозиторий.

В чем различие: ansible-core поддерживает только 127 базовых модулей типа dnf, copy template и т.д.. Все остальное вынесено в коллекции.

А тут мне понадобился модуль sysctl, для того, чтобы включить IP forwarding.

До текущего момента я старался избегать использования коллекций. Скажем так, по религиозным причинам..

В общем-то ничего страшного, если речь идет о не очень большом количестве кода. Можно обойтись модулем shell и даже сделать это идемпотентно, но это означает, что вместо одного task будет 3 или 4. И это даже можно вынести в отдельную роль и т.п….

Но если мы имеем на руках репозиторий размером в несколько сот Мб? С кучей ролей, собиравшийся годами и используемый для RHEL7/8/9. Лично на меня от потенциального объема исправлений накатывала дикая печаль.

Читать дальше

28. Авг 2022, 05:01

Приключения домена andrdi.com

Безотносительно моих политических убеждений..

Получил в марте письмо от регистратора:

… For those who will still be affected by our decision to terminate Namecheap services to Russia, we are extending the termination date to three weeks from today. Please make sure you have moved your services to another provider by March 22, 2022. …

Читать дальше

18. Май 2021, 18:37

Подсказки по работе с Jq

Небольшой набор приемов по работе с утилитой jq.

Циклическое обращение ко всем элементам получаемого массива (к примеру, получаем имя каждого элемента)

$ command | jq '.[].name'

select – выборка элементов по диапазону значений (например все элементы в заданном диапазоне дат)

$ command | jq '.[].created_at | select(. >= "2021-05") | select(. <= "2021-06")'
Читать дальше

31. Мар 2021, 21:03

Запуск Ansible из Terraform

Ниже один из вариантов как это сделать.

Примерная структура проекта

.
├── ansible
│   ├── ansible.cfg
│   ├── group_vars
│   │   └── all
│   ├── roles
│   │   └── role_1
│   │   └── .....
│   │   └── role_n
│   └── site.yml
│
└── terraform
    ├── providers.tf
    ├── inventory.tpl
    ├── localfile.tf
    ├── ....
    ├── secrets.auto.tfvars
    └── variables.tf

В каталоге проекта находятся каталоги ansible и terraform.

Terraform, при старте, с помощью провайдера local, генерирует в каталоге ansible inventory-файл hosts и запускает плейбук.

Читать дальше

12. Мар 2021, 12:13

Создание файлового swap в Linux

В последнее время слишком часто мне это приходится делать, надоело гуглить, поэтму без лишних слов:

Создаем файл swap в корне и выставить ему правильные права

# touch /swap
# chmod 600 /swap
Читать дальше

© andrdi.com 2020