- ✓ научиться компилировать собирать в обычном дереве, а не так, как в CI, когда исходники отдельно клонируются в другое место.
- ✓ научиться линковать (этого вообще нет)
- ✓ где-то брать original для пересборки (видимо, это будет 32-разрядный линукс).
- ✓ понять, что есть сборка для тестов и научиться её собирать (отдельной сборки нет, модуль тестового движка входит в обычную сборку)
- ✓ запустить тесты в обычном дереве
- ✓ понять, как изучать падения тестов
- ✓ сделать всё то же самое для ЯОС
чиним скрипт сборки и тестирования из CI
чиним скрипт сборки и тестирования из CI
Подзадачи:
Последний раз редактировалось БудДен 17.10.20 16:19, всего редактировалось 4 раза.
Re: чиним скрипт сборки и тестирования из CI
Подзадача про сборку в основном дереве - в Linux (во всяком случае, в программе ./origin) понимается переменная окружения AOSPATH - она должна показывать путь к исходникам (можно относительно текущей директории.
--path - куда собирать
В целом команда выглядит так:
Но где же здесь команда линковки? Её нет, значит, наша задача ещё увеличивается в размере.
--path - куда собирать
В целом команда выглядит так:
Код: Выделить всё
AOSPATH=../../../source ./oberon Release.Build --path=Linux64/ --build Linux64
Re: чиним скрипт сборки и тестирования из CI
проект - затея
репозитарий - хранилище затей
коммит - правка.
original - в переводе источник.
https://habr.com/ru/company/itsumma/blog/443490/
Считаю что правки должны одобряться автоматически. Да это анархия. Но таков путь открытого софта.
По крайней мере это решит проблемы умирания технологии.
Сейчас делается так идем на githab. Создаем хранилище под вашу затею. Пишем скрипт для CI в который указываем где брать образ с гостевой ОС для сборки и тестирования.
Образ создаем сами заводим харнилище для затеии со скриптом сборки образа. Свой образ для тестов собирать будем на основе образа из https://hub.docker.com там есть образ с Убунтой или Дебианом и даже Виндоус. В наш скрипт сборки образа прописываем нужный софт. Указываем какие программы должны скачаться и откуда и какими командами из установить. Созданный образ размещаем на gitlab или на hub.docker.com его и указываем в качестве источника для тестов. Это позволит нам ускорить процесс запуска, тестовые сервера будут на тест выкачивать готовый образ вместо того чтобы выкачивать и ставить программы.
Если вы работает под Виндоусом, то образ тестируем и отлаживаем на https://labs.play-with-docker.com
Настраиваем CI гитхаб А2ОС чтобы тот при приходе правок запустил сборку. Сборка запускается на серверах гитхаба. Он предоставляет бесплатный ресурс в размере примерно 800 минут на месяц. Сервера разные можно указать и АРМ.
Немножко ссылок правда я сижу на другом стеке технологий
https://hub.docker.com/_/microsoft-windows
https://habr.com/ru/company/pvs-studio/blog/458072/
https://github.com/magicxor/radstudio-docker
https://ealebed.github.io/posts/2017/gi ... ab-ci.yml/
https://coderun.ru/blog/deplojj-php-saj ... -khosting/
https://github.com/smarkets/marge-bot
https://habr.com/ru/post/344324/
https://habr.com/ru/company/ruvds/blog/439980/
gitignore
https://www.toptal.com/developers/gitignore
Официальные доки
https://docs.gitlab.com/ee/user/project/
https://docs.gitlab.com/ee/user/project/deploy_tokens/
https://docs.gitlab.com/ee/ci/yaml/README.html
Загрузка реализа
https://stackoverflow.com/questions/290 ... -in-gitlab
https://docs.gitlab.com/ee/ci/examples/ ... EADME.html
докер и гитлаб
https://stanislas.blog/2018/09/build-pu ... gitlab-ci/
репозитарий - хранилище затей
коммит - правка.
original - в переводе источник.
https://habr.com/ru/company/itsumma/blog/443490/
Считаю что правки должны одобряться автоматически. Да это анархия. Но таков путь открытого софта.
По крайней мере это решит проблемы умирания технологии.
Не помню точно откуда это. Но точно уверен что Вы сейчас копируете устаревшие технологии.где-то брать original для пересборки (видимо, это будет 32-разрядный линукс).
Сейчас делается так идем на githab. Создаем хранилище под вашу затею. Пишем скрипт для CI в который указываем где брать образ с гостевой ОС для сборки и тестирования.
Образ создаем сами заводим харнилище для затеии со скриптом сборки образа. Свой образ для тестов собирать будем на основе образа из https://hub.docker.com там есть образ с Убунтой или Дебианом и даже Виндоус. В наш скрипт сборки образа прописываем нужный софт. Указываем какие программы должны скачаться и откуда и какими командами из установить. Созданный образ размещаем на gitlab или на hub.docker.com его и указываем в качестве источника для тестов. Это позволит нам ускорить процесс запуска, тестовые сервера будут на тест выкачивать готовый образ вместо того чтобы выкачивать и ставить программы.
Если вы работает под Виндоусом, то образ тестируем и отлаживаем на https://labs.play-with-docker.com
Настраиваем CI гитхаб А2ОС чтобы тот при приходе правок запустил сборку. Сборка запускается на серверах гитхаба. Он предоставляет бесплатный ресурс в размере примерно 800 минут на месяц. Сервера разные можно указать и АРМ.
Немножко ссылок правда я сижу на другом стеке технологий
https://hub.docker.com/_/microsoft-windows
https://habr.com/ru/company/pvs-studio/blog/458072/
https://github.com/magicxor/radstudio-docker
https://ealebed.github.io/posts/2017/gi ... ab-ci.yml/
https://coderun.ru/blog/deplojj-php-saj ... -khosting/
https://github.com/smarkets/marge-bot
https://habr.com/ru/post/344324/
https://habr.com/ru/company/ruvds/blog/439980/
gitignore
https://www.toptal.com/developers/gitignore
Официальные доки
https://docs.gitlab.com/ee/user/project/
https://docs.gitlab.com/ee/user/project/deploy_tokens/
https://docs.gitlab.com/ee/ci/yaml/README.html
Загрузка реализа
https://stackoverflow.com/questions/290 ... -in-gitlab
https://docs.gitlab.com/ee/ci/examples/ ... EADME.html
докер и гитлаб
https://stanislas.blog/2018/09/build-pu ... gitlab-ci/
Re: чиним скрипт сборки и тестирования из CI
Названия хорошие, особенно коммит свежим повеял. Я его думал "записью" обозвать, т.к. это "запись в журнале изменений", да и просто "запись в базу истории". Надо бы было словарь доделать, но увы...
Насчёт CI от гитхаба подумаю, возможности интересные. Пока нужно хотя бы какие-то тесты научиться запускать, пусть в полуручном режиме. Потому что в A2 хоть какая-то тестовая сюита есть (убогая, на одной платформе), но она есть. А в ЯОС нет никакой. На первом этапе достаточно просто скрипта, который локально запускается и выдаёт какой-то итоговый отчёт.
Насчёт CI от гитхаба подумаю, возможности интересные. Пока нужно хотя бы какие-то тесты научиться запускать, пусть в полуручном режиме. Потому что в A2 хоть какая-то тестовая сюита есть (убогая, на одной платформе), но она есть. А в ЯОС нет никакой. На первом этапе достаточно просто скрипта, который локально запускается и выдаёт какой-то итоговый отчёт.