Dev-Ops.su
306 subscribers
79 photos
4 files
206 links
Полезные утилиты, статьи, доклады и обзоры.
Канал для DevOps, SRE, Архитекторов и прочих *Ops

https://dev-ops.su

#DevOps #SRE #DevSecOps #SecOps #ChatOps #GitOps #DocsOps #MLOps #FinOps #NoOps #CloudOps #CIOps #CDOps #AnyOps #BuzzWordOps

@woozymasta
Download Telegram
А вот и замена для jq/yq и подобных CLI утилит.

Dasel (сокращение от data-selector) - CLI утилита написанная на Go для работы с JSON, YAML, TOML, XML и CSV.

#dasel #query #cli #jq #yq #json #yaml #xml #csv

https://github.com/TomWright/dasel
Miller - утилита командной строки которая позволяет использовать именованные поля без необходимости подсчета позиционных индексов, используя знакомые форматы, такие как CSV, TSV, JSON и позиционно-индексированные. Затем на лету вы можете добавлять новые поля, которые являются функциями существующих полей, удалять поля, сортировать, статистически агрегировать, красиво печатать и т.д.
Это некая замена для sed, grep, awk, jq, cut и join.

#csv #json #tsv #cli

https://github.com/johnkerl/miller
jo — небольшая утилита для создания объектов JSON.

К примеру:

jo -p name=jo n=17 parser=false
получим:
{
"name": "jo",
"n": 17,
"parser": false
}

или

seq 1 10 | jo -a
получим:
[1,2,3,4,5,6,7,8,9,10]

#cli #json

https://github.com/jpmens/jo
RedisJSON — это модуль Redis, который реализует стандарт обмена данными JSON ECMA-404 в качестве собственного типа данных. Он позволяет хранить, обновлять и извлекать значения JSON из ключей (документов) Redis.

Документация

Подгружается в сервер как модуль
redis-server --loadmodule ./target/release/librejson.so

Или берем готовый контейнер redislabs/rejson:latest

Также есть клиентские библиотеки на Node.js, Java, Python, Go, .NET, PHP и Ruby. И скорее всего ваша библиотека уже умеет в JSON.

#redis #json

https://github.com/RedisJSON/RedisJSON
ycat — процессор командной строки для файлов YAML/JSON с использованием Jsonnet

При помощи утилиты можно применять jsonnet для редактирования json и yaml документов, к примеру:

▫️Добавить ns foo ко всем k8s ресурсам без ns:
ycat *.yaml -e '{metadata+: {namespace: "foo"}} + x'

▫️Слить файлы a.json и b.yaml установив ключ foo в bar для каждого объекта верхнего уровня:
ycat a.json b.yaml -e 'x+{foo: "bar"}'

#json #yaml #jsonnet #cli

https://github.com/alxarch/ycat
1🔥1