Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


This page shall provide a guide for updating systems after a new release (merge in master) was made.

VMs PreMerge Checks

Code Block
languagebash
php artisan migrate
php artisan module:migrate

php artisan db:seed
php artisan module:seed

php artisan nms:contract daily
php artisan provvoip:phonenumber

# GUI CHECKS
# 	(1) Contract & Modem Save
# 	(2) Topography
# 	(3) HFC NetElement

 

Testsystem Update Checks

...

Tests before Merging new Pull Requests / Demosystem Test

The following most important things should always be tested in GUI/Browser before changes will be merged (as they are currently not tested via unit testing). After the changes are merged it's recommended to check them with live data on a demosystem (if available).

  1. Provisioning -> Contract -> Modem/CPE/MTA Analysis page
  2. Networks -> Topography & Entity Diagramm
  3. HFC -> NetElement -> Controlling View (e.g. CMTS)
  4. Billing -> SettlementRun -> Create (or via Cmdline: php artisan billing:accounting) 

After Upgrade Tests

Code Block
languagebash
titleTestflow
php artisan migrate
php artisan module:migrate

php artisan db:seed
php artisan module:seed

# check daily conversions
php artisan nms:contract daily
php artisan provvoip:phonenumber

# Checkcheck Modemactive Analysisstates Pagesin forDB
Errors!mysql #-u Checkroot ERD-p &<psw> Topography for Networks!

db_lara
# show all contracts that have network_access=0 or contract-/modem-network-access/phonenumber-active differs
[db_lara]> select c.id, c.firstname, c.lastname, c.network_access as Cnw_access, m.network_access as Mnw_access, p.username, p.active from contract c, modem m, mta mta, phonenumber p where c.id=m.contract_id and p.mta_id=mta.id and mta.modem_id=m.id and c.deleted_at is null and m.deleted_at is null and mta.deleted_at is null and p.deleted_at is null and (c.network_access!=m.network_access or c.network_access!=p.active or m.network_access!=p.active or c.network_access=0);

# check if all configfiles have Datarate assigned - both outputs should be the same
# ls -l /tftpboot/cm/ | awk 'END {print NR/2}'
ls -l /tftpboot/cm/*.cfg | wc -l								 				# Nr Configfiles
grep MaxRateSustained  /tftpboot/cm/*.conf | wc -l | awk '{print $1/2}'  		# Nr Configfiles with Datarate assigned

 

 

Live System Update

Provisional Restarts

Code Block
languagebash
systemctl restart nmsd

Check before

check cron jobs in app/Console/Kernel.php if sth new can happen over night

Test & Execute directly after

Code Block
languagebash
# dump database before!
mysqldump

composer update
php artisan migrate
php artisan module:migrate
php artisan nms:auth
php artisan route:cache

# check daily conversions
php artisan nms:contract daily
php artisan provvoip:phonenumber
# check active states in DB
mysql -u root -p <psw> db_lara
# show all contracts that have network_access=0 or contract-/modem-network-access/phonenumber-active differs
[db_lara]> select c.id, c.firstname, c.lastname, c.network_access as Cnw_access, m.network_access as Mnw_access, p.username, p.active from contract c, modem m, mta mta, phonenumber p where c.id=m.contract_id and p.mta_id=mta.id and mta.modem_id=m.id and c.deleted_at is null and m.deleted_at is null and mta.deleted_at is null and p.deleted_at is null and (c.network_access!=m.network_access or c.network_access!=p.active or m.network_access!=p.active or c.network_access=0);

Import

see Km3 Import Page

...