Commit Graph

141 Commits

Author SHA1 Message Date
Vincent Dumas
eacb7f3401 N°9553 - Allow loading of localized sample and structural data based on iTop default language
* Add English, French and German structural and sample data in iTop Community

* Add helper methods to allow :
  * Checking of supported module version format
  * Finding a localized file name based on a provided en_us file name and a language
  * Loading a file if the module upgrade crossed a given version
2026-07-10 14:21:56 +02:00
odain
05b8c529fe Fix cache-warmup after any succesfull setup 2026-07-10 11:14:59 +02:00
Eric Espié
a3ef049063 N°9722 - Setup - extension dependencies must be computed with installation choice change (#965)
* WIP compileFrom

* WIP compileFrom

* WIP

* Refactor DataFeatureRemovalController to improve setup redirection and add logging for selected extensions and modules

* Refactor DataFeatureRemovalController to streamline parameter handling for extension management

* Refactor DataFeatureRemovalController and related classes for improved session management and cleanup processes

* N°9722 - replace GetMFModulesToCompile API by GetAdditionalMFModulesBeforeFinalDeltaToCompile + fix test

* N°9722 - Refacto

* N°9722 - remove extensions effectively

* N°9722 - After review

* N°9722 - After review

* N°9722 - Analyze installation before compilation in extension management

*  N°9722 - Refactor and unit tests

* N°9722 - 

* N°9722 - 

* N°9722 - cleanup + geptileia PR feedback

---------

Co-authored-by: odain <olivier.dain@combodo.com>
2026-07-08 16:41:25 +02:00
Eric Espié
3a7439e970 N°9639 - Uninstallation Analysis result doesn't list all the object (#950)
* N°9639 - Uninstallation Analysis better count method

* N°9639 - Fix tests

* N°9639 - Refactor deletion plan handling with new entity classes for improved structure and clarity

* N°9639 - Refactor deletion plan methods to use class names instead of table names and add TotalCount method

* N°9639 - Add messages to tests

* N°9639 - Refactor data feature removal logic and update database queries for consistency

* N°9639 - Refactor SQL queries to use backticks for table and field names

* N°9639 - Enhance deletion logic and add circular reference handling in cleanup process

* N°9639 - Add filtering methods to DeletionPlan classes for improved data cleanup

* N°9639 - Add filtering methods to DeletionPlan classes for improved data cleanup

* N°9639 - Refactor DeletionPlanItem to remove unused queries and simplify constructor

* N°9639 - Refactor variable name for clarity in hierarchical key update process

* Update tests/php-unit-tests/unitary-tests/datamodels/2.x/combodo-data-feature-removal/simulate-audit-from-setup.php

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* N°9639 - Clarify comment on deletion plan to indicate prevention of infinite loops

* N°9639 - Remove unused deletion plan from DataFeatureRemovalController

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-06-30 09:37:30 +02:00
odain
2930a122c6 N°9144 - fix commit operation rmdir conf/production-build failed as not always empty 2026-06-17 15:21:30 +02:00
odain-cbd
207ac373d0 N°9678 - Datamodel not added after extension management setup (#936)
* N°9678 - Datamodel not added after extension management setup

* N°9678 - fix selecting extensions from extensions folder in extension mgt view

* cleanup: remove cached stuff in runtimeenv

* N°9678 - Refactor iTopExtensionsMap instantiation to use GetExtensionsMap method

* N°9678 - Refactor data model compilation and improve directory scanning logic

* N°9678 - Handle MySQLException in ModuleInstallationRepository and remove unnecessary error logging in WizStepModulesChoice

---------

Co-authored-by: Eric Espie <eric.espie@combodo.com>
2026-06-17 10:22:05 +02:00
odain-cbd
cf76c23ac6 N°9670 - Extension management - even if not selected, an extension is analysed during setup check compatibility (#933)
* N°9670 - Extension management - even if not selected, an extension is analysed during setup check compatibility

* N°9670 - enhance log msg

* N°9670 - PR feedback
2026-06-11 07:09:44 +02:00
Lenaick
1a57a427c0 N°9454 - Make MTT compatible with the dry run (#931)
* N°9454 - Make MTT compatible with the dry run

* N°9454 - Make MTT compatible with the dry run

* N°9454 - Cleaning up configuration handling

* N°9454 - Cleanup code

* N°9454 - Remove writable directories

* Update setup/wizardsteps/WizStepLandingBeforeAudit.php

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update setup/runtimeenv.class.inc.php

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* N°9454 - Secure target environment wizard step done form submission

---------

Co-authored-by: Eric Espie <eric.espie@combodo.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-06-09 14:29:06 +02:00
Eric Espie
c80dbf9bb4 N°9169 - Adapt ITSM designer connector to the new setup (FIX some unit tests) 2026-05-28 11:42:59 +02:00
Timmy38
683b075bf5 N°9172 Modify ext mgmt labels 2026-05-28 11:19:30 +02:00
Eric Espie
06bff3f9e4 N°9169 - Adapt ITSM designer connector to the new setup (WIP) 2026-05-27 17:38:19 +02:00
odain
e7ce3fcf8a N°9567 - Make extension mgt to setup work
N°9567 - Make extension mgt to setup work
2026-05-22 14:36:54 +02:00
odain
08a3044cd1 N°9564 - fix first screen
log cleanup

after merge adaptations
2026-05-21 13:52:30 +02:00
odain
00f1c7498d N°8760 - raise module dependency errors in all setups ecept wizard/unattended 2026-05-21 10:10:10 +02:00
odain-cbd
ba6cc9dcba N°9567 - Extension Mgmt : Run setup (#912)
* N°9144 - correct next button in audit page

* N°9567 - WIP

code style

* N°9412 - Screen Analysis results wip + test endpoint

* N°9412 - next button label

* N°9412 - Mask CI pbs

* N°9412 - Analysis results screen wip

* N°9412 - Analysis results screen wip

* N°9567 - fix extension map init of installation choices

* N°9567 - fix test

* N°9567 - link from ext mgt to setup WIP

* N°9567 - add enc_type in UIForm to be able to change content type in twigs

* N°9412 - wip

* N°9567 - Extension Mgmt : Run setup

* N°9567 - Extension Mgmt : Run setup

* N°9567 - Extension Mgmt : Run setup (fix post-deletion button inputs)

* N°9567 - Extension Mgmt : Run setup

* N°9567 - Extension Mgmt : Run setup

* N°9567 - Extension Mgmt : Run setup

---------

Co-authored-by: Eric Espie <eric.espie@combodo.com>
2026-05-20 10:16:32 +02:00
Lenaick
fb7a38c83f N°9134 Validate extension codes before installation and refine progress message styling (#909)
* N°9134 Validate extension codes before installation and refine progress message styling

* Add test for compile failure when extension code is missing
2026-05-18 10:11:37 +02:00
odain
ae1f9391f9 N°9144 - PR review feedbacks 2026-05-06 13:22:46 +02:00
odain
4d2722654a N°9144 - no audit in unattended + tests 2026-05-06 10:53:26 +02:00
odain
73ebf663d6 N°9144 - setup robustness 2026-05-06 10:53:19 +02:00
Eric Espie
80813dba22 N°9503 - Setup wizard : fix symlinks for data/production-modules 2026-04-30 14:35:29 +02:00
Timmy38
d358c41c24 N°9144 Fix code style 2026-04-24 09:12:31 +02:00
odain-cbd
de0e94800a N°8806 - Installation multiple extension with dependence via ITSM Designer (#879)
* N°8806 - Installation multiple extension with dependence via ITSM Designer

* N°8806 - fix tests

* N°8806 - improve GetMFModulesToCompile to handle extensions and installation choices on all setup that use compileFrom (MTP, CoreUpdate, Hub, DryRemoval)

* N°8806 - add log when loading MFModule

* N°8806 - code cleanup + test cover

* N°8806 - typo

* N°8806 - log removal
2026-04-21 10:52:23 +02:00
Eric Espie
d3dbe7b231 N°9514 - End user device cannot be uninstalled (WIP) 2026-04-17 14:18:07 +02:00
Eric Espie
5ff640dfe7 Fix config creation 2026-04-14 17:19:18 +02:00
Eric Espie
662d6e3fb4 Fix config creation 2026-04-14 17:01:54 +02:00
odain
e7e7664cb8 N°9500 - move STATIC_CALL_AUTOSELECT_WHITELIST from RuntimeEnvironment to ModuleFileReader 2026-04-13 22:56:46 +02:00
odain
ad0234a94f N°9144 - setup wizard sequencers test coverage + fixes
N°9144 - ci: fix hub setup test

N°9144 - code style

N°9144 - tests and fixes

N°9144 - ci: fix tests and code style
2026-04-08 15:26:09 +02:00
odain
82a20c54a9 N°9144 - fix both UI setup wizard and CLI unattended + replace production by ITOP_DEFAULT_ENV 2026-04-08 15:24:42 +02:00
Eric Espie
d36f68e3b0 N°9144 - Fix sessions 2026-04-08 15:24:40 +02:00
odain
e27aca728c N°9144 - WIP: fix unattended 2026-04-08 15:24:35 +02:00
Eric Espie
8dca03f557 N°9144 - Fix runtime env 2026-04-08 15:24:24 +02:00
Eric Espie
2129007512 N°9144 - Setup sequencer side B 2026-04-08 15:24:22 +02:00
Eric Espie
14d01b89a7 N°9144 - Setup sequencer side A 2026-04-08 15:24:12 +02:00
Eric Espie
e2bda81414 N°9144 - Split setup in 2 different step - refactor RuntimeEnv 2026-04-08 15:20:52 +02:00
Timmy38
2b2e431d0a N°9144 Add data audit setup step
N°8864 Fix unneeded char
2026-03-18 14:16:53 +01:00
odain
4c0b54a0f7 N°8760 - Audit uninstall of extensions that declare final classes
N°8760 - be able to list modules based on extension choices
refactoring: move some classes in a moduleinstallation folder (coming
namespace)

N°8760 - module dependency check applied before audit

N°8760 - make dependency check work during audit

N°8760 - fix ci

N°8760 - fix ci

N°8760 - add GetCreatedIn to get module name based on DBObject class - everything stored in MetaModel during compilation and autoload

N°8760 - be able to describe from which module a datamodel class comes via MetaModel created_in field

N°8760 - rename GetCreatedIn <- GetModuleName + compute module name live instead having complex stuff in MetaModel/compilation

temp review 1

review: renaming InstallationChoicesToModuleConverter

review: renaming InstallationChoicesToModuleConverter

review: ModuleDiscovery:GetModulesOrderedByDependencies replacing deprecated GetAvailableModules method

ci: fix typo

cleanup

review: rework InstallationChoicesToModuleConverter

N°8760 - review tests
2026-03-18 14:16:52 +01:00
odain
f7dfeafa3f setup: phpstan level 1 2026-03-18 14:16:48 +01:00
odain
5b4030a95f setup: phpstan level 0 2026-03-18 14:16:13 +01:00
odain
20ae350286 N°8981: ModuleInstallationRepository dedicated to module installation queries
N°8981: ModuleInstallationRepository dedicated to module installation queries

fix renaming
2026-03-18 14:14:59 +01:00
odain
b230623a32 N°8981: repair previous setup cleanup (broken setups) 2026-03-18 14:14:59 +01:00
odain
ab7a737512 N°4789 - do not call empty ModuleInstallerAPI class + logs
code style
2026-03-18 14:14:59 +01:00
odain
56cb3cae4f N°8981 - cleanup/simplify setup
fix RecordInstallation due to previous refactoring
2026-03-18 14:14:58 +01:00
Timmy38
55b03941e8 N°8864 list extensions installation in setup recap 2026-03-18 14:14:58 +01:00
odain
715d9d3b1c less logs during setup 2025-12-05 17:37:09 +01:00
odain
8e10cf9b72 N°8760 : fix broken setup
ci: fix merge
2025-12-04 18:28:47 +01:00
odain
ae980e365d N°8760 :fix ModuleInstallation db query + refactor query in ModuleInstallationService
extensionmap cleanup

fix setup broken
2025-12-04 17:19:18 +01:00
odain
a2b01b3ed4 N°8760 - setupaudit and dry removal API review with Romain - avoid file deletion
N°8760 - be able to simulate extension removal by oerriding GetExtensionMap

be able to simulate SetupAudit errors in Setups for integration tests

fix rebase
2025-12-04 17:19:18 +01:00
odain
9cdc707bc5 N°8760 - Audit uninstall of extensions that declare classes - first prototype
N°8760 - Audit uninstall of extensions that declare classes - be able to trace DM classes created_in

N°8760 - be able to test with additional extensions installed in test SDK

N°8760 - provide a service dedicated to extension removal

N°8760 - compute all rules by default

add comment

adapt audit to both extension and mtp
2025-12-04 17:19:18 +01:00
odain
76178c16b8 N°8760: code legacy refactoring around module computation (AnalyzeInstallation)
AnalyzeInstallation refactoring

fix ci call to ModuleInstallationService

ci: fix code style

get rid of itop_version

refactoring: make code simpler

get rid of unused name_db

refactoring setup: rename version_db by installed_version

refactoring setup: rename version_code by available_version

code cleanup: avoid useless runtimeenv instanciation
2025-12-04 17:19:18 +01:00
Timmy38
73f868ac83 N°8763 Halt setup if non-uninstallable extension is missing (#781)
* N°8763 Halt setup if an installed & non-uninstallable extension is missing from disk
2025-12-04 11:01:31 +01:00