Как стать автором
Обновить
58
0
Serge @snp

Пользователь

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

По таким данные проходят: TOPK, также с ними, например, совместимы переходники CANDYEIC. Другие производители их тоже делают (PZOZ из коммента выше).


Должны выглядеть так, по 5 контактов в 2 ряда:



В одном положении данные проходят. Если перевернуть на 90 градусов, то только зарядка. Ну и USB3, понятно, не работает.

Например то не так, что в Jinja придумали свой убогий недо-язык по мотивам питона. А mako использует внутри себя, фактически, тот же самый Python со всеми его возможностями.


И, скорее всего, при выборе Mako не было бы проблемы с конвертацией типов (см. коммент amarao).

вкладки уже реализованы

Откройте для себя tmux.

Жвачкой залепили датчики в новопостроенном метро (1987 год), а государство, вполне в китайском стиле, просто её запретило везде, в т.ч. ввозить из-за границы.


Советую книгу первого премьер-министра Сингапура Ли Куан Ю «Из третьего мира — в первый», очень интересная.

Спутали печати, в Азии такое бывает, у меня тоже случалось. Но если больше 30 дней задержаться, были бы проблемы, независимо от печати.

можно съездить в соседнюю Малайзию (безвиз на 90 дней для россиян)

30 дней, а не 90.

А что там с fluent-bit, подробнее расскажете?

Да, знаю про неё, жду. Но пока не выпустили — по факту нет.


Ну и UHK не ортолинейная — кнопки ступеньками. Это жирный минус, конечно.


Но мне ещё понравился там модуль с 3 кнопками и микротрекболом — это очень интересная идея, я такого не встречал нигде.

Интересно, а как они коннектятся с каждой кнопкой? Она через эти проводники передаёт при нажатии какой-то сложный сигнал?

О! У них там трекболы встроены, это очень круто.


Почему 99% разработчиков эргономичных клавиатур не поймут до сих пор, что переносить руку с клавиатуры на мышь/touchpad это жутко неэргономично?


Если бы в Dactyl или подобный проект встроили трекпоинт, это было бы идеальное решение. Трекбол тоже можно, но он похуже, т.к. надо больше движений пальцами.

В /etc/systemd/journald.conf (или в /etc/systemd/journald.conf.d/whatever.conf):


[Journal]
Storage=volatile
А скрипты идемпотентными сами по себе вы не сделаете, потому что надо как-то репортить changed в Ansible, а у shell нет критериев для этого.

Да ладно. Есть changed_when. Типа такого:


- command: foo
  register: foo_result
  changed_when: not foo_result.stdout|regex_search("\\n\s+No migrations to apply")
  notify: systemctl restart foo.target

Выглядит не очень — согласен. Но всё там идемпотентно и оно работает. Причёсывать и писать модуль django_migrate — ну вот хз. По каждому чиху модуль пилить? Разве что если есть время и перфекционизм.

when.… changed называется handler

Вот не факт. В chef есть нотифаи :immediate, а в ансибле такого не завезли.


meta: flush_handlers тоже не всегда годится, т.к. нельзя отдельные хендлеры дёрнуть, только все разом в очереди.

Command это для примера, разумеется.


Не идемпотентно, транспорт на баше

Command не запускает шелл (shell запускает). А при желании, можно и запуск внешних скриптов сделать абсолютно идемпотентно.

В апстрим уже не сделаете

Почему?

Ну вот я не вижу смысла инклюдить всю роль целиком без указания конкретного таска. Я бы так ни за что не сделал. Потому что такое выносится в play, там ему и место.


Если include_role с заданным таском (как в моих комментах выше), то этот таск пишется с расчётом, что его будут инклюдить из других ролей. Поэтому с переменными аккуратно обращаюсь.


Ну и опять же, я не топлю за include_role повсюду — по опыту, такая необходимость возникает редко. Например, для добавления кастомных apt репозиториев.


apt_repo не годится, т.к. не умеет в deb822 добавлять. Но когда будет время, я всё же модуль напишу, может даже PR в апстрим сделаю.


И когда модуль будет готов, то все include_role удобно заменятся на модуль.

Ага, понял, ну это, в целом, не для ансибла задача. Т.к. нельзя на свиче запускать код. Т.е. каждый хост в inventory — это машинка, куда можно по SSH зайти и запустить там модуль.


Но если надо, то можно просто на localhost запускать. Т.е. будет что-то такое:


- hosts: localhost
  gather_facts: false
  vars:
    switches:
      - sw1
      - sw2
      - sw3
  tasks:
    - command: "check_ports {{ item }}"
      loop: "{{ switches }}"
      register: switch_ports_status

    - command: "manage_ports {{ item.whatever }}"
      loop: "{{ switch_ports_status }}"
Феерические взрывы в нём на границе 2.4-2.7 должны были хорошо проиллюстрировать, что такое 'preview'.

И что там взрывалось? У меня всё отлично работало, с момента его появление. И это не «ошибка выжившего». Это означает, что его можно использовать, если понимать, как.

Я обычно делаю по «2». Никаких проблем с приоритетами нет, на самом деле. Автор статьи преувеличивает.


модуль — сложно, долго и не очень понятно зачем тогда ансибл нужен

Модули писать — это правильное решение. И тесты к ним обязательно.


Вопрос — в уровнях абстракции. Например, вот есть модуль mongodb_replicaset, хотя можно было тот же самый функционал и на yaml написать, с определёнными костылями. Но тут мы получаем законченный модуль, который делает всё, что нужно и не требуется в него внутрь лезть.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность