Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
build server: new hardware #1715
Thank you, this is great news! It is also the perfect opportunity to write a tutorial of how to setup a new computer with puppet-libelektra ;)
I'll send you the login details once it has a public IP. (Currently it has an internal IP which would require us to tunnel over another computer.)
Does anyone know if the difference of Ryzen 5 and 7 is relevant for us? Or is it only a matter of seconds for the build time? More cores could be relevant though, I'll check the exact CPUs they have. The computer we will not use, will be used as low-load mail/web server (currently served by an AMD X2 Dual Core with a load of 0).
@tom-wa Are there any news about the power9 computer?
The first build jobs already passed on the a7 machine.
However, I've decided to do a simple POC for docker based builds: see https://build.libelektra.org/jenkins/job/test-docker/
added a commit
Jan 6, 2018
Thank you, this is great!
The pipeline config looks really nice. Does the pipeline run with two different images (stretch and xenial)? (The loop looks like only one image is used: "docker.image('elektra-builddep:stretch').inside()").
Is it safe to use sudo and install Elektra or will this modify the docker image? (I added two more stages but commented them out for now.)
I also enabled triggering from GitHub (by default and phrases, see fae2fbf). It first did not work because I forgot to add it as "GitHub" project.
The speed of the hardware seems to be good.
Oh, yes indeed. should be replaced by
In general, yes, because Docker images are immutable, all changed files go into the "runnging" container (copy-on-write). So each new container gets exactly the same file, no modification from previous runs.
The Jenkins Docker plugin defaults uses a unprivileged user with same UID within the container, to allow writes to the workspace outside the container.
In general we should design the Docker images in a way to have all tests passing without requiring root privileges, while allowing to test modifications in system space too.
For handling Docker images, I would suggest:
This way, we can use them for builds in a well defined way and other users/devs can use these images for testing too.
Can you create an issue? Or are they only related to not being able to write to
While it is possible to test Elektra without ever being root, it makes the setup unrealistic. So we should take advantage of the non-harmful root access and run
A chown is needed and it needs to be executed as root.
We already have a doc/docker/Dockerfile. You are welcomed to add more Dockerfiles.
Yes, these are excellent suggestions but as always it is a question of available time. The most urgent point is that we understand the setup you have done, so that others can add further Docker images and so on.
referenced this issue
Jan 7, 2018
Labeled agent as "stretch" an first native (non-docker) build job succeeded: https://build.libelektra.org/jenkins/job/elektra-gcc-configure-debian-stretch/662
Thank you, this is great! Let us see how it improves build time.
Did you install the deps directly on the hosts or within a container?
Btw. seems like we get a second ryzen hardware for at least one year. But it is not directly reachable via Internet but we would need a ssh tunnel over a7. Anyone interested in setting this up?
Accounts should be available within the next days.
@e1528532 Having the new ryzen included as agent would be great, the build server is under really heavy load. I am afraid the load also causes the lost connections among other problems.
Ideally we should avoid any build job to be built on the hardware where jenkins is running. (Even the build server website sometimes is hardly responding.)