Сократите затраты на инструменты автоматизации с помощью этих конвейеров DevOps.
Сократите затраты на инструменты автоматизации с помощью этих конвейеров DevOps.

Уменьшите зависимость от лицензий за счет интеграции GitHub Actions для автоматического тестирования.

Переведено с Use These DevOps Pipelines To Cut Automation Tool Costs,Гаурав Миттал.

Многие ИТ-организации используют лицензионный инструмент автоматизации.,Но предоставлять лицензии всем QA и разработчикам нецелесообразно. в целом,Лицензии выдаются назначенным инженерам по автоматизации.,Они создают и запускаются по мере необходимоститест。этотСоздает задачу для любого члена команды выполнять тестирование по требованию.。Поскольку большинствоавтоматизация Инженеры за границей,Поэтому для локального выполнения тестов требуется дополнительная лицензия.,Это может быть очень дорого. также,Обеспечить качественный код, адекватное освещение、Отсутствие запаха кода и тщательное сканирование безопасности имеют решающее значение.

Моя организация большая и охватывает несколько областей, таких как ERP, данные, системы управления лабораторной информацией (LIMS), программное обеспечение для автоматизации и робототехники, биопроизводство и программное обеспечение для клеточной/генной терапии. В каждом регионе используется собственное решение DevOps, в первую очередь Jenkins, за которое взимаются ежемесячные расходы. Чтобы иметь единую структуру DevOps для всей организации, я исследовал несколько инструментов DevOps, чтобы определить наиболее экономически эффективное решение. Цель состоит в том, чтобы иметь единую структуру, которую можно было бы использовать в разных проектах в разных областях.

В свою очередь, это решение DevOps снижает затраты на лицензию на сторонние инструменты автоматизации, используемые в различных проектах. Как только этот конвейер CI будет готов, любой, у кого есть доступ к инструментам DevOps, сможет запускать автоматические тесты, не беспокоясь о необходимости лицензии на инструмент автоматического тестирования.

Поэтому я начал связываться с несколькими поставщиками и в итоге перечислил Jenkins, GitHub Actions (GHA) и Gearset как общие инструменты, которые можно использовать во многих областях. После дальнейшего анализа с моей командой мы обнаружили, что GHA был лучшим выбором с точки зрения стоимости и простоты добавления проверок безопасности и модульных тестов в конвейер.

В этой статье я продемонстрировал преимущества GitHub Actions (GHA) как CI-инструмента. ГСГ имеет открытый исходный код,Но затраты будут понесены в зависимости от использования бегуна.。Я также предложил инновационное решение, позволяющее исключить затраты на бегунков.。ВоляИнструменты качества кода, такие как SonarQube и CodeQL, интегрированы в конвейер.Также обеспечивает сканирование безопасности и выявляет проблемы перед развертыванием.。

Преимущества внедрения конвейера непрерывной интеграции (CI)

  1. Тесты можно вызывать, не требуя доступа пользователя к средству автоматизации.

Автоматизированные инструменты, требующие лицензии, могут использоваться только лицензированными лицами. Однако при интеграции с конвейером CI любой пользователь, имеющий доступ к CI, может запускать задания, не требуя прямой лицензии. Такой подход оптимизирует управление пулами лицензий, снижает затраты и расширяет возможности инструмента для автоматизации тестирования. Например, все разработчики с доступом к GitHub Actions (GHA) теперь могут вызывать инструменты автоматизации, не требуя отдельной лицензии.

  1. Устраните необходимость в ресурсах контроля качества

Некоторые инструменты автоматизации не позволяют тестировщикам/разработчикам покидать экран пользовательского интерфейса во время выполнения теста пользовательского интерфейса, тем самым не позволяя им выполнять другие задачи на компьютере. Использование GitHub Actions (GHA)Конвейерные вызовыавтоматизацияинструмент Это ограничение снято,позволятьРазработчики и тестировщики решаютДругие задачи,А автоматизация работает в фоновом режиме. После выполнения,Будет отправлено электронное письмо с подробным и удобным для пользователя отчетом о результатах теста в формате PDF.

Рисунок. Изображение того, как автоматизация помогает сократить ручную работу.

До CI Pipeline — настройка выполнения тестов вручную эффективно сократила наше время с XXX часов до XX часов, но нам все равно нужно выделить XX часов, поскольку ресурсы QA должны контролировать экраны во время выполнения теста.

Рисунок. Изображение действий GitHub, позволяющее свести усилия по автоматизации к нулю.

Автоматическая интеграция CI/CD. Сократите эти часы до нуля, поскольку конвейер CI управляет сеансами и устраняет необходимость ручного мониторинга во время выполнения тестов.

Другие преимущества использования GHA в качестве инструмента CI/CD для автоматического тестирования

  1. Доступ к GHA бесплатен с помощью учетной записи пользователя GitHub.

Действия GitHub — это функция GitHub, которая включена по умолчанию, поэтому явный доступ к GHA не требуется. Он поддерживает рабочие процессы CI/CD непосредственно в вашем репозитории.

  1. Экономия средств: исключите расходы на инфраструктуру AWS.

Для конвейера CI/CD,Нам нужно интегрировать раннер (виртуальная машина, необходимая для запуска заданий CI),Обычно настраивается в облаках, таких как AWS.,повлечет за собой дополнительные расходы,И оно растет по мере увеличения нагрузки. Однако,через эту программу,В качестве посредника мы используем машину Win365, предоставленную организацией.,Это исключает дополнительныеЗатраты оператора инфраструктуры。всеавтоматизация Инженеры оснащеныWin365Машина для монтажа и исполненияавтоматизация Скрипт。

Рисунок – экземпляры Microsoft Win365 и AWS EC2

Замените бегун AWS на бегун Win365

Если он обеспечивает ту же виртуальную среду, что и его образ на рабочем столе машина,Членам команды автоматизации нужныУстановитьавтоматизацияинструмент。это облако Пример Будет фиксированная плата。QAРесурсы используются только в рабочее время.это облако Пример,Остальные 16 часов в день бесплатны. Мы можем значительно сократить использование AWS, используя эти виртуальные машины в качестве исполнителей конвейера CI в свободное время.,Нет необходимости запускать новый пример EC2.

На графике ниже показана экономия средств. Здесь мы несем фиксированную стоимость виртуальной машины в размере 55 долларов США в месяц, поэтому конвейер, использующий эти виртуальные машины, будет нести затраты на исполнителя в размере 0 долларов США, но если мы будем использовать новый экземпляр AWS в качестве исполнителя, мы можем понести ежемесячные затраты в размере 80 долларов США.

Рисунок – Расчет экономии затрат

  1. Ограничения брандмауэра и настройка средств автоматизации

Поскольку GitHub управляется внутри внутренней сети организации, мы можем избежать любых проблем с разрешениями API систем безопасности и инструментов автоматизации, которые являются проблемами, с которыми сталкиваются инструменты CI/CD, размещенные на внешнем хостинге.

  1. Реализация проверки качества кода

Внутри самого конвейера CI мы можем реализовать инструменты качества кода CodeQL и SonarQube, избегая необходимости отдельного тестирования. CodeQL — это трудоемкий инструмент. Выполнение конвейера занимает много времени, поэтому рекомендуется запускать CodeQL в отдельном конвейере, а результаты можно просмотреть на GitHub.

Что такое CodeQL

Рисунок. После запуска конвейера вы можете просмотреть все ошибки, выделенные CodeQL.

Наконец, конвейер DevOps для развертывания кода и запуска автоматических тестов для недавно выпущенной ветки выглядит следующим образом:

Рисунок. Конвейер DevOps, который развертывает код, выполняет проверки качества кода и, наконец, запускает автоматические тесты.

в заключение

Решение использовать GitHub Actions в качестве инструмента CICD для различных доменов оказалось плодотворным для моей организации. Мы исключаем затраты на дополнительные лицензии на инструменты автоматизации и используем доступные локальные виртуальные машины в качестве участников конвейера, сокращая затраты на облачные экземпляры. Кроме того, простая интеграция GHA с инструментами качества кода, такими как SonarQube и CodeQL, также помогает поддерживать стандарты кодирования.

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

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose