Useful Tools | Linux | GitOps | DevOps
6.1K subscribers
210 photos
3 videos
7 files
775 links
Полезные бесплатные opensource инструменты на все случаи жизни, а иногда и советы.

Понравился проект из поста - поддержи автора звездой!

Web: https://gitgate.d3.ru

Сотрудничество: @maxgrue
Обсуждение: @gittalk
Download Telegram
yq - легковесный и портативный процессор командной строки YAML, JSON и XML.

yq использует синтаксис, подобный jq, но работает с файлами yaml, а также с json, xml, csv и tsv. Он еще не поддерживает все, что делает jq, но поддерживает наиболее распространенные операции и функции, и постоянно добавляются новые.

yq написан на go, многоплатфоменный - Linux, Mac, Windows

https://github.com/mikefarah/yq

#json #xml #yaml #csv #tsv #jq
🔥22👍9
dasel - (data select) инструмент для выборки, вставки, удаления и редактирования структуры JSON, TOML, YAML, XML и CSV.

Умеет конвертировать между форматами.

Совместим с jq и yq но позволяет обрабатывать множество форматов.

Кроссплатформенный, написан на go, есть и в виде go package для встраивания в приложения.

https://github.com/TomWright/dasel

Документация: https://daseldocs.tomwright.me

#json #toml #yaml #xml #csv #jq #yq #tools
👍13🔥10
Dagu- мощная альтернатива Cron с веб-интерфейсом.

Он позволяет определять зависимости между командами в виде направленного ациклического графа (DAG) в декларативном формате YAML.

Dagu упрощает управление и выполнение сложных рабочих процессов. Он изначально поддерживает запуск контейнеров Docker, выполнение HTTP-запросов и выполнение команд через SSH.

Функции:

- Веб-интерфейс пользователя
- Интерфейс командной строки (CLI) с несколькими командами для запуска и управления группами DAG.
- Формат YAML для определения групп доступности баз данных с поддержкой различных функций, включая:
Выполнение пользовательских фрагментов кода
Параметры
Замена команды
Условная логика
Перенаправление stdout и stderr
Перехватчики жизненного цикла
Повторяющаяся задача
Автоматическая повторная попытка
- Исполнители для запуска разных типов задач:
Запуск произвольных контейнеров Docker
Выполнение HTTP-запросов
Отправка электронных писем
Запуск команды jq
Выполнение удаленных команд через SSH
- Уведомление по электронной почте
- Планирование с помощью выражений Cron
- Интерфейс REST API
- Базовая аутентификация по HTTPS

https://github.com/dagu-org/dagu

опубликовано в @gitgate

#cron #api #https #jq #ssh #docker #webui #yaml #cli
👍14🔥7
mdq - как jq но для Markdown

mdq стремится сделать для Markdown то же, что jq делает для JSON: предоставить простой способ сосредоточиться на определенных частях документа.

Например, GitHub PR - это документы Markdown, и некоторые организации имеют специальные шаблоны с контрольными списками для заполнения всеми рецензентами. Для их соблюдения часто требуются уродливые регулярные выражения, которые сложно писать и еще хуже отлаживать. Вместо этого вы можете (например) запросить mdq обо всех незавершенных задачах:

mdq '- [ ]'


mdq доступен под лицензиями Apache 2.0 или MIT, по вашему выбору.

https://github.com/yshavit/mdq

опубликовано в  @gitgate

#markdown #jq #cli
👍14🔥10
JSONata - лёгкий язык запросов и преобразования данных JSON.

Вдохновлённый семантикой «пути местоположения» XPath 3.1, он позволяет выражать сложные запросы в компактной и интуитивно понятной форме. Для обработки и комбинирования извлечённых данных предоставляется богатый набор встроенных операторов и функций, а результаты запросов можно форматировать в любую выходную структуру JSON, используя привычный синтаксис JSON-объектов и массивов. В сочетании с возможностью создания пользовательских функций, можно создавать сложные выражения для решения любых задач JSON-запросов и преобразования.

https://github.com/jsonata-js/jsonata

Опубликовано в @gitgate

#json #jq
👍10🔥2
jqjq - реализация jq в jq.

Всё началось с исследования того, как писать декодеры форматов на jq для fq, что в итоге привело к некоторым манипуляциям с AST, а затем из шутки переросло в увлекательный и познавательный проект. Но это также отличный способ показать jq как очень выразительный, мощный и изящный язык!

https://github.com/wader/jqjq

Подсказал: @yolkis

Опубликовано в @gitgate

#json #jq
👍9🔥6