37.1K subscribers
1.46K photos
34 videos
5 files
1.62K links
加入频道
👣 Yaegi — альтернативный лёгкий интерпретатор Go

go install github.com/traefik/yaegi/cmd/yaegi@latest

Фичи Yaegi:
• полная поддержка спецификации Go
• написан на чистом Go, без зависимостей
• простой API: New(), Eval(), Use()
• работает везде, где работает Go (в т.ч. поддерживает Go 1.21 и Go 1.22)
• безопасность: пакеты unsafe и syscall не используются и не экспортируются по умолчанию

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 AMIGO - Migrate SQL with Go language.

Библиотека, позволяющая создавать миграции на Go с сохранением типов, и мощнным набором полезных инструментов.
#golang

Github

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Miller — это инструмент командной строки для запроса, формирования и переформатирования файлов данных в различных форматах, включая CSV, TSV, JSON и JSON Lines

winget install Miller.Miller

С помощью Miller можно использовать именованные поля без необходимости подсчета позиционных индексов, используя привычные форматы, такие как CSV, TSV, JSON, JSON Lines и позиционно индексированные.
Также, на лету, при помощи Miller, можно добавлять новые поля, которые являются функциями существующих полей, удалять поля, сортировать, агрегировать статистические данные, отображать и многое другое.

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 WS — легковесная библиотека для работы с вебсокетами

Фичи WS:
— Отсутствие промежуточных аллокаций при вводе/выводе
— Низкоуровневый API, позволяющий построить собственную логику обработки пакетов и повторного использования буферов
— Высокоуровневые обертки и помощники вокруг API в пакете wsutil, которые позволяют быстро начать работу, не копаясь во внутренностях протокола

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 anacrolix/torrent — пакет Go BitTorrent-клиентов и разных утилит

go get github.com/anacrolix/torrent

anacrolix/torrent используется 24/7 во многих реальных проектах;
этот пакет был специально спроектирован для использования возможностей Go в области параллелизма, а также для включения возможности потоковой передачи данных непосредственно из сети BitTorrent.

anacrolix/torrent поддерживает поиск, readaheads и другие функции, раскрывающие торренты и их файлы с помощью различных идиоматических интерфейсов пакета io в Go.

🖥 GitHub
🟡 Доки

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
💻 90 дней DevOps — обновлённый сборник

Цель данного цикла статей — быстрый обзор и прохождение основных понятий DevOps.

Вот некоторые из покрываемых тем:
— Использование Terraform
— Сетевое взаимодействие Docker и безопасность
— Установка minikube
— Автоматизация сети с помощью Python
— Работа с Jenkins
— Визуализация данных в Grafana
— Обзор ArgoCD
— State и Ingress в Kubernetes
— Ansible - контроллер автоматизации (Tower), AWX, Vault
— Docker Compose

📎 Цикл статей

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Sarama для Apache Kafka

Sarama — это клиентская библиотека на чистом Go для работы с Apache Kafka (версии 0.8 и выше). Она включает в себя высокоуровневый API для удобного создания и потребления сообщений, а также низкоуровневый API для управления байтами на проводе, когда высокоуровневого API недостаточно. Примеры использования высокоуровневых API приведены в полной документации к ним.

🖥 GitHub
🟡 Wiki
🟡 Вот здесь разные метрики Sarama

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 TruffleHog — инструмент на Go для сканирования секретов, который глубоко копается в хранилищах кода для поиска паролей, секретных токенов и т.д.

brew install trufflehog

В TruffleHog встроено 700+ детекторов учетных данных, которые поддерживают активную проверку по соответствующим API
Имеет встроенную поддержку сканирования GitHub, GitLab, Docker, файловых систем, S3, GCS, Circle CI и Travis CI.
Позволяет осуществлять проверку закрытых ключей по миллионам пользователей GitHub и миллиардам сертификатов TLS с помощью технологии Driftwood, сканировать двоичные файлы, документы и файлы других форматов.

TruffleHog доступен как GitHub Action и pre-commit хук.

Быстрый старт с помощью Docker:
docker run --rm -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --org=trufflesecurity

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Feature Flag — простое и лёгкое open-source решение для включения/отключения каких-то возможностей в коде

go get github.com/thomaspoignant/go-feature-flag

Особенности Feature Flag:
— позволяет хранить файлы флагов конфигурации в различных местах (S3, Kubernetes, ...)
— поддерживает описание флагов в различных форматах (JSON, TOML и YAML)
— можно добавлять сложные правила
— позволяет экспортировать данные об использовании флагов в S3, в облачное хранилище Google и т.д.
— поддерживает получение уведомлений об изменении флага (webhook и Slack)

Изначально Feature Flag был разработан как решение исключительно для Gо. Теперь, с новой стандартизацией флагов решение теперь доступно для нескольких ЯП через простой API-сервер.

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Пакет color — это цветовой пакет ANSI для отображения цветного SGR вывода

go get github.com/fatih/color

Позволяет использовать простые функции с набором уже предопределенных цветов.

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 goqu — go-библиотека для построения и выполнения SQL-запросов

go get -u github.com/doug-martin/goqu/v9

Без проблем поддерживает Postgres, MySQL, SQLite3, SQLServer и кастомные диалекты

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Telegraf — open-source серверный агент на Go

Telegraf – это не только MQTT клиент. Telegraf – это серверный агент для сбора, обработки, агрегирования и записи метрик из различных стеков, датчиков и систем в InfluxDB.
Полезный инструмент для работы с IoT и не только

Быстрый старт с помощью Docker:
docker run --rm --volume $PWD/config.toml:/etc/telegraf/telegraf.conf telegraf

🖥 GitHub
🟡 Доки

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 tfsec — написанный на Go сканер безопасности для кода Terraform

brew install tfsec

tfsec опирается на статический анализ кода terraform для выявления потенциальных ошибок в конфигурации.

Особенности tfsec:
— Проверяет неправильные конфигурации у всех крупных (и некоторых мелких) облачных провайдеров.
— Сотни встроенных правил
— Сканирование модулей (локальных и удаленных)
— Оценивает HCL-выражения, а также буквенные значения
— Оценивает функции Terraform, например, concat()
— Поддерживает несколько форматов вывода: lovely (по умолчанию), JSON, SARIF, CSV, CheckStyle, JUnit, text, Gif.
— Легко настраивается (с помощью флагов CLI и/или файла конфигурации).
— Очень быстрый, способен быстро сканировать огромные репозитории

🖥 GitHub

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 ebpf-go — отладка, компилляция программ eBPF

go get github.com/cilium/ebpf

ebpf-go - это библиотека на чистом Go, которая предоставляет утилиты для загрузки, компиляции и отладки программ eBPF
ebpf-go имеет минимум внешних зависимостей и предназначена для использования в длительно работающих процессах

🖥 GitHub
🟡 Доки

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Кодогенерация Protobuf файлов используя плагин Buf

В этой статье научимся генерировать Protobuf файлы через плагин Buf. Настроим зависимости сторонних proto нотаций, такие как googleapis, grpc-gateway и protovalidate.

🟡Что внутри?
├╼ Подготовительные работы
├╼ Установка зависимостей
├╼ Структура api
├╼ Генерируем код
╰╼ Запускаем gRPC и REST сервер

▶️ Статья

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM