Our Web Dashboard to evaluate test results from the common results database(KCIDB). Available at dashboard.kernelci.org.
The new KernelCI Web Dashboard is a web application created to provide access to static checks, build logs, boot logs and test results related for the Linux kernel CI/test ecosystem. All that data will be provided by KCIDB system from the KernelCI Foundation.
What we have as a repository is a monorepo containing the dashboard (the web application) and a backend.
A web app built with React + Typescript, to see more information check the dashboard README.
A Python http server built with Django + DRF, to see more information check the backend README.
Create a .env file in /dashboard (Do not forget to check and set the variables and their values)
cp ./dashboard/.env.example ./dashboard/.env
Create a secret key for Django:
export DJANGO_SECRET_KEY=$(openssl rand -base64 22)
We are not using sessions or anything like that right now, so changing the secret key won't be a big deal.
Add a application_default_credentials.json
file with your ADC in the root of the project.
gcloud auth application-default login
cp ~/.config/gcloud/application_default_credentials.json .
After setting up your connection with Google Cloud with the following commands:
cloud-sql-proxy kernelci-production:us-central1:postgresql2 &
gcloud auth application-default login
If it doesn't work, check the Configure ADC with your Google Account documentation.
Create a secret file with the database password:
mkdir -p backend/runtime/secrets
echo <password> > backend/runtime/secrets/postgres_password_secret
If you are going to use a database user other than kernelci
, set it to DB_DEFAULT_USER
:
export DB_DEFAULT_USER=<user>
Startup the services:
docker compose up --build -d
To deploy to prod you need to push a tag in the release/YYYYMMDD.N
format
like: release/20240910.0
There is an onboarding guide to help get acquainted with the project.