Исправление конфигурации Home Assistant после обновления до v0.89

Всякие умные девайсы дома интегрированы в удобную штуку – Home Assistant, а само приложение крутится в докер-контейнере на моём домашнем Linux-сервере. Home Assistant релизится каждые две недели, я слежу за их обновлениями через RSS и обновляю всё дома простым перезапуском сервиса.

Восстанавливаем работу USB-UART CH340G после апгрейда до Mojave

Так вышло, что я немного увлёкся разного рода микроконтроллерами и для прошивки пока использую простейший USB-UART на базе микросхемы CH340G. Сегодня принёс домой RFID/NFC контроллер PN532 и наверно с час  пытался завести его через libnfc. Ноnfc-poll упорно возвращал “No NFC device found”.

Логирование тела запроса в NGINX

Возникла (и уже не первый раз) необходимость залогировать тело json-запроса, приходящего от удалённого клиента. Делать логирование на стороне приложения не хотелось, потому что во-первых, это некрасиво, во-вторых — надо приложение пересобрать и передеплоить — то есть долго. На входе у нас стоит NGINX, и вот его можно гибко настроить и, что важно, изменения применяются мгновенно.

Делаем git pull —rebase опцией по умолчанию

В конце января я рассказывал на митапе PiterCSS о том, как использовать интеграцию git с WebStorm (и любой другой IDE от JetBrains) на полную катушку.

Удалить всё, что не *.mp3

Возникла необходимость удалить из каталога все файлы, за исключением mp3. В каталоге 60 подкаталогов, в каждом подкаталоге 10-20 разных файлов. Руками такое делать бесконечно утомительно. Но можно открыть консоль и набрать там такое:

Текущий IP-адрес из консоли в MacOS

Мы продолжаем играться с докером и периодически возникает необходимость достучаться из одного контейнера до другого. По-правильному нужно поднимать docker network, но если лень и сетевая производительность не очень важна, то можно ходить из контейнера в контейнер по ip-адресу хост-машины, на которой запущен Docker for Mac.

Передача переменных окружения в Docker

Мы на работе немного угорели по микросервисам и всё заворачиваем в docker-контейнеры. Зачем — это тема для отдельного поста, сейчас об этом не будем. Просто поверьте, что оно нам действительно надо.

Про сравнение объектов Immutable.js

Примерно год назад я начал переводить проект, над которым работаю в Charge.auto с жутко запущенного легаси на реакт-редакс-вот это всё. Для представления данных в сторе решил взять Immutable.js. Граблей было исхожено не одно поле, но на днях до меня наконец-то дошло, как разрешить одну из самых раздражающих меня проблем.

Установка Node на убунту

Мы же тут все фронтендом балуемся? Где фронтенд — там и нода, а иногда приходится устанавливать её на сервера. Вот и мне пришлось снова заняться этим во время переезда с Clodo в Digital Ocean.

Автоматический деплой из Тревиса

Между делом я поддерживаю на плаву сервер сообщества Веб-Стандарты. Среди прочего там у нас расположен сайт проекта Web Standards Days. Сайт простой, голая статика, но собирался и деплоился вручную. Нет, мы пробовали генераторы статики, и даже писали свой — но не взлетело. И вот что-то подустал Вадим руками ещё и деплоить, решили попробовать автоматизировать деплой через Тревис (в dev.opera.com так сделано, например). Оказалось, что в этом нет ничего сложного.