On Donnerstag, 18. August 2022, 09:47:48 CEST Claudius Heine wrote:
Hi Dan,
thanks for the reply.
On 2022-08-18 09:05, Dan Čermák wrote:
Hi Claudius,
Claudius Heine <ch@denx.de> writes:
Hi,
I am rather new to OBS and I am currently looking into ways to integrate CI with OBS. We are using a private Gitlab server that also has some CI runners. We want to build packages for Debian and Ubuntu.
The privat repo hosts the unpacked debianized project sources (directory containing the project + a `/debian` directory containing package metadata), which AFAIK aren't supported by OBS, it only supports Debian source packages (*.dsc, *.debian.tar.xz and *.orig.tar.gz, etc. files).
So the general idea would be to use the CI on Gitlab to package the source packages and then pushing those via `osc add ... && osc ci` from the CI runner to OBS and let OBS take care of managing the APT repo and building for all different archs etc.
You could alternatively try out the experimental scmsync feature [1]. This allows you to put either individual packages or whole repositories into git, let OBS just pull the sources from the repository and build them for you. That would render the whole authentication story moot as all you'd need would be a repository with the package sources ready to be build and reachable by OBS.
Interesting idea. However the private GitLab instance is not directly reachable from the public internet. So OBS will have trouble cloning any repos from it.
Can a git repo be pushed to OBS from a remote location instead of OBS trying to pull the repo?
That is currently not supported.... when using scmsync mechanics it is assumed that the git server is an authority of the sources basically on same level as the OBS source server. Means this git server should be part of your OBS setup ... -- Adrian Schroeter <adrian@suse.de> Build Infrastructure Project Manager SUSE Software Solutions Germany GmbH, Frankenstraße 146, 90461 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Ivo Totev