[PATCH v6 0/3] Yocto Gitlab CI

Bertrand Marquis posted 3 patches 1 year, 4 months ago
Test gitlab-ci failed
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/cover.1669904508.git.bertrand.marquis@arm.com
.gitignore                                 |   1 +
automation/build/Makefile                  |  26 +-
automation/build/yocto/build-yocto.sh      | 356 +++++++++++++++++++++
automation/build/yocto/yocto.dockerfile.in | 114 +++++++
automation/build/yocto/yocto.inc           |  44 +++
automation/gitlab-ci/test.yaml             |  45 +++
6 files changed, 583 insertions(+), 3 deletions(-)
create mode 100755 automation/build/yocto/build-yocto.sh
create mode 100644 automation/build/yocto/yocto.dockerfile.in
create mode 100644 automation/build/yocto/yocto.inc
[PATCH v6 0/3] Yocto Gitlab CI
Posted by Bertrand Marquis 1 year, 4 months ago
This patch series is a first attempt to check if we could use Yocto in
gitlab ci to build and run xen on qemu for arm, arm64 and x86.

The first patch is introducing a container template from which container
files can be generated for all combinations we want to support (qemu
arm, arm64 and x86 targets and hosts x86_64 and arm64).
It is also introducing a generic build script (build-yocto.sh) that is
used to create, build and run a Yocto project.

The second patch is adding a way to easily clean locally created
containers.

The third patch is introducing some gitlab CI templates and jobs so that
we can test a Xen source tree in gitlab-CI using Yocto.

This has been tested on a x86 host machine and on an arm host machine
(with mk_dsdt.c fix).

Changes in v6:
- fix qemux86 errors on arm hosts
- added some comments
- fix Makefile to not call docker a lot during each parse
- several fixes and improvments described in each patch

Changes in v5:
- automatic cleanup of generated docker files using INTERMEDIATE
- typo fixes
- rebase on Stefano's next branch
- remove clean rule cleaning all containers

Changes in v4:
- rework the container generation to support multiple hosts
- rework the container generation to use a single template for all
  docker files (make process is generating the docker files).

Changes in v3:
- limit number of jobs in yocto
- do not copy build script inside container
- add patch from Michal to create gitlab jobs

Changes in v2:
- remove gitignore patch which was merged
- add a --dump-log support in build-yocto.sh script and use it during
  container creation to see the error logs.


*** BLURB HERE ***

Bertrand Marquis (2):
  automation: Create Yocto docker images
  automation: Add a clean rule for containers

Michal Orzel (1):
  automation: Add CI test jobs for Yocto

 .gitignore                                 |   1 +
 automation/build/Makefile                  |  26 +-
 automation/build/yocto/build-yocto.sh      | 356 +++++++++++++++++++++
 automation/build/yocto/yocto.dockerfile.in | 114 +++++++
 automation/build/yocto/yocto.inc           |  44 +++
 automation/gitlab-ci/test.yaml             |  45 +++
 6 files changed, 583 insertions(+), 3 deletions(-)
 create mode 100755 automation/build/yocto/build-yocto.sh
 create mode 100644 automation/build/yocto/yocto.dockerfile.in
 create mode 100644 automation/build/yocto/yocto.inc

-- 
2.25.1
Re: [PATCH v6 0/3] Yocto Gitlab CI
Posted by Stefano Stabellini 1 year, 4 months ago
Tested-by: Stefano Stabellini <sstabellini@kernel.org>


On Thu, 1 Dec 2022, Bertrand Marquis wrote:
> This patch series is a first attempt to check if we could use Yocto in
> gitlab ci to build and run xen on qemu for arm, arm64 and x86.
> 
> The first patch is introducing a container template from which container
> files can be generated for all combinations we want to support (qemu
> arm, arm64 and x86 targets and hosts x86_64 and arm64).
> It is also introducing a generic build script (build-yocto.sh) that is
> used to create, build and run a Yocto project.
> 
> The second patch is adding a way to easily clean locally created
> containers.
> 
> The third patch is introducing some gitlab CI templates and jobs so that
> we can test a Xen source tree in gitlab-CI using Yocto.
> 
> This has been tested on a x86 host machine and on an arm host machine
> (with mk_dsdt.c fix).
> 
> Changes in v6:
> - fix qemux86 errors on arm hosts
> - added some comments
> - fix Makefile to not call docker a lot during each parse
> - several fixes and improvments described in each patch
> 
> Changes in v5:
> - automatic cleanup of generated docker files using INTERMEDIATE
> - typo fixes
> - rebase on Stefano's next branch
> - remove clean rule cleaning all containers
> 
> Changes in v4:
> - rework the container generation to support multiple hosts
> - rework the container generation to use a single template for all
>   docker files (make process is generating the docker files).
> 
> Changes in v3:
> - limit number of jobs in yocto
> - do not copy build script inside container
> - add patch from Michal to create gitlab jobs
> 
> Changes in v2:
> - remove gitignore patch which was merged
> - add a --dump-log support in build-yocto.sh script and use it during
>   container creation to see the error logs.
> 
> 
> *** BLURB HERE ***
> 
> Bertrand Marquis (2):
>   automation: Create Yocto docker images
>   automation: Add a clean rule for containers
> 
> Michal Orzel (1):
>   automation: Add CI test jobs for Yocto
> 
>  .gitignore                                 |   1 +
>  automation/build/Makefile                  |  26 +-
>  automation/build/yocto/build-yocto.sh      | 356 +++++++++++++++++++++
>  automation/build/yocto/yocto.dockerfile.in | 114 +++++++
>  automation/build/yocto/yocto.inc           |  44 +++
>  automation/gitlab-ci/test.yaml             |  45 +++
>  6 files changed, 583 insertions(+), 3 deletions(-)
>  create mode 100755 automation/build/yocto/build-yocto.sh
>  create mode 100644 automation/build/yocto/yocto.dockerfile.in
>  create mode 100644 automation/build/yocto/yocto.inc
> 
> -- 
> 2.25.1
>