Hi Fathi,

Thanks for your explanation. I want to setup CI to build luajit and do some integration test with nginx. To avoid polluting the host environment, I prefer to run the tests inside a clean container which based on a customized image.

And in the beginning, I just want to start with some simple settings to :
1. set the job to triggered by GitHub pull request
2. do "make test" in "execute shell"

But now I am facing an issue that I cannot clone the ci project via ssh. I've confirmed that I have uploaded public key correctly.

BTW, what is your time zone? So that I can find a right time to ping you on IRC.

Regards,
Zheng

On 6 August 2016 at 14:50, Fathi Boudra <fathi.boudra@linaro.org> wrote:
Hi,

On 5 August 2016 at 14:00, Zheng Xu <zheng.xu@linaro.org> wrote:
> Hi all,
>
> There are more and more tests added to the project. And we are fixing issues
> in the common IRs and even common codes. I think it is time to set up CI for
> the project to help people to identify issues early.
>
> We have in house CI set up for the project which will do test for arm32,
> arm64, x86 and x86_64, but unfortunately it can not be accessed from public
> domain. I will try to get the approval from the managers to copy the scripts
> to Linaro CI if possible. I will get back to you once I got the approval or
> be rejected.
>
>
> Hi Alan & Fathi,
>
> I saw there are some aarch64 and x86 machines available on ci.linaro.org.
> Can we share use some of them for LuaJIT CI? If I am able to copy the
> scripts to Linaro CI, the basic requirement for the infrastructure would be
> :
>
> 1 aarch64 machine with ubuntu installed
> 1 x86_64 machine with ubuntu installed
> 1 gerrit project to host the CI scripts
> It is a GitHub project, so we might need some related plugins installed in
> the Jenkins system.
> Might need help from your team to run a script to setup the host environment
> or setup the host manually. (docker, makefile and some other dependencies)
> We do not have many tests so far, so the job won't be too large. It should
> be able to be finished within 15 minutes.
>
> Can these requirement be satisfied?

Linaro CI provide access through docker build slaves. We have both
aarch64/x86_64 slaves provided with either debian jessie or ubuntu
xenial.
All the build jobs are described in yaml and can be found on
https://git.linaro.org/ci/job/configs.git repository.
The jenkins instance doesn't need any specific plugins for Github projects.
I don't think you need a gerrit project to host CI scripts, as they
can be embedded in the yaml file or even hosted in the same
repository.

As far as I can tell, your requirements are satisfied and it should be
straightforward to set up the build job.
For the tests side, it depends which kind of access to the hw is
needed. I'll need more info to point you in the right direction.
Usually, in a regular CI loop, we submit the test job(s) to LAVA
(https://validation.linaro.org/).
Running tests in the docker slave is possible, some build jobs are
doing it, but it isn't always suitable for the tests to run.

Here's some documentation that you can start with:
https://wiki.linaro.org/LMG/Engineering/SettingUpJobsInCI

It's AOSP oriented but it's a good starting point.
Once you have a build job ready for review, add me as a reviewer.
If you have any technical questions, feel free to send an email to me
or ping me on IRC (nick fabo).

> Regards,
> Zheng

Cheers,
--
Fathi Boudra
Engineering Manager | Builds and Baselines, Release
Linaro.org | Open source software for ARM SoCs