This project will no longer be maintained by Intel.
This project has been identified as having known security escapes.
Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project.
Intel no longer accepts patches to this project.
This is a repository that contains all the code for OpenIKT(Open Inter kernel Tools). OpenIKT is a batch of utility tools, used to track the kernel patch status among multi open-source projects. it is developed by the Django and VUE.
Ubuntu 20.04 default install python3.8. if you didn't have, please visit: https://www.python.org/ install.
Recommended to use a virtual environment
# Install dependency packages
sudo apt install python3-venv
# Generate virtual environment
python3 -m venv {your virtualenv name}
# Enter virtual environment
source ./{your virtualenv name}/bin/activate
# exit
Deactivate
# github code
git clone https://github.com/intel/openikt.git
# Enter the directory
cd openikt-server
# install (in virtual environment)
pip install -r requirements.txt
python3 manage.py makemigrations
python3 manage.py migrate
python3 manage.py createsuperuser
python3 manage.py runserver 0:8000
Visit: http://localhost:8000/admin use your superuser account to login.
Recommended to use uwsgi to managed projects. How to use Django with uWSGI: https://docs.djangoproject.com/en/4.2/howto/deployment/wsgi/uwsgi/
# install
python -m pip install uwsgi
# After configuring according to the project uwsgi.ini file
uwsgi --ini uwsgi.ini
# exit
uwsgi --stop uwsgi.pid
Need node.js, if you didn't have, please visit: https://nodejs.org/ install.
cd openikt-web
# install package
npm install
# config openikt server host
vim .env.development
VUE_APP_DEV_SERVER_PROXY_URL = http://xxx:8000
VUE_APP_AJAX_URL = /v1
# run
npm run serve
Please visit: http://xxx:7777, web page work on.
# config openikt server host
vim .env.production
VUE_APP_AJAX_URL = /v1
# build
npm run build
After, can use nginx to proxy your project. https://nginx.org/en/, Please refer to:
server {
listen 443 ssl;
#server_name localhost;
server_name xxxx;
ssl_certificate xxx;
ssl_certificate_key xxx;
location / {
root .../os.linux.kernel.devops.openikt/openikt-web/dist;
index index.html index.htm;
try_files $uri $uri/ @router;
access_log .../xxx.log;
}
location /v1/ {
# your openikt server url
proxy_pass xxx;
proxy_http_version 1.1;
proxy_set_header Connection "";
add_header Access-Control-Allow-Methods *;
add_header Access-Control-Max-Age 3600;
add_header Access-Control-Allow-Credentials true;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = OPTIONS ) {
return 200;
}
}
location @router {
rewrite ^.*$ /index.html last;
}
}
You can setup or update Openikt services with docker-compose/setup.py, please refer docker-compose/README.md for more information.
setup.py can't deploy the app app_ii completely yet, there's no Jenkins server deployment, therefore Image Comparison will not work correctly. You can deploy Jenkins manually and create a pipeline job named image-inspector with openikt-server/app_ii/jenkinsfile.
Please refer https://github.com/intel/openikt/wiki
- Issues
Any bug or issue, please submit issues.
- Contribution
See CONTRIBUTING.md for details.