Size: a a a

2020 January 16

ДТ

Денис Толстов in ru_gitlab
Денис Толстов
Знатоки
Комплекс Xenomai создаёт симлинки в дереве исходников наружу в соседнюю с проектом папку
Я закоммитил это дело, не знаю, стоило ли, но теперь билд падает, потому что make: arch/arm/xenomai/Kconfig: not found.
Внимание, вопрос. Накладывать Xenomai из архива в ходе пайплайна? Залить вторым проектом? Внести в этот? Отказаться полностью?
Решили репу Xenomai склонировать к себе. В связи с этим два вопроса.
1) Как тянуть апстрим -- можно ли автоматически?
2) Как в пайплайнах одного проекта фетчить другой в соседнюю папку, чтобы относительные симлинки могли туда ссылаться?
источник

GG

George Gaál in ru_gitlab
Денис Толстов
Решили репу Xenomai склонировать к себе. В связи с этим два вопроса.
1) Как тянуть апстрим -- можно ли автоматически?
2) Как в пайплайнах одного проекта фетчить другой в соседнюю папку, чтобы относительные симлинки могли туда ссылаться?
1. Гитлаб репо миррор. Умеет в пулл и пушш режимах
источник

GG

George Gaál in ru_gitlab
Либо делать синхро руками через пайплайн
источник

GG

George Gaál in ru_gitlab
По п.2 не понял, нужен конкретный пример
источник

ДТ

Денис Толстов in ru_gitlab
George Gaál
По п.2 не понял, нужен конкретный пример
cd /media/mint-user/Yocto
git clone -b 'v4.9.51' --depth=80 git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git linux-4.9
git clone -b 'v3.0.9' --depth=20 gitlab.denx.de/Xenomai/xenomai.git xenomai-3.0.9
wget https://xenomai.org/downloads/ipipe/v4.x/arm/ipipe-core-4.9.51-arm-4.patch
cd xenomai-3.0.9
./scripts/prepare-kernel.sh --linux=../linux-4.9 --ipipe=../ipipe-core-4.9.51-arm-4.patch --arch=arm
cd ../linux-4.9
export ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KBUILD_OUTPUT=build
make imx_v6_v7_defconfig
make -j4 zImage modules

Судя по выводу symlinks -rv linux-4.9, в дереве ядра появляются абсолютные ссылки на соседнюю внешнюю папку xenomai-3.0.9. Их можно автоматически конвертировать в относительные. Тогда для успешной компиляции мне нужно стягивать на раннера не только нашу репу ядра, но и репу xenomai, и они должны оказаться в шаговой доступности.
источник

GG

George Gaál in ru_gitlab
Денис Толстов
cd /media/mint-user/Yocto
git clone -b 'v4.9.51' --depth=80 git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git linux-4.9
git clone -b 'v3.0.9' --depth=20 gitlab.denx.de/Xenomai/xenomai.git xenomai-3.0.9
wget https://xenomai.org/downloads/ipipe/v4.x/arm/ipipe-core-4.9.51-arm-4.patch
cd xenomai-3.0.9
./scripts/prepare-kernel.sh --linux=../linux-4.9 --ipipe=../ipipe-core-4.9.51-arm-4.patch --arch=arm
cd ../linux-4.9
export ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KBUILD_OUTPUT=build
make imx_v6_v7_defconfig
make -j4 zImage modules

Судя по выводу symlinks -rv linux-4.9, в дереве ядра появляются абсолютные ссылки на соседнюю внешнюю папку xenomai-3.0.9. Их можно автоматически конвертировать в относительные. Тогда для успешной компиляции мне нужно стягивать на раннера не только нашу репу ядра, но и репу xenomai, и они должны оказаться в шаговой доступности.
А что мешает собирать в докере, чтобы исходники могли быть в любом каталоге ?
источник

ДТ

Денис Толстов in ru_gitlab
George Gaál
А что мешает собирать в докере, чтобы исходники могли быть в любом каталоге ?
Так я и собираю в докере локальным собственным образом, правда без persistent volumes
источник

ДТ

Денис Толстов in ru_gitlab
gitlab-runner подключает вольюмы build и cache куда-то в контейнер, могу оказаться перекрытым
источник

A

Andor in ru_gitlab
Денис Толстов
cd /media/mint-user/Yocto
git clone -b 'v4.9.51' --depth=80 git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git linux-4.9
git clone -b 'v3.0.9' --depth=20 gitlab.denx.de/Xenomai/xenomai.git xenomai-3.0.9
wget https://xenomai.org/downloads/ipipe/v4.x/arm/ipipe-core-4.9.51-arm-4.patch
cd xenomai-3.0.9
./scripts/prepare-kernel.sh --linux=../linux-4.9 --ipipe=../ipipe-core-4.9.51-arm-4.patch --arch=arm
cd ../linux-4.9
export ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KBUILD_OUTPUT=build
make imx_v6_v7_defconfig
make -j4 zImage modules

Судя по выводу symlinks -rv linux-4.9, в дереве ядра появляются абсолютные ссылки на соседнюю внешнюю папку xenomai-3.0.9. Их можно автоматически конвертировать в относительные. Тогда для успешной компиляции мне нужно стягивать на раннера не только нашу репу ядра, но и репу xenomai, и они должны оказаться в шаговой доступности.
я б на твоём месте и те и другие сорцы вытягивал тарболлами
источник

A

Andor in ru_gitlab
а не гитом
источник

ДТ

Денис Толстов in ru_gitlab
Andor
я б на твоём месте и те и другие сорцы вытягивал тарболлами
так мы свой форк ведём с нужными нам патчами и конфигами под конкретно нашу железку, и урлы меняются на локальный инстанс гитлаба
источник

A

Andor in ru_gitlab
а у себя в гитлабе только скрипты для сборки оставил
источник

MG

Max Garmash in ru_gitlab
а никто не сталкивался с задачей на Community сделать CI для внешнего (github) репозитория ?
источник

A

Andor in ru_gitlab
Max Garmash
а никто не сталкивался с задачей на Community сделать CI для внешнего (github) репозитория ?
берёшь и делаешь
источник

MG

Max Garmash in ru_gitlab
т.е. я вижу себе это как синкать себе постоянно в локальную репу и там запускать сборку
источник

MG

Max Garmash in ru_gitlab
вроде даже внешние .gitlab-ci.yml недавно завезли
источник

A

Andor in ru_gitlab
чего?
источник

A

Andor in ru_gitlab
берёшь и делаешь мирроринг
источник

A

Andor in ru_gitlab
а, или community это селф-хостед бесплатный?
источник

MG

Max Garmash in ru_gitlab
да
источник