The Kernel CI Webserver isn't displaying the build information or artifacts
Issue Background
This is a re-creation of issue #63 (closed) - except that ticket focused on Nginx not starting. This ticket is focused on the missing build information and build artifacts.
Issue description
The Kernel CI Frontend webserver will no longer display builds that have been performed.
The Linaro Kernel CI Team has made changes to the kernelci-backend that are summed up in the email below:
Hi Benito,
apologies for using your personal email (found it on LinkedIn), but I couldn't find your work one. I didn't know who to address this, so I'm sending it to you: please share it with your team.
Since you guys have been using kernelci, and are probably the only one actively using/deploying it outside of Linaro, I wanted to let you know that we made some substantial changes to our backend and frontend code.
One of the assumptions we based our code a few years ago, was not valid anymore and we had to change a few things to make sure we can keep track of builds and boots correctly.
We introduced a new mandatory field for a few of the APIs we use in order to uniquely identify jobs, builds and boots. The field is
git_branch: it was already available in the database and it was already being used, but right now it is mandatory.Another thing we had to change, is that the branch field now does not contain anymore the
local/string: that was an old artifact from our build system. Before, a git_branch field could have been calledlocal/master, now it is onlymaster. When uploading new builds an boots the backend code will clean it up. If you rely on thegit_branchfield for your builds, you will need to convert existing dataset to update that field. In the git repo there is a script [1] that can be used to convert the data: we used it ourselves to convert our entire dataset.We also had to change how artifacts are stored at the filesystem level. Usually, the path was:
$tree/$kernel/$arch-$defconfigNow it has become:
$tree/$branch/$kernel/$arch/$defconfigWhen sending new builds and boots to the backend, the JSON "version" field should be set to "1.1" in order for the frontend to create the correct URLs pointing to the storage system.
All these new changes have been introduced with the following tags on git:
https://github.com/kernelci/kernelci-frontend/tree/2017.3.3
https://github.com/kernelci/kernelci-backend/tree/2017.3.1
So anything before those tags is still the "old" way of handling the data.
As always, let me know if you need any help. Ciao.
[1] https://github.com/kernelci/kernelci-backend/blob/master/app/utils/scripts/migrate-git-branch.py
Acceptance criteria
This issue will be considered solved when we can view the build information and access the build artifacts from within the Kernel CI frontend.