Webhook у Harbor или как я оповещения о пушах docker images нашей команды делал часть — 2

В прошлой части статьи мы говорили о пушах в harbor, в этой же статье мы разберемся другие методы с которыми работает его webhook.

Веб-сервис для хостинга и разработки IT-проектов

В прошлой части статьи мы говорили о пушах в harbor, в этой же статье мы разберемся другие методы с которыми работает его webhook.

Приветствую всех! Поздравляю с прошедшими майскими праздниками. С момента моего последнего поста, прошло уже больше полугода, кто то мог уже забыть про предыдущие посты, кто то разочароваться и я бы подумал так же. Однако, я здесь и не отказывался от подачи заявления в суд. Но, обо всем по порядку.

Когда я впервые решил создать свой open-source проект, мне казалось, что главное – это хорошая идея и рабочий код. Я взялся за разработку библиотеки для сетевых клиентов и UI-компонентов, вложил в неё два года работы и, наконец, выложил на GitHub. Но вместо успеха меня ждал холодный душ – библиотека получила всего 10 звёздочек.
Тогда я осознал ключевую проблему open-source: одна только идея не работает. Если проект плохо оформлен – его никто не найдёт. Документация и описание – не менее важны, чем сам код. В следующем проекте я учёл ошибки. Когда правильно оформил проект, он начал находить аудиторию, получать звёзды и фидбек от разработчиков.
Open-source – это не только код, но и способность донести свою работу до других. И эта история дала мне важный урок: если хочешь, чтобы твой проект заметили, помоги людям его понять. А ещё я понял, как важно участвовать в комьюнити и контрибьютить.

Руководителям групп разработки и членам команды часто приходится сталкиваться с проблемой информирования коллег о новых версиях docker image внутренних инструментов. Сообщения в общих чатах не всегда эффективны, а писать вручную — не лучшая практика. И тут мы рассмотрим разработку решения по автоматическому информированию.

Привет, Хабр! Меня зовут Андрей Гетманов, я работаю ML-инженером в Исследовательском центре “Сильный ИИ в промышленности” в ИТМО, а кроме того являюсь энтузиастом open source. В этой статье хочу рассказать о нашей новой разработке ― ИИ-инструменте, который помогает репозиторию стать лучшей версией себя.
Разнообразных «улучшателей» много, но все они фокусируются преимущественно на качестве самого кода. Мы же смотрим шире ― на репозиторий в целом, насколько он понятен стороннему наблюдателю. Инструмент нацелен на наших коллег от науки ― например, биологов и химиков ― которые не обладают опытом коммерческой разработки и соответствующего оформления кода. Он поможет в несколько кликов сделать репозиторий более читаемым и воспроизводимым.

Что происходит, когда GitHub берётся за собственную безопасность? Они пишут код для защиты кода — и активно используют для этого CodeQL. В этой статье команда Product Security Engineering рассказывает, как настроить масштабный автоматический анализ уязвимостей, зачем создавать свои пакеты запросов и как с помощью CodeQL находить ошибки, которые невозможно поймать обычным поиском по коду.

Git стал стандартом де-факто в мире разработки программного обеспечения. Это мощная система контроля версий, которая позволяет командам эффективно сотрудничать, отслеживать изменения и управлять кодовой базой. Новичку Git может показаться сложным из-за обилия команд и концепций. Однако правда в том, что для выполнения 90% повседневных задач достаточно уверенно владеть небольшим набором ключевых команд.

Привет, Хабр!
На проекте была одна довольно типичная и, мягко говоря, надоедливая проблема: разработчики вручную заполняли CHANGELOG при выкатке новой версии приложения. Иногда информация туда попадала точная и соответствующая реальным изменениям, иногда – частично верная, а иногда и вовсе напрочь забытая.
Решение нашлось довольно элегантное – интегрировать инструмент semantic-release в наш пайплайн CI/CD. Но оказалось, что найти полноценное руководство по его настройке, особенно с учетом корпоративного GitLab и плагина semantic-release/changelog, не так-то просто. Собирал информацию буквально по крупицам из различных источников, и вот теперь делюсь с вами проверенной пошаговой инструкцией.

Всем привет. Это моя первая статья, так что не судите строго (да, да, заезженная фраза).
Я думаю у всех есть домашние питомцы и за всеми так или иначе надо убирать - разбросанный силикагель (для кошек как пример). В один из дней, знатно наступив на один из силикагелевых шариков, которые разбросала моя кошка, я понял, что мне это надоело и установив Home Assistant, а так же датчик движения в кошачий лоток (который, к слову, выглядит как пуфик с дыркой для входа кошки) я написал простенький скрипт на то, чтобы робот-пылесос убирал определенную зону после того как кошка сделает свои грязные дела. Все заработало и мои, а так же моей жены телесные травмы свелись к минимуму (все же задержка перед уборкой аж целых 5 минут), но я начала думать о том что было бы неплохо еще и запах убивать после особо пахучих дел, но времени на это не было (да и желания, так как готовых решений не было, тем более появился ребенок и время на подобные дела вообще свелось к минимуму).
Шло время и вопрос о запахе из лотка становился все острее.

Kafka — это популярный брокер сообщений, который используется в самых разных проектах: от обработки логов и управления очередями задач до персонализации контента и аналитики в реальном времени. Например, его можно использовать для индексирования изменений в Википедии или поиска товаров в интернет-магазинах. Manticore Search, в свою очередь, поддерживает интеграцию с Kafka, что позволяет автоматически импортировать данные и использовать их для полнотекстового поиска, аналитики, векторного поиска и многого другого.
При импорте данных в Manticore вы можете гибко их обрабатывать:

Разбираем, как писать масштабируемые и читаемые UI автотесты на Python с использованием паттернов PageObject, PageFactory и PageComponent. Разберем на атомы как устроены эти подходы, когда их применять и чем они отличаются. Всё это — на примере тестового проекта UI Course с CI/CD и наглядными отчетами в Allure.

Всех привествую, меня зовут Денис, я PHP Backend разрботчик
Я выступаю на хакатонах за команду https://жыбийрыр.рф/ и у нас была проблема что не было шаблона с которым мы могли спокойно приходить на хакатоны и не писать один и тот же код из раза в раз
Данная статья будет посвещена о том как я писал данный шаблон, с какими проблемами столкнулся и чему смог научиться

Современная разработка ПО — это плавильный котел языков: Java, C#, JS/TS, Go, Kotlin… список можно продолжать. Но когда дело доходит до оценки ИИ-агентов, способных помогать в написании и исправлении кода, мы часто упираемся в ограничения. Популярный бенчмарк SWE-bench, например, долгое время поддерживал только Python.
Чтобы преодолеть разрыв между реальностью разработки и возможностями оценки ИИ, наша команда в Doubletapp взялась за адаптацию SWE-bench для множества языков программирования. Меня зовут Кирилл Увенс, и в этой статье я расскажу, как мы подходим к этой задаче и почему считаем ее важной для всей индустрии.
В статье расскажем:
• Что такое SWE-Bench
• Какие сложности возникают при сборе данных и тестировании
• Наш опыт: какие языки поддерживает SWE-bench
• Ручная перепроверка, или SWE-bench Verified
• Сравниваем SWE-bench с другими бенчмарками для разработки ПО
• Ценообразование SWE-bench: как формируется стоимость одного датапойнта


GitHub Actions (GHA) — отличный инструмент для настройки CI/CD, а в GitHub Marketplace можно найти тысячи готовых GHA под любые задачи. Но всегда же найдётся процесс, который захочется настроить под себя. Тогда нам придётся написать кастомный GHA.
Привет! Это Макс Качинкин, Android Tech Lead в Додо. В этой статье я покажу, как создать свой GHA на Kotlin/JS, используя плагин Kotlin Multiplatform, и поделюсь готовым шаблоном в GitHub, с помощью которого вы сможете быстро написать собственный экшен на Kotlin/JS. Погнали!

Перевели статью, автор которой раскрыл новую схему мошенничества на GitHub, где под видом модов для игр и взломанных программ распространяется вредоносное ПО, которое похищает личные данные пользователей.
C++ шаблоны — мощный инструмент, но работать с ними бывает больно: многословные ошибки, путаница с типами и enable_if, который все усложняет. Concepts в C++20 появились, чтобы упростить жизнь разработчикам и сделать шаблонный код понятнее. В этой статье — разбор конкретного кейса: как с помощью концептов задать корректные ограничения на контейнеры, избежать ловушек с массивами и получить внятные ошибки от компилятора.

Как определить, какие технологии действительно востребованы, а какие существуют лишь по инерции? Стандартные метрики популярности часто показывают противоречивые результаты.
Пытаясь сравнить популярность нескольких технологий разработки ПО, я столкнулся с парадоксом: данные Google Trends и количество GitHub-репозиториев показывали высокую популярность технологий, которые в реальной разработке давно не используются.
Разобравшись в причинах этого несоответствия, я создал инструмент для анализа GitHub-метрик, который позволяет отфильтровать "шум" и увидеть реальную картину технологических трендов.
В статье я расскажу о методологии, неожиданных находках и о том, как этот инструмент может помочь вам принимать более обоснованные технические решения.

В этой статье разберём процесс написания API автотестов на Python, используя современные best practices. Кроме того, мы настроим их запуск в CI/CD с помощью GitHub Actions и сформируем Allure-отчёт с историей запусков. Цель статьи — не только показать, как писать качественные API автотесты, но и научить запускать их в CI/CD, получая удобные отчёты о результатах.

Когда я начал свой путь в парсинге, мне в голову сразу пришла идея написать клиент для удобного взаимодейстия со школьным дневником. В последствии я решил оформить его в виде Telegram-бота.
...