nixos/librenms: regenerate caches after every package change (#388914)

authored by

xanderio and committed by
GitHub
6607cf78 0a2c7daf

+15 -8
+15 -8
nixos/modules/services/monitoring/librenms.nix
··· 603 603 '' 604 604 ) 605 605 + '' 606 - # clear cache after update (before migrations) 607 - OLD_VERSION=$(cat ${cfg.dataDir}/version) 608 - if [[ $OLD_VERSION != "${package.version}" ]]; then 606 + # clear cache if package has changed (cache may contain cached paths 607 + # to the old package) 608 + OLD_PACKAGE=$(cat ${cfg.dataDir}/package) 609 + if [[ $OLD_PACKAGE != "${package}" ]]; then 609 610 rm -r ${cfg.dataDir}/cache/* 610 611 fi 611 612 ··· 616 617 echo "${lib.boolToString cfg.enableOneMinutePolling}" > ${cfg.dataDir}/one_minute_enabled 617 618 fi 618 619 619 - # migrate db 620 - ${artisanWrapper}/bin/librenms-artisan migrate --force --no-interaction 621 - 622 - # regenerate cache after migrations after update 620 + # migrate db if package version has changed 621 + # not necessary for every package change 622 + OLD_VERSION=$(cat ${cfg.dataDir}/version) 623 623 if [[ $OLD_VERSION != "${package.version}" ]]; then 624 + ${artisanWrapper}/bin/librenms-artisan migrate --force --no-interaction 625 + echo "${package.version}" > ${cfg.dataDir}/version 626 + fi 627 + 628 + # regenerate cache if package has changed 629 + if [[ $OLD_PACKAGE != "${package}" ]]; then 624 630 ${artisanWrapper}/bin/librenms-artisan view:clear 625 631 ${artisanWrapper}/bin/librenms-artisan optimize:clear 626 632 ${artisanWrapper}/bin/librenms-artisan view:cache 627 633 ${artisanWrapper}/bin/librenms-artisan optimize 628 - echo "${package.version}" > ${cfg.dataDir}/version 634 + echo "${package}" > ${cfg.dataDir}/package 629 635 fi 630 636 ''; 631 637 }; ··· 693 699 "d ${cfg.dataDir} 0750 ${cfg.user} ${cfg.group} - -" 694 700 "f ${cfg.dataDir}/.env 0600 ${cfg.user} ${cfg.group} - -" 695 701 "f ${cfg.dataDir}/version 0600 ${cfg.user} ${cfg.group} - -" 702 + "f ${cfg.dataDir}/package 0600 ${cfg.user} ${cfg.group} - -" 696 703 "f ${cfg.dataDir}/one_minute_enabled 0600 ${cfg.user} ${cfg.group} - -" 697 704 "f ${cfg.dataDir}/config.json 0600 ${cfg.user} ${cfg.group} - -" 698 705 "d ${cfg.dataDir}/storage 0700 ${cfg.user} ${cfg.group} - -"