|
Знакомство с действиями GitHub
Как вы знаете, непрерывная интеграция состоит из множества действий, таких как захват кода, запуск тестов, вход на удаленный сервер, публикация на стороннем сервисе и т. д. GitHub называет эти действия действиями. Action - это сервис непрерывной интеграции (CI) от GitHub, предоставляющий хорошо настроенную виртуальную серверную среду, на которой можно собирать, тестировать, упаковывать и развертывать проекты. Платформа, позволяющая разработчикам автоматизировать пользовательскую логику рабочих процессов, интегрирует функциональность непрерывной интеграции и доставки (CI/CD), которая позволяет разработчикам автоматизировать целый ряд рабочих процессов.
GitHub Actions предоставляет виртуальную машину для выполнения каждого задания (job) с одинаковыми аппаратными ресурсами:
2-ядерный процессор, 7 ГБ оперативной памяти, 14 ГБ места на жестком диске SSD, общий объем жесткого диска около 90 ГБ и 30 ГБ свободного места.
Каждый репозиторий может одновременно поддерживать только 20 параллелей рабочих процессов. API GitHub может быть вызван 1000 раз в час. Каждое задание может выполняться не более 6 часов. Пользователи бесплатной версии могут поддерживать не более 20 заданий одновременно, в то время как macOS - не более 5. Кумулятивное время использования частных репозиториев составляет 2000 минут в месяц после превышения стоимости $0,008/минута, в то время как публичные репозитории не имеют ограничений. Варианты операционных систем включают Windows server, Linux, macOS, а также большое количество предустановленных пакетов и инструментов.
О хостинге исполняемых программ на GitHub: https: //docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners.
Введение в OpenWrt
В конце 2002 года компания Linksys выпустила маршрутизатор под названием WRT-54G, который пользовался большим успехом, но WRT-54G использовал операционную систему Linux, а программное ядро было разработано под лицензией GPL, на которую распространяются стандарты open-source.Linksys открыла исходный код в 2003 году, и первый маршрутизатор, основанный на Linksys и назван в честь OpenWRT, системы маршрутизации с открытым исходным кодом. Также последующий LEDE является ответвлением OpenWRT, возникшим в 2016 году, и оба, openwrt и LEDE, были объединены в январе 2018 года в одно целое.
Адрес официального сайта: https: //openwrt.org.
Введение в проекты Lienol, Lean и ImmortalWrt
Все три проекта основаны на официальном проекте OpenWrt с целью модификации и настройки проекта с открытым исходным кодом. Портировано больше пакетов, поддержка большего количества устройств, улучшена производительность, а также проведена специальная оптимизация для пользователей материкового Китая.
Адрес Lienol: https: //github.com/Lienol/openwrt
Lean Адрес: https: //github.com/coolsnowwolf/lede
ImmortalWrt Адрес: https: //github.com/immortalwrt/immortalwrt
Компиляция прошивки OpenWrt
После общего введения мы расскажем, как использовать GitHub Actions для компиляции прошивки OpenWRT. Почему стоит использовать GitHub Actions для компиляции прошивки?
1. вам не нужны собственные физические ресурсы, вы можете использовать сервер, предоставляемый GitHub напрямую. 2. поскольку некоторые ресурсы недоступны в Китае, компиляция будет неудачной, поэтому использование сервера GitHub не является проблемой.
Прежде всего, вам нужно завести аккаунт на GitHub и форкнуть проект AutoBuild-OpenWrt автора "esirplayground", поскольку он уже написал скрипт Actions для своего проекта.
Адрес: https: //github.com/esirplayground/AutoBuild-OpenWrt, как показано ниже:
Таким образом мы эквивалентно своему также создали проект AutoBuild-OpenWrt, функция actions по умолчанию не включена, нужно немного открыть, нажать на "I understand my workflows, go ahead and enable them и нажать "Я понимаю свои рабочие процессы, продолжайте и включите их":
Рабочие процессы не запускаются в этом форкнутом репозитории Поскольку этот репозиторий содержал файлы рабочих процессов, когда он был форкнут, мы запретили их запуск на этом форке. Убедитесь, что вы понимаете Убедитесь, что вы понимаете настроенные рабочие процессы и их предполагаемое использование, прежде чем включать Actions в этом репозитории.
Я понимаю свои рабочие процессы, продолжайте и включите их
Затем отредактируйте файл /.github/workflows/Build_OP_x86_64.yml, как показано ниже:
Снимите комментарий push и отправьте код, как показано ниже:
Перейдите на страницу Actions, выберите рабочий процесс Build_x86_64, и вы увидите, что сборка уже запущена, как показано ниже:
После примерно 3 часов выполнения сборка, наконец, завершилась успешно, как показано ниже:
Вы можете скачать zip-пакет, нажав на OpenWrt в разделе Артефакты, а содержимое zip-пакета после загрузки показано ниже:
Наконец, прикреплена загрузка прошивки на основе сборки ImmortalWrt: https: //doc.openwrt.cc/.
(Окончание) |
Предыдущая статья: Новый пользователь SQL Server имеет доступ только к базе данныхСледующая статья: [Советы]Разработка существенная, просмотр исходного кода dotnet
|