In a DevOps way of working, developers and CI servers both need to run tasks on the repository. Doing them in a container mounting the repository as volume allows:
To mutualise the scripts executing these tasks
To ensure the environment of the CI is the same as the one used on the developers' computers
To improve our craftsmanship with the philosophy of "developing codes which manipulate codes"
Implementation
In order to improve modularity and scalability, each tasks can be run by a K3S job and each job comes from its own Docker image (so 1 task => 1 job and 1 job => 1 docker image):
tools/k3s/jobs/yocto/build-dev-image/index.bash // based on sato
tools/k3s/jobs/yocto/build-prod-image/index.bash // lower possible level
We will also need to write/share those Bash scripts:
Enhancement
Metadata
Description
In a DevOps way of working, developers and CI servers both need to run tasks on the repository. Doing them in a container mounting the repository as volume allows:
Implementation
In order to improve modularity and scalability, each tasks can be run by a K3S job and each job comes from its own Docker image (so 1 task => 1 job and 1 job => 1 docker image):
We will also need to write/share those Bash scripts: