Как стать автором
Обновить
2
0
Евгений Игнатов @Merifri

DevOps/SysAdm

Отправить сообщение

Благодарю. Пошёл делать бекап :)

В свете последних событий очень инетересует, есть ли смысл переезжать из Cloud в Jira/Confluence Server, и есть ли возможность сделать так, чтобы они не превратились в тыкву в случае отзыва/прекращения действия лицензий? База довольно большая и переезд на аналоги выглядит болезненным.

А если 90%+ скрипта все же будет завязано на использовании Shell,

То лаконичнее и удобнее использовать чистый shell скрипт, а не Python.


ну а если понадобится «ls -R»

И потом парсить .output в python? Красиво получится, да. А если вместо предложенного варианта не использовать однострочник с list comprehension, то можно написать читаемый, понятный код.

Как представлю танцы новой команды аутсорсеров над проектом без документации, в котором используется такое решение…
(спустя… часов дебага)
Кто, говорите, письма отправляет? PostgreSQL???

Конечно, их нельзя сравнивать. Оба инструмента могут прекрасно работать вместе.

Как пример совместного использования, который вполне может существовать и будет далеко не самым плохим решением:
— с помощью ansible разворачивается инфраструктура для разработки — git-сервер, сервер для тестов с докером, настраивается окружение для запуска докера на продакшн-серверах
— в ci-пайплайне проект собирается в докер-образ, тестируется
— с помощью ansible, запущенного внутри докер-контейнера (как часть процесса ci/cd), docker-образ выкатывается в продакшн.
Ansible-плейбуки прекрасно тестируются в виртуальных машинах (vagrant/virtualbox), либо в докере. Значимые изменения в скриптах — повод прогнать всё локально. Обновили ansible — прогнали плейбук, поправили deprecated warnings. Проверили ещё раз и отправили на прод.

У Яндекса есть пример скрипта для добавления сотрудников вот здесь

Это может быть не всегда удобно.
Например, если гоняешь большие объемы данных — датасеты, всякие докер-образы и т.п.
Во-первых, меньшая скорость. Во-вторых, трафик на недорогих VPS, как правило, лимитирован — т.е. дополнительные затраты.

А если делить трафик — то там можно уже и анонимность прикрутить при желании (например, поставить tor-proxy за vpn).
Want to build this stuff? Gonna need a system no later than Windows XP and an old ass version of Visual Studio....

Во-первых, для десктопа отлично подходит ветка testing. Из плюшек получаем почти rolling release (незначительная задержка на время заморозки пакетов перед новым релизом, обновления проходят как правило безболезненно).
Во-вторых, многие инструменты для разработки имеют свои собственные репозитории, откуда всегда можно стянуть актуальные версии.


А для ЯП вообще удобно использовать менеджеры версий. Для многих языков такое есть, можно взглянуть хоть на универсальный asdf — список плагинов

Нет, ну alpine на сервере это совсем не серьезно. Тут очень много причин, почему это довольно рискованная затея.
А вот для докера и правда очень удобно. Конечно, зависит в первую очередь от приложений, назначения образа. Тянуть 500+МБ не всегда хочется, и не всегда удобно.
К примеру, в докере могут храниться вспомогательные скрипты (не сильно требовательные к окружению) которые периодически будут запускаться в кластере. Для небольших С/Go/Rust/… приложений я бы также выбрал alpine, если нет желания собирать from scratch.
Вряд ли скоро мы увидим кастомные шаблоны. Эта фича запланирована к релизу 11.3, кажется.
С другой стороны, у Microsoft есть возможность сделать GitHub лучше. Хотя бы более плотно интегрировать свои инструменты (особенно облако azure) с GitHub (конечно же, при этом не препятствовать интеграции/развитию остальных продуктов).
Да, есть. Мигрирует и wiki, и issue, и pr.
docs.gitlab.com/ce/user/project/import/github.html
К сожалению, в CE есть только push mirroring.

Узнать, кто занял порт, можно одной из следующих команд:


ss -p state listening '( sport = :443 )'
ss -tlp '( sport = :443 )'
ss -p state listening '( sport = :http or sport = :https )'

Процесс:


ss -4tlp | grep nginx

Можно ещё добавить:


ss -tlp '( sport = :443 )' | tr -d '\t'

если на дисплее не помещается :-)

В документации и handbook-е Debian упоминается, что apt предпочтителнее именно для интерактивного использования (присутствует цветной вывод, индикатор выполения).


Инструмент apt совмещает функциональность apt-get и apt-cache, а также по умолчанию использует красивый цветной формат вывода, что очень удобно. Для использования в сценариях или для продвинутого использования предпочтительнее использовать apt-get (а иногда он просто необходим). link

Да и при попытке использования в неинтерактивном режиме он выдаст warning:


WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Насколько помню, на эти опции наткнулся благодаря автодополнению:


$ apt install --
--allow-change-held-packages   --ignore-missing
--allow-downgrades             --install-recommends
--allow-insecure-repositories  --install-suggests
--allow-remove-essential       --only-upgrade
--allow-unauthenticated        --print-uris
--arch-only                    --purge
--assume-no                    --reinstall
--assume-yes                   --remove
--auto-remove                  --show-progress
--download                     --show-upgraded
--download-only                --simulate
--dry-run                      --solver
--fix-broken                   --target-release
--fix-missing                  --trivial-only
--fix-policy                   --upgrade
--force-yes                    --verbose-versions
--ignore-hold                  

Может и не со всеми, но с указанными вами задачами точно справится.
apt install package --install-recommends=no
И apt remove package --purge тоже умеет.

1

Информация

В рейтинге
Не участвует
Откуда
Ростов-на-Дону, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

System Administration, DevOps
Lead
От 500 000 ₽
Git
Python
Linux
Docker
Nginx
Database
Bash
High-loaded systems
Kubernetes
CI/CD