| commit | 4ea03cf223854ed964f4f8e2713379b10a6d3962 | [log] [tgz] |
|---|---|---|
| author | vegall <lvega@whitestack.com> | Tue Jul 02 15:30:30 2024 +0000 |
| committer | garciadeblas <gerardo.garciadeblas@telefonica.com> | Wed Mar 19 16:39:07 2025 +0100 |
| tree | faab42b865af90f5004c7a13de4cc6d4e7197f35 | |
| parent | 2f8ef7c7b96ffcea56a66070e827fb82e6b00d07 [diff] |
Fix keystone to manage the OSM users/projects Keystone was not used by default by OSM NBI. Instead, internal authentication is used. When NBI is configured to use Keystone as auth backend, we found that it didn't bootstrap properly because there were no data in the MySQL DB used by Keystone. The initilization of DB was supposed to be done by the Keystone containers in keystone-deployment. However, those container were not able to initialize the DB because they were running as regular users instead of root users. Keystone is thought as an infra solution, not as an application solution. The community behind Keystone development agreed on that behaviour. Based on that, Keystone containers were adapted to run as root. In addition, we decided to disable Keystone and MySQL as part of the default values for OSM helm chart. Change-Id: I0e7078b809abe858a69323d6e3e493e862d6e6ab Signed-off-by: vegall <lvega@whitestack.com> Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
Scripts and artifacts for OSM installation and CI/CD pipelines.
jenkins: scripts run by jenkins. All OSM modules rely on these scripts.installers: scripts to be executed to install OSM. It also includes the OSM helm chart.mkdir osm
cd osm
Clone the projects that you would like to test
git clone "https://osm.etsi.org/gerrit/osm/devops" git clone "https://osm.etsi.org/gerrit/osm/common" git clone "https://osm.etsi.org/gerrit/osm/N2VC" git clone "https://osm.etsi.org/gerrit/osm/LCM" ...
If needed, update code in the repos. An example for N2VC is shown below
cd N2VC git pull "https://osm.etsi.org/gerrit/osm/N2VC" refs/changes/22/14222/2 cd .. cd LCM git pull "https://osm.etsi.org/gerrit/osm/LCM" refs/changes/24/14224/3 cd ..
./devops/tools/local-build.sh --run-httpserver ps -ef |grep python3
# Clean previous artifacts rm $HOME/.osm/httpd/*.deb # Build new artifacts ./devops/tools/local-build.sh --module common,N2VC,LCM stage-2 # Check that artifacts were created ls $HOME/.osm/httpd
Note: Artifacts need to be cleaned every time we want to try new patches
./devops/tools/local-build.sh --module LCM stage-3 docker image ls # Copy the image to your image resistry, e.g.: "your-registry/osm/osm-testing/opensourcemano/lcm:myfeature"
helm3 -n osm list helm3 -n osm get values osm
Upgrade with kubectl:
kubectl -n osm patch deployment lcm --patch '{"spec": {"template": {"spec": {"containers": [{"name": "lcm", "image": "your-registry/osm/osm-testing/opensourcemano/lcm:myfeature}]}}}}' kubectl -n osm get all
Upgrade with Helm:
helm3 -n osm list helm3 -n osm history osm helm3 -n osm upgrade --reuse-values --set lcm.image.repository="your-registry/osm/osm-testing/opensourcemano/lcm" --set lcm.image.tag="myfeature" osm ./helm-chart-dir helm3 -n osm status osm kubectl -n osm get all
git clone "https://osm.etsi.org/gerrit/osm/devops" cd devops/ # Get a patch from Gerrit # git pull "https://osm.etsi.org/gerrit/osm/devops" refs/changes/25/14325/17 ./installers/install_helm_client.sh -D . --debug ./devops-stages/stage-test.sh ./installers/full_install_osm.sh -D . --debug -R testing-daily -t testing-daily -r testing -y 2>&1 | tee osm_install_log.txt kubectl -n osm get all kubectl -n osm get ingress