SPMigrator.psd1
|
@{ RootModule = 'SPMigrator.psm1' ModuleVersion = '0.2.0' GUID = 'f2b6a4d1-9c3e-4a7b-8d52-1e0c7a9b4f36' Author = 'SPMigrator contributors' CompanyName = 'Community' Copyright = '(c) 2026 SPMigrator contributors. MIT License.' Description = @' Moteur de migration SharePoint Online piloté par plan déclaratif. Utilise les travaux de copie serveur-à-serveur (Copy-PnPFile / Copy-PnPFolder) plutôt qu'un cycle download/upload, afin de conserver l'historique de versions que ce cycle détruit. CE QUI EST MESURE : dates, auteurs, types de contenu et colonnes sont relus a destination et compares apres ecriture, sur une migration reelle de 63 elements. La preservation de l'HISTORIQUE DES VERSIONS repose sur le contrat de l'API et n'a pas encore ete verifiee contre un tenant par ce projet : les fichiers de cette migration n'avaient qu'une version. Test-SPMigrationFidelity est l'instrument prevu pour la trancher. Fournit une validation pre-vol, une sonde de capacite du tenant, un etat persistant avec reprise, un mode incremental, une resilience au throttling (HTTP 429 / Retry-After), le report des permissions uniques, la reapplication des etiquettes de retention, et des rapports qui bornent explicitement ce qu'ils n'ont pas mesure. '@ PowerShellVersion = '7.4' CompatiblePSEditions = @('Core') RequiredModules = @( @{ ModuleName = 'PnP.PowerShell'; ModuleVersion = '2.12.0' } ) FunctionsToExport = @( 'Copy-SPMigrationPermission' 'Copy-SPSiteSchema' 'Copy-SPSiteStructure' 'Get-SPMigrationReport' 'Invoke-SPMigration' 'New-SPMigrationPlan' 'New-SPSiteInventory' 'Test-SPMigrationFidelity' 'Test-SPMigrationPlan' 'Test-SPMTenantCapability' # --- socle --- 'Connect-SPMSite' 'Disconnect-SPMAllSites' 'Get-SPMConfiguration' 'Get-SPMListItemByPath' 'Get-SPMRetryAfterSeconds' 'Get-SPMRetryDecision' 'Get-SPMSiteConnection' 'Get-SPMStatistics' 'Invoke-SPMWithRetry' 'Set-SPMConfiguration' 'Test-SPMPathExists' 'Test-SPMPrerequisite' 'Write-SPMLog' ) CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() PrivateData = @{ PSData = @{ Tags = @('SharePoint', 'Migration', 'PnP', 'Microsoft365', 'SharePointOnline', 'ShareGate', 'SPMT') LicenseUri = 'https://github.com/HoussemMak/SPMigrator/blob/main/LICENSE' ProjectUri = 'https://github.com/HoussemMak/SPMigrator' ReleaseNotes = @' 0.2.0 — ce que l'outil promettait, il le fait ; ce qu'il ne fait pas, il le dit RESERVE : la preservation de l'historique des versions n'a pas encore ete verifiee contre un tenant. Test-SPMigrationFidelity est l'instrument qui la tranchera ; tant qu'il n'a pas tourne sur un bac a sable, cette version est un outil de pre-production. - Test-SPMigrationFidelity : compare la destination a la source, dossiers compris, 100 % des elements par defaut, elements surnumeraires rapportes. Le verdict borne explicitement le perimetre NON controle. - Test-SPMTenantCapability : mesure ce que le tenant autorise (copie serveur, creation de bibliotheque, modele de site) au lieu de le deviner. - Permissions branchees au moteur : homologue designe par son dossier transpose, heritage rompu comme a la source, surplus de droit rapporte. - Retention et moderation : comptees au pre-vol et bloquantes, reappliquees apres copie ; le statut d'enregistrement est declare non restaurable. - Reglages de bibliotheque : les sept, poses meme a faux, puis relus. - Inventaire : perimetre corrige (racine reelle de la bibliotheque). - Resilience : Retry-After du serveur respecte, jeton expire repare et rejoue. - Rapport : « non mesure » au lieu de 0, bandeau de reserves, unites soumises comptees a part. - Suite d'integration executable, ignoree sans bac a sable, avec travail CI dedie et plancher de couverture. 0.1.0 - Moteur de transfert serveur-à-serveur (Copy-PnPFolder / Copy-PnPFile) - Résilience au throttling : HTTP 429/503/504, respect de Retry-After, backoff + jitter - Pool de connexions réutilisables (-Connection) : plus de réauthentification par site - Validation pré-vol : longueur d'URL, caractères interdits, tailles, fichiers extraits - État persistant NDJSON : reprise après échec et mode incrémental - Inventaire pré-migration et rapport HTML/JSON '@ } } } |