@webiny/migrations 5.39.7-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +26 -0
- package/README.md +1 -0
- package/ddb-es.d.ts +18 -0
- package/ddb-es.js +67 -0
- package/ddb-es.js.map +1 -0
- package/ddb.d.ts +18 -0
- package/ddb.js +49 -0
- package/ddb.js.map +1 -0
- package/migrations/5.35.0/001/FileSettingsMigration.d.ts +12 -0
- package/migrations/5.35.0/001/FileSettingsMigration.js +93 -0
- package/migrations/5.35.0/001/FileSettingsMigration.js.map +1 -0
- package/migrations/5.35.0/001/ddb/FileDataMigration.d.ts +14 -0
- package/migrations/5.35.0/001/ddb/FileDataMigration.js +156 -0
- package/migrations/5.35.0/001/ddb/FileDataMigration.js.map +1 -0
- package/migrations/5.35.0/001/ddb/index.d.ts +10 -0
- package/migrations/5.35.0/001/ddb/index.js +50 -0
- package/migrations/5.35.0/001/ddb/index.js.map +1 -0
- package/migrations/5.35.0/001/ddb-es/FileDataMigration.d.ts +17 -0
- package/migrations/5.35.0/001/ddb-es/FileDataMigration.js +172 -0
- package/migrations/5.35.0/001/ddb-es/FileDataMigration.js.map +1 -0
- package/migrations/5.35.0/001/ddb-es/index.d.ts +12 -0
- package/migrations/5.35.0/001/ddb-es/index.js +65 -0
- package/migrations/5.35.0/001/ddb-es/index.js.map +1 -0
- package/migrations/5.35.0/001/entities/createFileEntity.d.ts +92 -0
- package/migrations/5.35.0/001/entities/createFileEntity.js +62 -0
- package/migrations/5.35.0/001/entities/createFileEntity.js.map +1 -0
- package/migrations/5.35.0/001/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.35.0/001/entities/createLocaleEntity.js +52 -0
- package/migrations/5.35.0/001/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.35.0/001/entities/createSettingsEntity.d.ts +90 -0
- package/migrations/5.35.0/001/entities/createSettingsEntity.js +37 -0
- package/migrations/5.35.0/001/entities/createSettingsEntity.js.map +1 -0
- package/migrations/5.35.0/001/entities/createTenantEntity.d.ts +42 -0
- package/migrations/5.35.0/001/entities/createTenantEntity.js +69 -0
- package/migrations/5.35.0/001/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/001/types.d.ts +19 -0
- package/migrations/5.35.0/001/types.js +7 -0
- package/migrations/5.35.0/001/types.js.map +1 -0
- package/migrations/5.35.0/002/createLocaleEntity.d.ts +42 -0
- package/migrations/5.35.0/002/createLocaleEntity.js +32 -0
- package/migrations/5.35.0/002/createLocaleEntity.js.map +1 -0
- package/migrations/5.35.0/002/createSettingsEntity.d.ts +90 -0
- package/migrations/5.35.0/002/createSettingsEntity.js +61 -0
- package/migrations/5.35.0/002/createSettingsEntity.js.map +1 -0
- package/migrations/5.35.0/002/createTenantEntity.d.ts +42 -0
- package/migrations/5.35.0/002/createTenantEntity.js +46 -0
- package/migrations/5.35.0/002/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/002/index.d.ts +13 -0
- package/migrations/5.35.0/002/index.js +117 -0
- package/migrations/5.35.0/002/index.js.map +1 -0
- package/migrations/5.35.0/003/createTenantEntity.d.ts +42 -0
- package/migrations/5.35.0/003/createTenantEntity.js +46 -0
- package/migrations/5.35.0/003/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/003/createUserEntity.d.ts +90 -0
- package/migrations/5.35.0/003/createUserEntity.js +55 -0
- package/migrations/5.35.0/003/createUserEntity.js.map +1 -0
- package/migrations/5.35.0/003/index.d.ts +12 -0
- package/migrations/5.35.0/003/index.js +92 -0
- package/migrations/5.35.0/003/index.js.map +1 -0
- package/migrations/5.35.0/004/createTenantEntity.d.ts +90 -0
- package/migrations/5.35.0/004/createTenantEntity.js +57 -0
- package/migrations/5.35.0/004/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/004/index.d.ts +11 -0
- package/migrations/5.35.0/004/index.js +80 -0
- package/migrations/5.35.0/004/index.js.map +1 -0
- package/migrations/5.35.0/005/createLocaleEntity.d.ts +42 -0
- package/migrations/5.35.0/005/createLocaleEntity.js +32 -0
- package/migrations/5.35.0/005/createLocaleEntity.js.map +1 -0
- package/migrations/5.35.0/005/createModelEntity.d.ts +42 -0
- package/migrations/5.35.0/005/createModelEntity.js +101 -0
- package/migrations/5.35.0/005/createModelEntity.js.map +1 -0
- package/migrations/5.35.0/005/createTenantEntity.d.ts +48 -0
- package/migrations/5.35.0/005/createTenantEntity.js +13 -0
- package/migrations/5.35.0/005/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/005/index.d.ts +15 -0
- package/migrations/5.35.0/005/index.js +144 -0
- package/migrations/5.35.0/005/index.js.map +1 -0
- package/migrations/5.35.0/005/types.d.ts +42 -0
- package/migrations/5.35.0/005/types.js +7 -0
- package/migrations/5.35.0/005/types.js.map +1 -0
- package/migrations/5.35.0/006/constants.d.ts +3 -0
- package/migrations/5.35.0/006/constants.js +14 -0
- package/migrations/5.35.0/006/constants.js.map +1 -0
- package/migrations/5.35.0/006/ddb/PageDataMigration.d.ts +17 -0
- package/migrations/5.35.0/006/ddb/PageDataMigration.js +249 -0
- package/migrations/5.35.0/006/ddb/PageDataMigration.js.map +1 -0
- package/migrations/5.35.0/006/ddb/index.d.ts +10 -0
- package/migrations/5.35.0/006/ddb/index.js +49 -0
- package/migrations/5.35.0/006/ddb/index.js.map +1 -0
- package/migrations/5.35.0/006/ddb-es/PageDataMigration.d.ts +22 -0
- package/migrations/5.35.0/006/ddb-es/PageDataMigration.js +413 -0
- package/migrations/5.35.0/006/ddb-es/PageDataMigration.js.map +1 -0
- package/migrations/5.35.0/006/ddb-es/index.d.ts +12 -0
- package/migrations/5.35.0/006/ddb-es/index.js +64 -0
- package/migrations/5.35.0/006/ddb-es/index.js.map +1 -0
- package/migrations/5.35.0/006/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.35.0/006/entities/createEntryEntity.js +106 -0
- package/migrations/5.35.0/006/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.35.0/006/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.35.0/006/entities/createLocaleEntity.js +32 -0
- package/migrations/5.35.0/006/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.35.0/006/entities/createPageEntity.d.ts +89 -0
- package/migrations/5.35.0/006/entities/createPageEntity.js +113 -0
- package/migrations/5.35.0/006/entities/createPageEntity.js.map +1 -0
- package/migrations/5.35.0/006/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.35.0/006/entities/createTenantEntity.js +13 -0
- package/migrations/5.35.0/006/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.35.0/006/types.d.ts +91 -0
- package/migrations/5.35.0/006/types.js +7 -0
- package/migrations/5.35.0/006/types.js.map +1 -0
- package/migrations/5.35.0/006/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.35.0/006/utils/getCompressedData.js +19 -0
- package/migrations/5.35.0/006/utils/getCompressedData.js.map +1 -0
- package/migrations/5.35.0/006/utils/getLexicalContentText.d.ts +1 -0
- package/migrations/5.35.0/006/utils/getLexicalContentText.js +29 -0
- package/migrations/5.35.0/006/utils/getLexicalContentText.js.map +1 -0
- package/migrations/5.35.0/006/utils/getSearchableContent.d.ts +6 -0
- package/migrations/5.35.0/006/utils/getSearchableContent.js +45 -0
- package/migrations/5.35.0/006/utils/getSearchableContent.js.map +1 -0
- package/migrations/5.35.0/006/utils/processors/button.d.ts +1 -0
- package/migrations/5.35.0/006/utils/processors/button.js +17 -0
- package/migrations/5.35.0/006/utils/processors/button.js.map +1 -0
- package/migrations/5.35.0/006/utils/processors/image.d.ts +1 -0
- package/migrations/5.35.0/006/utils/processors/image.js +17 -0
- package/migrations/5.35.0/006/utils/processors/image.js.map +1 -0
- package/migrations/5.35.0/006/utils/processors/images.d.ts +1 -0
- package/migrations/5.35.0/006/utils/processors/images.js +18 -0
- package/migrations/5.35.0/006/utils/processors/images.js.map +1 -0
- package/migrations/5.35.0/006/utils/processors/index.d.ts +1 -0
- package/migrations/5.35.0/006/utils/processors/index.js +14 -0
- package/migrations/5.35.0/006/utils/processors/index.js.map +1 -0
- package/migrations/5.35.0/006/utils/processors/paragraph.d.ts +1 -0
- package/migrations/5.35.0/006/utils/processors/paragraph.js +25 -0
- package/migrations/5.35.0/006/utils/processors/paragraph.js.map +1 -0
- package/migrations/5.36.0/001/constants.d.ts +3 -0
- package/migrations/5.36.0/001/constants.js +14 -0
- package/migrations/5.36.0/001/constants.js.map +1 -0
- package/migrations/5.36.0/001/ddb/FileDataMigration.d.ts +17 -0
- package/migrations/5.36.0/001/ddb/FileDataMigration.js +241 -0
- package/migrations/5.36.0/001/ddb/FileDataMigration.js.map +1 -0
- package/migrations/5.36.0/001/ddb/index.d.ts +10 -0
- package/migrations/5.36.0/001/ddb/index.js +49 -0
- package/migrations/5.36.0/001/ddb/index.js.map +1 -0
- package/migrations/5.36.0/001/ddb-es/FileDataMigration.d.ts +20 -0
- package/migrations/5.36.0/001/ddb-es/FileDataMigration.js +405 -0
- package/migrations/5.36.0/001/ddb-es/FileDataMigration.js.map +1 -0
- package/migrations/5.36.0/001/ddb-es/index.d.ts +12 -0
- package/migrations/5.36.0/001/ddb-es/index.js +64 -0
- package/migrations/5.36.0/001/ddb-es/index.js.map +1 -0
- package/migrations/5.36.0/001/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.36.0/001/entities/createEntryEntity.js +106 -0
- package/migrations/5.36.0/001/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.36.0/001/entities/createFileEntity.d.ts +95 -0
- package/migrations/5.36.0/001/entities/createFileEntity.js +33 -0
- package/migrations/5.36.0/001/entities/createFileEntity.js.map +1 -0
- package/migrations/5.36.0/001/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.36.0/001/entities/createLocaleEntity.js +32 -0
- package/migrations/5.36.0/001/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.36.0/001/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.36.0/001/entities/createTenantEntity.js +13 -0
- package/migrations/5.36.0/001/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.36.0/001/types.d.ts +67 -0
- package/migrations/5.36.0/001/types.js +7 -0
- package/migrations/5.36.0/001/types.js.map +1 -0
- package/migrations/5.36.0/001/utils/createMimeTag.d.ts +1 -0
- package/migrations/5.36.0/001/utils/createMimeTag.js +10 -0
- package/migrations/5.36.0/001/utils/createMimeTag.js.map +1 -0
- package/migrations/5.36.0/001/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.36.0/001/utils/getCompressedData.js +19 -0
- package/migrations/5.36.0/001/utils/getCompressedData.js.map +1 -0
- package/migrations/5.37.0/001/TenantLinkDataMigration.d.ts +14 -0
- package/migrations/5.37.0/001/TenantLinkDataMigration.js +106 -0
- package/migrations/5.37.0/001/TenantLinkDataMigration.js.map +1 -0
- package/migrations/5.37.0/001/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.37.0/001/entities/createTenantEntity.js +13 -0
- package/migrations/5.37.0/001/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.37.0/001/entities/createTenantLinkEntity.d.ts +48 -0
- package/migrations/5.37.0/001/entities/createTenantLinkEntity.js +17 -0
- package/migrations/5.37.0/001/entities/createTenantLinkEntity.js.map +1 -0
- package/migrations/5.37.0/001/index.d.ts +10 -0
- package/migrations/5.37.0/001/index.js +49 -0
- package/migrations/5.37.0/001/index.js.map +1 -0
- package/migrations/5.37.0/001/types.d.ts +25 -0
- package/migrations/5.37.0/001/types.js +7 -0
- package/migrations/5.37.0/001/types.js.map +1 -0
- package/migrations/5.37.0/001/utils/isMigratedTenantLink.d.ts +2 -0
- package/migrations/5.37.0/001/utils/isMigratedTenantLink.js +12 -0
- package/migrations/5.37.0/001/utils/isMigratedTenantLink.js.map +1 -0
- package/migrations/5.37.0/002/constants.d.ts +1 -0
- package/migrations/5.37.0/002/constants.js +10 -0
- package/migrations/5.37.0/002/constants.js.map +1 -0
- package/migrations/5.37.0/002/ddb/index.d.ts +22 -0
- package/migrations/5.37.0/002/ddb/index.js +133 -0
- package/migrations/5.37.0/002/ddb/index.js.map +1 -0
- package/migrations/5.37.0/002/ddb-es/index.d.ts +35 -0
- package/migrations/5.37.0/002/ddb-es/index.js +321 -0
- package/migrations/5.37.0/002/ddb-es/index.js.map +1 -0
- package/migrations/5.37.0/002/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.37.0/002/entities/createEntryEntity.js +109 -0
- package/migrations/5.37.0/002/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.37.0/002/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.37.0/002/entities/createLocaleEntity.js +32 -0
- package/migrations/5.37.0/002/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.37.0/002/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.37.0/002/entities/createTenantEntity.js +13 -0
- package/migrations/5.37.0/002/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.37.0/002/types.d.ts +53 -0
- package/migrations/5.37.0/002/types.js +7 -0
- package/migrations/5.37.0/002/types.js.map +1 -0
- package/migrations/5.37.0/002/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.37.0/002/utils/getCompressedData.js +19 -0
- package/migrations/5.37.0/002/utils/getCompressedData.js.map +1 -0
- package/migrations/5.37.0/002/utils/getDecompressedData.d.ts +1 -0
- package/migrations/5.37.0/002/utils/getDecompressedData.js +31 -0
- package/migrations/5.37.0/002/utils/getDecompressedData.js.map +1 -0
- package/migrations/5.37.0/003/constants.d.ts +3 -0
- package/migrations/5.37.0/003/constants.js +14 -0
- package/migrations/5.37.0/003/constants.js.map +1 -0
- package/migrations/5.37.0/003/ddb/AcoFolderMigration.d.ts +15 -0
- package/migrations/5.37.0/003/ddb/AcoFolderMigration.js +179 -0
- package/migrations/5.37.0/003/ddb/AcoFolderMigration.js.map +1 -0
- package/migrations/5.37.0/003/ddb/index.d.ts +10 -0
- package/migrations/5.37.0/003/ddb/index.js +49 -0
- package/migrations/5.37.0/003/ddb/index.js.map +1 -0
- package/migrations/5.37.0/003/ddb-es/AcoFolderMigration.d.ts +20 -0
- package/migrations/5.37.0/003/ddb-es/AcoFolderMigration.js +313 -0
- package/migrations/5.37.0/003/ddb-es/AcoFolderMigration.js.map +1 -0
- package/migrations/5.37.0/003/ddb-es/index.d.ts +12 -0
- package/migrations/5.37.0/003/ddb-es/index.js +64 -0
- package/migrations/5.37.0/003/ddb-es/index.js.map +1 -0
- package/migrations/5.37.0/003/ddb-es/latestElasticsearchData.d.ts +4 -0
- package/migrations/5.37.0/003/ddb-es/latestElasticsearchData.js +30 -0
- package/migrations/5.37.0/003/ddb-es/latestElasticsearchData.js.map +1 -0
- package/migrations/5.37.0/003/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.37.0/003/entities/createEntryEntity.js +109 -0
- package/migrations/5.37.0/003/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.37.0/003/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.37.0/003/entities/createLocaleEntity.js +32 -0
- package/migrations/5.37.0/003/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.37.0/003/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.37.0/003/entities/createTenantEntity.js +13 -0
- package/migrations/5.37.0/003/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.37.0/003/types.d.ts +46 -0
- package/migrations/5.37.0/003/types.js +7 -0
- package/migrations/5.37.0/003/types.js.map +1 -0
- package/migrations/5.37.0/003/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.37.0/003/utils/getCompressedData.js +19 -0
- package/migrations/5.37.0/003/utils/getCompressedData.js.map +1 -0
- package/migrations/5.37.0/003/utils/getDecompressedData.d.ts +1 -0
- package/migrations/5.37.0/003/utils/getDecompressedData.js +31 -0
- package/migrations/5.37.0/003/utils/getDecompressedData.js.map +1 -0
- package/migrations/5.37.0/004/constants.d.ts +7 -0
- package/migrations/5.37.0/004/constants.js +22 -0
- package/migrations/5.37.0/004/constants.js.map +1 -0
- package/migrations/5.37.0/004/ddb/PageDataMigration.d.ts +17 -0
- package/migrations/5.37.0/004/ddb/PageDataMigration.js +269 -0
- package/migrations/5.37.0/004/ddb/PageDataMigration.js.map +1 -0
- package/migrations/5.37.0/004/ddb/index.d.ts +10 -0
- package/migrations/5.37.0/004/ddb/index.js +49 -0
- package/migrations/5.37.0/004/ddb/index.js.map +1 -0
- package/migrations/5.37.0/004/ddb-es/PageDataMigration.d.ts +22 -0
- package/migrations/5.37.0/004/ddb-es/PageDataMigration.js +364 -0
- package/migrations/5.37.0/004/ddb-es/PageDataMigration.js.map +1 -0
- package/migrations/5.37.0/004/ddb-es/index.d.ts +12 -0
- package/migrations/5.37.0/004/ddb-es/index.js +64 -0
- package/migrations/5.37.0/004/ddb-es/index.js.map +1 -0
- package/migrations/5.37.0/004/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.37.0/004/entities/createEntryEntity.js +109 -0
- package/migrations/5.37.0/004/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.37.0/004/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.37.0/004/entities/createLocaleEntity.js +32 -0
- package/migrations/5.37.0/004/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.37.0/004/entities/createPageEntity.d.ts +89 -0
- package/migrations/5.37.0/004/entities/createPageEntity.js +113 -0
- package/migrations/5.37.0/004/entities/createPageEntity.js.map +1 -0
- package/migrations/5.37.0/004/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.37.0/004/entities/createTenantEntity.js +13 -0
- package/migrations/5.37.0/004/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.37.0/004/types.d.ts +149 -0
- package/migrations/5.37.0/004/types.js +7 -0
- package/migrations/5.37.0/004/types.js.map +1 -0
- package/migrations/5.37.0/004/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.37.0/004/utils/getCompressedData.js +19 -0
- package/migrations/5.37.0/004/utils/getCompressedData.js.map +1 -0
- package/migrations/5.37.0/005/constants.d.ts +3 -0
- package/migrations/5.37.0/005/constants.js +14 -0
- package/migrations/5.37.0/005/constants.js.map +1 -0
- package/migrations/5.37.0/005/ddb/index.d.ts +20 -0
- package/migrations/5.37.0/005/ddb/index.js +245 -0
- package/migrations/5.37.0/005/ddb/index.js.map +1 -0
- package/migrations/5.37.0/005/ddb-es/index.d.ts +22 -0
- package/migrations/5.37.0/005/ddb-es/index.js +382 -0
- package/migrations/5.37.0/005/ddb-es/index.js.map +1 -0
- package/migrations/5.37.0/005/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.37.0/005/entities/createEntryEntity.js +109 -0
- package/migrations/5.37.0/005/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.37.0/005/entities/createFileEntity.d.ts +95 -0
- package/migrations/5.37.0/005/entities/createFileEntity.js +33 -0
- package/migrations/5.37.0/005/entities/createFileEntity.js.map +1 -0
- package/migrations/5.37.0/005/entities/createLocaleEntity.d.ts +42 -0
- package/migrations/5.37.0/005/entities/createLocaleEntity.js +32 -0
- package/migrations/5.37.0/005/entities/createLocaleEntity.js.map +1 -0
- package/migrations/5.37.0/005/entities/createTenantEntity.d.ts +48 -0
- package/migrations/5.37.0/005/entities/createTenantEntity.js +13 -0
- package/migrations/5.37.0/005/entities/createTenantEntity.js.map +1 -0
- package/migrations/5.37.0/005/entities/createTenantLinkEntity.d.ts +48 -0
- package/migrations/5.37.0/005/entities/createTenantLinkEntity.js +17 -0
- package/migrations/5.37.0/005/entities/createTenantLinkEntity.js.map +1 -0
- package/migrations/5.37.0/005/types.d.ts +109 -0
- package/migrations/5.37.0/005/types.js +7 -0
- package/migrations/5.37.0/005/types.js.map +1 -0
- package/migrations/5.38.0/001/ddb/index.d.ts +11 -0
- package/migrations/5.38.0/001/ddb/index.js +116 -0
- package/migrations/5.38.0/001/ddb/index.js.map +1 -0
- package/migrations/5.38.0/001/ddb-es/index.d.ts +13 -0
- package/migrations/5.38.0/001/ddb-es/index.js +211 -0
- package/migrations/5.38.0/001/ddb-es/index.js.map +1 -0
- package/migrations/5.38.0/001/entities/createFormEntity.d.ts +42 -0
- package/migrations/5.38.0/001/entities/createFormEntity.js +92 -0
- package/migrations/5.38.0/001/entities/createFormEntity.js.map +1 -0
- package/migrations/5.38.0/001/types.d.ts +11 -0
- package/migrations/5.38.0/001/types.js +7 -0
- package/migrations/5.38.0/001/types.js.map +1 -0
- package/migrations/5.38.0/002/ddb/index.d.ts +22 -0
- package/migrations/5.38.0/002/ddb/index.js +140 -0
- package/migrations/5.38.0/002/ddb/index.js.map +1 -0
- package/migrations/5.38.0/002/ddb-es/index.d.ts +32 -0
- package/migrations/5.38.0/002/ddb-es/index.js +250 -0
- package/migrations/5.38.0/002/ddb-es/index.js.map +1 -0
- package/migrations/5.38.0/002/entities/createFormEntity.d.ts +42 -0
- package/migrations/5.38.0/002/entities/createFormEntity.js +92 -0
- package/migrations/5.38.0/002/entities/createFormEntity.js.map +1 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionDdbEsEntity.d.ts +48 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionDdbEsEntity.js +29 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionDdbEsEntity.js.map +1 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionEntity.d.ts +42 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionEntity.js +56 -0
- package/migrations/5.38.0/002/entities/createFormSubmissionEntity.js.map +1 -0
- package/migrations/5.38.0/002/types.d.ts +23 -0
- package/migrations/5.38.0/002/types.js +7 -0
- package/migrations/5.38.0/002/types.js.map +1 -0
- package/migrations/5.38.0/003/ddb/compressContent.d.ts +4 -0
- package/migrations/5.38.0/003/ddb/compressContent.js +17 -0
- package/migrations/5.38.0/003/ddb/compressContent.js.map +1 -0
- package/migrations/5.38.0/003/ddb/index.d.ts +12 -0
- package/migrations/5.38.0/003/ddb/index.js +143 -0
- package/migrations/5.38.0/003/ddb/index.js.map +1 -0
- package/migrations/5.38.0/003/entities/createPageBlockEntity.d.ts +83 -0
- package/migrations/5.38.0/003/entities/createPageBlockEntity.js +68 -0
- package/migrations/5.38.0/003/entities/createPageBlockEntity.js.map +1 -0
- package/migrations/5.38.0/003/types.d.ts +8 -0
- package/migrations/5.38.0/003/types.js +7 -0
- package/migrations/5.38.0/003/types.js.map +1 -0
- package/migrations/5.39.0/001/ddb/index.d.ts +20 -0
- package/migrations/5.39.0/001/ddb/index.js +136 -0
- package/migrations/5.39.0/001/ddb/index.js.map +1 -0
- package/migrations/5.39.0/001/ddb-es/index.d.ts +30 -0
- package/migrations/5.39.0/001/ddb-es/index.js +266 -0
- package/migrations/5.39.0/001/ddb-es/index.js.map +1 -0
- package/migrations/5.39.0/001/entities/createEntryEntity.d.ts +89 -0
- package/migrations/5.39.0/001/entities/createEntryEntity.js +164 -0
- package/migrations/5.39.0/001/entities/createEntryEntity.js.map +1 -0
- package/migrations/5.39.0/001/types.d.ts +136 -0
- package/migrations/5.39.0/001/types.js +7 -0
- package/migrations/5.39.0/001/types.js.map +1 -0
- package/migrations/5.39.0/001/utils/assignNewMetaFields.d.ts +11 -0
- package/migrations/5.39.0/001/utils/assignNewMetaFields.js +44 -0
- package/migrations/5.39.0/001/utils/assignNewMetaFields.js.map +1 -0
- package/migrations/5.39.0/001/utils/ensureAllNonNullableValues.d.ts +8 -0
- package/migrations/5.39.0/001/utils/ensureAllNonNullableValues.js +38 -0
- package/migrations/5.39.0/001/utils/ensureAllNonNullableValues.js.map +1 -0
- package/migrations/5.39.0/001/utils/fixTypeFieldValue.d.ts +3 -0
- package/migrations/5.39.0/001/utils/fixTypeFieldValue.js +33 -0
- package/migrations/5.39.0/001/utils/fixTypeFieldValue.js.map +1 -0
- package/migrations/5.39.0/001/utils/getCompressedData.d.ts +4 -0
- package/migrations/5.39.0/001/utils/getCompressedData.js +19 -0
- package/migrations/5.39.0/001/utils/getCompressedData.js.map +1 -0
- package/migrations/5.39.0/001/utils/getDecompressedData.d.ts +1 -0
- package/migrations/5.39.0/001/utils/getDecompressedData.js +31 -0
- package/migrations/5.39.0/001/utils/getDecompressedData.js.map +1 -0
- package/migrations/5.39.0/001/utils/getFallbackIdentity.d.ts +8 -0
- package/migrations/5.39.0/001/utils/getFallbackIdentity.js +44 -0
- package/migrations/5.39.0/001/utils/getFallbackIdentity.js.map +1 -0
- package/migrations/5.39.0/001/utils/getFirstLastPublishedOn.d.ts +11 -0
- package/migrations/5.39.0/001/utils/getFirstLastPublishedOn.js +40 -0
- package/migrations/5.39.0/001/utils/getFirstLastPublishedOn.js.map +1 -0
- package/migrations/5.39.0/001/utils/getNonNullableFieldsWithMissingValues.d.ts +2 -0
- package/migrations/5.39.0/001/utils/getNonNullableFieldsWithMissingValues.js +22 -0
- package/migrations/5.39.0/001/utils/getNonNullableFieldsWithMissingValues.js.map +1 -0
- package/migrations/5.39.0/001/utils/getOldestRevisionCreatedOn.d.ts +11 -0
- package/migrations/5.39.0/001/utils/getOldestRevisionCreatedOn.js +33 -0
- package/migrations/5.39.0/001/utils/getOldestRevisionCreatedOn.js.map +1 -0
- package/migrations/5.39.0/001/utils/hasAllNonNullableValues.d.ts +2 -0
- package/migrations/5.39.0/001/utils/hasAllNonNullableValues.js +21 -0
- package/migrations/5.39.0/001/utils/hasAllNonNullableValues.js.map +1 -0
- package/migrations/5.39.0/001/utils/hasValidTypeFieldValue.d.ts +4 -0
- package/migrations/5.39.0/001/utils/hasValidTypeFieldValue.js +21 -0
- package/migrations/5.39.0/001/utils/hasValidTypeFieldValue.js.map +1 -0
- package/migrations/5.39.0/001/utils/isMigratedEntry.d.ts +2 -0
- package/migrations/5.39.0/001/utils/isMigratedEntry.js +12 -0
- package/migrations/5.39.0/001/utils/isMigratedEntry.js.map +1 -0
- package/migrations/5.39.0/002/ddb/FileManager_5_39_0_002.d.ts +14 -0
- package/migrations/5.39.0/002/ddb/FileManager_5_39_0_002.js +133 -0
- package/migrations/5.39.0/002/ddb/FileManager_5_39_0_002.js.map +1 -0
- package/migrations/5.39.0/002/ddb/index.d.ts +1 -0
- package/migrations/5.39.0/002/ddb/index.js +18 -0
- package/migrations/5.39.0/002/ddb/index.js.map +1 -0
- package/migrations/5.39.0/002/ddb-es/FileManager_5_39_0_002.d.ts +15 -0
- package/migrations/5.39.0/002/ddb-es/FileManager_5_39_0_002.js +190 -0
- package/migrations/5.39.0/002/ddb-es/FileManager_5_39_0_002.js.map +1 -0
- package/migrations/5.39.0/002/ddb-es/index.d.ts +1 -0
- package/migrations/5.39.0/002/ddb-es/index.js +18 -0
- package/migrations/5.39.0/002/ddb-es/index.js.map +1 -0
- package/migrations/5.39.0/002/utils/FileMetadata.d.ts +12 -0
- package/migrations/5.39.0/002/utils/FileMetadata.js +55 -0
- package/migrations/5.39.0/002/utils/FileMetadata.js.map +1 -0
- package/migrations/5.39.0/002/utils/createFileEntity.d.ts +53 -0
- package/migrations/5.39.0/002/utils/createFileEntity.js +50 -0
- package/migrations/5.39.0/002/utils/createFileEntity.js.map +1 -0
- package/migrations/5.39.0/002/utils/createLocaleEntity.d.ts +42 -0
- package/migrations/5.39.0/002/utils/createLocaleEntity.js +32 -0
- package/migrations/5.39.0/002/utils/createLocaleEntity.js.map +1 -0
- package/migrations/5.39.0/002/utils/createTenantEntity.d.ts +48 -0
- package/migrations/5.39.0/002/utils/createTenantEntity.js +13 -0
- package/migrations/5.39.0/002/utils/createTenantEntity.js.map +1 -0
- package/migrations/5.39.2/001/ddb-es/index.d.ts +30 -0
- package/migrations/5.39.2/001/ddb-es/index.js +276 -0
- package/migrations/5.39.2/001/ddb-es/index.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/MetaFieldsMigration.d.ts +21 -0
- package/migrations/5.39.6/001/ddb-es/MetaFieldsMigration.js +167 -0
- package/migrations/5.39.6/001/ddb-es/MetaFieldsMigration.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/SegmentProcessor.d.ts +23 -0
- package/migrations/5.39.6/001/ddb-es/SegmentProcessor.js +31 -0
- package/migrations/5.39.6/001/ddb-es/SegmentProcessor.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/bin.d.ts +2 -0
- package/migrations/5.39.6/001/ddb-es/bin.js +83 -0
- package/migrations/5.39.6/001/ddb-es/bin.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/createMetaFieldsDataMigrationDeploymentHook.d.ts +11 -0
- package/migrations/5.39.6/001/ddb-es/createMetaFieldsDataMigrationDeploymentHook.js +83 -0
- package/migrations/5.39.6/001/ddb-es/createMetaFieldsDataMigrationDeploymentHook.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/index.d.ts +30 -0
- package/migrations/5.39.6/001/ddb-es/index.js +329 -0
- package/migrations/5.39.6/001/ddb-es/index.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/utils.d.ts +28 -0
- package/migrations/5.39.6/001/ddb-es/utils.js +62 -0
- package/migrations/5.39.6/001/ddb-es/utils.js.map +1 -0
- package/migrations/5.39.6/001/ddb-es/worker.d.ts +1 -0
- package/migrations/5.39.6/001/ddb-es/worker.js +352 -0
- package/migrations/5.39.6/001/ddb-es/worker.js.map +1 -0
- package/package.json +45 -0
- package/utils/createEntity.d.ts +89 -0
- package/utils/createEntity.js +67 -0
- package/utils/createEntity.js.map +1 -0
- package/utils/createLocaleEntity.d.ts +42 -0
- package/utils/createLocaleEntity.js +32 -0
- package/utils/createLocaleEntity.js.map +1 -0
- package/utils/createTenantEntity.d.ts +48 -0
- package/utils/createTenantEntity.js +13 -0
- package/utils/createTenantEntity.js.map +1 -0
- package/utils/dynamoDb.d.ts +3 -0
- package/utils/dynamoDb.js +62 -0
- package/utils/dynamoDb.js.map +1 -0
- package/utils/elasticsearch/disableEsIndexing.d.ts +9 -0
- package/utils/elasticsearch/disableEsIndexing.js +34 -0
- package/utils/elasticsearch/disableEsIndexing.js.map +1 -0
- package/utils/elasticsearch/esCreateIndex.d.ts +9 -0
- package/utils/elasticsearch/esCreateIndex.js +62 -0
- package/utils/elasticsearch/esCreateIndex.js.map +1 -0
- package/utils/elasticsearch/esFindOne.d.ts +8 -0
- package/utils/elasticsearch/esFindOne.js +27 -0
- package/utils/elasticsearch/esFindOne.js.map +1 -0
- package/utils/elasticsearch/esGetIndexExist.d.ts +9 -0
- package/utils/elasticsearch/esGetIndexExist.js +37 -0
- package/utils/elasticsearch/esGetIndexExist.js.map +1 -0
- package/utils/elasticsearch/esGetIndexName.d.ts +7 -0
- package/utils/elasticsearch/esGetIndexName.js +40 -0
- package/utils/elasticsearch/esGetIndexName.js.map +1 -0
- package/utils/elasticsearch/esGetIndexSettings.d.ts +7 -0
- package/utils/elasticsearch/esGetIndexSettings.js +32 -0
- package/utils/elasticsearch/esGetIndexSettings.js.map +1 -0
- package/utils/elasticsearch/esListIndexes.d.ts +6 -0
- package/utils/elasticsearch/esListIndexes.js +23 -0
- package/utils/elasticsearch/esListIndexes.js.map +1 -0
- package/utils/elasticsearch/esPutIndexSettings.d.ts +7 -0
- package/utils/elasticsearch/esPutIndexSettings.js +30 -0
- package/utils/elasticsearch/esPutIndexSettings.js.map +1 -0
- package/utils/elasticsearch/esQueryAll.d.ts +8 -0
- package/utils/elasticsearch/esQueryAll.js +26 -0
- package/utils/elasticsearch/esQueryAll.js.map +1 -0
- package/utils/elasticsearch/esQueryAllWithCallback.d.ts +10 -0
- package/utils/elasticsearch/esQueryAllWithCallback.js +45 -0
- package/utils/elasticsearch/esQueryAllWithCallback.js.map +1 -0
- package/utils/elasticsearch/fetchOriginalEsSettings.d.ts +13 -0
- package/utils/elasticsearch/fetchOriginalEsSettings.js +36 -0
- package/utils/elasticsearch/fetchOriginalEsSettings.js.map +1 -0
- package/utils/elasticsearch/index.d.ts +12 -0
- package/utils/elasticsearch/index.js +139 -0
- package/utils/elasticsearch/index.js.map +1 -0
- package/utils/elasticsearch/plugins/base.d.ts +3 -0
- package/utils/elasticsearch/plugins/base.js +13 -0
- package/utils/elasticsearch/plugins/base.js.map +1 -0
- package/utils/elasticsearch/plugins/index.d.ts +6 -0
- package/utils/elasticsearch/plugins/index.js +14 -0
- package/utils/elasticsearch/plugins/index.js.map +1 -0
- package/utils/elasticsearch/plugins/japanese.d.ts +4 -0
- package/utils/elasticsearch/plugins/japanese.js +14 -0
- package/utils/elasticsearch/plugins/japanese.js.map +1 -0
- package/utils/elasticsearch/restoreOriginalEsSettings.d.ts +15 -0
- package/utils/elasticsearch/restoreOriginalEsSettings.js +44 -0
- package/utils/elasticsearch/restoreOriginalEsSettings.js.map +1 -0
- package/utils/forEachTenantLocale.d.ts +13 -0
- package/utils/forEachTenantLocale.js +55 -0
- package/utils/forEachTenantLocale.js.map +1 -0
- package/utils/index.d.ts +6 -0
- package/utils/index.js +73 -0
- package/utils/index.js.map +1 -0
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CmsEntriesInitNewMetaFields_5_39_6_001 = void 0;
|
|
7
|
+
var _dataMigration = require("@webiny/data-migration");
|
|
8
|
+
var _utils = require("../../../../utils");
|
|
9
|
+
var _ioc = require("@webiny/ioc");
|
|
10
|
+
var _utils2 = require("@webiny/utils");
|
|
11
|
+
var _createEntryEntity = require("../../../5.39.0/001/entities/createEntryEntity");
|
|
12
|
+
var _getDecompressedData = require("../../../5.39.0/001/utils/getDecompressedData");
|
|
13
|
+
var _getCompressedData = require("../../../5.39.0/001/utils/getCompressedData");
|
|
14
|
+
var _assignNewMetaFields = require("../../../5.39.0/001/utils/assignNewMetaFields");
|
|
15
|
+
var _fixTypeFieldValue = require("../../../5.39.0/001/utils/fixTypeFieldValue");
|
|
16
|
+
var _getOldestRevisionCreatedOn = require("../../../5.39.0/001/utils/getOldestRevisionCreatedOn");
|
|
17
|
+
var _getFirstLastPublishedOn = require("../../../5.39.0/001/utils/getFirstLastPublishedOn");
|
|
18
|
+
var _hasValidTypeFieldValue = require("../../../5.39.0/001/utils/hasValidTypeFieldValue");
|
|
19
|
+
var _hasAllNonNullableValues = require("../../../5.39.0/001/utils/hasAllNonNullableValues");
|
|
20
|
+
var _isMigratedEntry = require("../../../5.39.0/001/utils/isMigratedEntry");
|
|
21
|
+
var _getFallbackIdentity = require("../../../5.39.0/001/utils/getFallbackIdentity");
|
|
22
|
+
var _ensureAllNonNullableValues = require("../../../5.39.0/001/utils/ensureAllNonNullableValues");
|
|
23
|
+
class CmsEntriesInitNewMetaFields_5_39_6_001 {
|
|
24
|
+
constructor(table, esTable, elasticsearchClient) {
|
|
25
|
+
this.elasticsearchClient = elasticsearchClient;
|
|
26
|
+
this.ddbEntryEntity = (0, _createEntryEntity.createDdbEntryEntity)(table);
|
|
27
|
+
this.ddbEsEntryEntity = (0, _createEntryEntity.createDdbEsEntryEntity)(esTable);
|
|
28
|
+
}
|
|
29
|
+
getId() {
|
|
30
|
+
return "5.39.6-001";
|
|
31
|
+
}
|
|
32
|
+
getDescription() {
|
|
33
|
+
return "Write new revision and entry-level on/by meta fields.";
|
|
34
|
+
}
|
|
35
|
+
async shouldExecute({
|
|
36
|
+
logger
|
|
37
|
+
}) {
|
|
38
|
+
let shouldExecute = false;
|
|
39
|
+
await (0, _utils.ddbScanWithCallback)({
|
|
40
|
+
entity: this.ddbEntryEntity,
|
|
41
|
+
options: {
|
|
42
|
+
filters: [{
|
|
43
|
+
attr: "_et",
|
|
44
|
+
eq: "CmsEntries"
|
|
45
|
+
}],
|
|
46
|
+
limit: 100
|
|
47
|
+
}
|
|
48
|
+
}, async result => {
|
|
49
|
+
if (result.error) {
|
|
50
|
+
logger.error(result.error);
|
|
51
|
+
throw new Error(result.error);
|
|
52
|
+
}
|
|
53
|
+
for (const item of result.items) {
|
|
54
|
+
const isFullyMigrated = (0, _isMigratedEntry.isMigratedEntry)(item) && (0, _hasValidTypeFieldValue.hasValidTypeFieldValue)(item) && (0, _hasAllNonNullableValues.hasAllNonNullableValues)(item);
|
|
55
|
+
if (!isFullyMigrated) {
|
|
56
|
+
shouldExecute = true;
|
|
57
|
+
|
|
58
|
+
// Stop further scanning.
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// Continue further scanning.
|
|
64
|
+
return true;
|
|
65
|
+
});
|
|
66
|
+
if (shouldExecute) {
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
logger.info(`CMS entries already upgraded. Skipping...`);
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
async execute({
|
|
73
|
+
logger,
|
|
74
|
+
...context
|
|
75
|
+
}) {
|
|
76
|
+
const migrationStatus = context.checkpoint || {};
|
|
77
|
+
if (migrationStatus.lastEvaluatedKey === true) {
|
|
78
|
+
await (0, _utils.restoreOriginalElasticsearchSettings)({
|
|
79
|
+
indexSettings: migrationStatus.indexes,
|
|
80
|
+
logger,
|
|
81
|
+
elasticsearchClient: this.elasticsearchClient
|
|
82
|
+
});
|
|
83
|
+
logger.info(`Migration completed, no need to start again.`);
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
let usingKey = "";
|
|
87
|
+
if (migrationStatus?.lastEvaluatedKey) {
|
|
88
|
+
usingKey = JSON.stringify(migrationStatus.lastEvaluatedKey);
|
|
89
|
+
}
|
|
90
|
+
logger.trace(`Scanning primary DynamoDB table.`, {
|
|
91
|
+
usingKey
|
|
92
|
+
});
|
|
93
|
+
let currentDdbScanIteration = 0;
|
|
94
|
+
await (0, _utils.ddbScanWithCallback)({
|
|
95
|
+
entity: this.ddbEntryEntity,
|
|
96
|
+
options: {
|
|
97
|
+
filters: [{
|
|
98
|
+
attr: "_et",
|
|
99
|
+
eq: "CmsEntries"
|
|
100
|
+
}],
|
|
101
|
+
startKey: migrationStatus.lastEvaluatedKey || undefined,
|
|
102
|
+
limit: 100
|
|
103
|
+
}
|
|
104
|
+
}, async result => {
|
|
105
|
+
currentDdbScanIteration++;
|
|
106
|
+
logger.trace(`Primary DynamoDB table scan iteration: ${currentDdbScanIteration}.`);
|
|
107
|
+
logger.trace(`Analyzing ${result.items.length} record(s)...`);
|
|
108
|
+
const ddbItems = [];
|
|
109
|
+
const ddbEsItems = [];
|
|
110
|
+
const ddbEsGetItems = {};
|
|
111
|
+
const fallbackDateTime = new Date().toISOString();
|
|
112
|
+
|
|
113
|
+
// Update records in primary DynamoDB table. Also do preparations for
|
|
114
|
+
// subsequent updates on DDB-ES DynamoDB table, and in Elasticsearch.
|
|
115
|
+
for (const item of result.items) {
|
|
116
|
+
const isFullyMigrated = (0, _isMigratedEntry.isMigratedEntry)(item) && (0, _hasValidTypeFieldValue.hasValidTypeFieldValue)(item) && (0, _hasAllNonNullableValues.hasAllNonNullableValues)(item);
|
|
117
|
+
if (isFullyMigrated) {
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
const index = (0, _utils.esGetIndexName)({
|
|
121
|
+
tenant: item.tenant,
|
|
122
|
+
locale: item.locale,
|
|
123
|
+
type: item.modelId,
|
|
124
|
+
isHeadlessCmsModel: true
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
// Check ES index settings.
|
|
128
|
+
if (!migrationStatus.indexes || migrationStatus.indexes[index] === undefined) {
|
|
129
|
+
// We need to fetch the index settings first
|
|
130
|
+
const settings = await (0, _utils.fetchOriginalElasticsearchSettings)({
|
|
131
|
+
index,
|
|
132
|
+
logger,
|
|
133
|
+
elasticsearchClient: this.elasticsearchClient
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
// ... add it to the checkpoint...
|
|
137
|
+
migrationStatus.indexes = {
|
|
138
|
+
...migrationStatus.indexes,
|
|
139
|
+
[index]: settings
|
|
140
|
+
};
|
|
141
|
+
// and then set not to index
|
|
142
|
+
await (0, _utils.disableElasticsearchIndexing)({
|
|
143
|
+
elasticsearchClient: this.elasticsearchClient,
|
|
144
|
+
index,
|
|
145
|
+
logger
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// 1. Check if the data migration was ever performed. If not, let's perform it.
|
|
150
|
+
if (!(0, _isMigratedEntry.isMigratedEntry)(item)) {
|
|
151
|
+
// Get the oldest revision's `createdOn` value. We use that to set the entry-level `createdOn` value.
|
|
152
|
+
const createdOn = await (0, _getOldestRevisionCreatedOn.getOldestRevisionCreatedOn)({
|
|
153
|
+
entry: item,
|
|
154
|
+
entryEntity: this.ddbEntryEntity
|
|
155
|
+
});
|
|
156
|
+
const firstLastPublishedOnByFields = await (0, _getFirstLastPublishedOn.getFirstLastPublishedOnBy)({
|
|
157
|
+
entry: item,
|
|
158
|
+
entryEntity: this.ddbEntryEntity
|
|
159
|
+
});
|
|
160
|
+
(0, _assignNewMetaFields.assignNewMetaFields)(item, {
|
|
161
|
+
createdOn,
|
|
162
|
+
...firstLastPublishedOnByFields
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
// 2. We've noticed some of the records had an invalid `TYPE` field value
|
|
167
|
+
// in the database. This step addresses this issue.
|
|
168
|
+
if (!(0, _hasValidTypeFieldValue.hasValidTypeFieldValue)(item)) {
|
|
169
|
+
// Fixes the value of the `TYPE` field, if it's not valid.
|
|
170
|
+
(0, _fixTypeFieldValue.fixTypeFieldValue)(item);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
// 3. Finally, once both of the steps were performed, ensure that all
|
|
174
|
+
// new non-nullable meta fields have a value and nothing is missing.
|
|
175
|
+
if (!(0, _hasAllNonNullableValues.hasAllNonNullableValues)(item)) {
|
|
176
|
+
logger.trace(`Detected an entry with missing values for non-nullable meta fields (${item.modelId}/${item.id}).`);
|
|
177
|
+
try {
|
|
178
|
+
const fallbackIdentity = await (0, _getFallbackIdentity.getFallbackIdentity)({
|
|
179
|
+
entity: this.ddbEntryEntity,
|
|
180
|
+
tenant: item.tenant
|
|
181
|
+
});
|
|
182
|
+
(0, _ensureAllNonNullableValues.ensureAllNonNullableValues)(item, {
|
|
183
|
+
dateTime: fallbackDateTime,
|
|
184
|
+
identity: fallbackIdentity
|
|
185
|
+
});
|
|
186
|
+
logger.trace(`Successfully ensured all non-nullable meta fields have values (${item.modelId}/${item.id}). Will be saving into the database soon.`);
|
|
187
|
+
} catch (e) {
|
|
188
|
+
logger.debug(`Failed to ensure all non-nullable meta fields have values (${item.modelId}/${item.id}): ${e.message}`);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
ddbItems.push(this.ddbEntryEntity.putBatch(item));
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* Prepare the loading of DynamoDB Elasticsearch part of the records.
|
|
195
|
+
*/
|
|
196
|
+
if (ddbEsGetItems[`${item.entryId}:L`]) {
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
ddbEsGetItems[`${item.entryId}:L`] = this.ddbEsEntryEntity.getBatch({
|
|
200
|
+
PK: item.PK,
|
|
201
|
+
SK: "L"
|
|
202
|
+
});
|
|
203
|
+
if (item.status === "published" || !!item.locked) {
|
|
204
|
+
ddbEsGetItems[`${item.entryId}:P`] = this.ddbEsEntryEntity.getBatch({
|
|
205
|
+
PK: item.PK,
|
|
206
|
+
SK: "P"
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Get all the records from DynamoDB Elasticsearch.
|
|
213
|
+
*/
|
|
214
|
+
const ddbEsRecords = await (0, _utils.batchReadAll)({
|
|
215
|
+
table: this.ddbEsEntryEntity.table,
|
|
216
|
+
items: Object.values(ddbEsGetItems)
|
|
217
|
+
});
|
|
218
|
+
for (const ddbEsRecord of ddbEsRecords) {
|
|
219
|
+
const decompressedData = await (0, _getDecompressedData.getDecompressedData)(ddbEsRecord.data);
|
|
220
|
+
if (!decompressedData) {
|
|
221
|
+
logger.trace(`[DDB-ES Table] Skipping record "${ddbEsRecord.PK}" as it is not a valid CMS entry...`);
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
// 1. Check if the data migration was ever performed. If not, let's perform it.
|
|
226
|
+
if (!(0, _isMigratedEntry.isMigratedEntry)(decompressedData)) {
|
|
227
|
+
// Get the oldest revision's `createdOn` value. We use that to set the entry-level `createdOn` value.
|
|
228
|
+
const createdOn = await (0, _getOldestRevisionCreatedOn.getOldestRevisionCreatedOn)({
|
|
229
|
+
entry: {
|
|
230
|
+
...decompressedData,
|
|
231
|
+
PK: ddbEsRecord.PK
|
|
232
|
+
},
|
|
233
|
+
entryEntity: this.ddbEntryEntity
|
|
234
|
+
});
|
|
235
|
+
const firstLastPublishedOnByFields = await (0, _getFirstLastPublishedOn.getFirstLastPublishedOnBy)({
|
|
236
|
+
entry: {
|
|
237
|
+
...decompressedData,
|
|
238
|
+
PK: ddbEsRecord.PK
|
|
239
|
+
},
|
|
240
|
+
entryEntity: this.ddbEntryEntity
|
|
241
|
+
});
|
|
242
|
+
(0, _assignNewMetaFields.assignNewMetaFields)(decompressedData, {
|
|
243
|
+
createdOn,
|
|
244
|
+
...firstLastPublishedOnByFields
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
// 2. Ensure new non-nullable meta fields have a value and nothing is missing.
|
|
249
|
+
if (!(0, _hasAllNonNullableValues.hasAllNonNullableValues)(decompressedData)) {
|
|
250
|
+
logger.trace(["[DDB-ES Table] Detected an entry with missing values for non-nullable meta fields", `(${decompressedData.modelId}/${decompressedData.id}).`].join(" "));
|
|
251
|
+
try {
|
|
252
|
+
const fallbackIdentity = await (0, _getFallbackIdentity.getFallbackIdentity)({
|
|
253
|
+
entity: this.ddbEntryEntity,
|
|
254
|
+
tenant: decompressedData.tenant
|
|
255
|
+
});
|
|
256
|
+
(0, _ensureAllNonNullableValues.ensureAllNonNullableValues)(decompressedData, {
|
|
257
|
+
dateTime: fallbackDateTime,
|
|
258
|
+
identity: fallbackIdentity
|
|
259
|
+
});
|
|
260
|
+
logger.trace(["[DDB-ES Table] Successfully ensured all non-nullable meta fields", `have values (${decompressedData.modelId}/${decompressedData.id}).`, "Will be saving the changes soon."].join(" "));
|
|
261
|
+
} catch (e) {
|
|
262
|
+
logger.debug(["[DDB-ES Table] Failed to ensure all non-nullable meta fields have values", `(${decompressedData.modelId}/${decompressedData.id}): ${e.message}`].join(" "));
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
const compressedData = await (0, _getCompressedData.getCompressedData)(decompressedData);
|
|
266
|
+
ddbEsItems.push(this.ddbEsEntryEntity.putBatch({
|
|
267
|
+
...ddbEsRecord,
|
|
268
|
+
data: compressedData
|
|
269
|
+
}));
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// Store data in primary DynamoDB table.
|
|
273
|
+
const execute = () => {
|
|
274
|
+
return (0, _utils.batchWriteAll)({
|
|
275
|
+
table: this.ddbEntryEntity.table,
|
|
276
|
+
items: ddbItems
|
|
277
|
+
});
|
|
278
|
+
};
|
|
279
|
+
logger.trace("Storing records in primary DynamoDB table...");
|
|
280
|
+
await (0, _utils2.executeWithRetry)(execute, {
|
|
281
|
+
onFailedAttempt: error => {
|
|
282
|
+
logger.error(`"batchWriteAll" attempt #${error.attemptNumber} failed: ${error.message}`);
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
logger.trace("...stored.");
|
|
286
|
+
|
|
287
|
+
// Store data in DDB-ES DynamoDB table.
|
|
288
|
+
const executeDdbEs = () => {
|
|
289
|
+
return (0, _utils.batchWriteAll)({
|
|
290
|
+
table: this.ddbEsEntryEntity.table,
|
|
291
|
+
items: ddbEsItems
|
|
292
|
+
});
|
|
293
|
+
};
|
|
294
|
+
logger.trace("Storing records in DDB-ES DynamoDB table...");
|
|
295
|
+
await (0, _utils2.executeWithRetry)(executeDdbEs, {
|
|
296
|
+
onFailedAttempt: error => {
|
|
297
|
+
logger.error(`"batchWriteAll ddb-es" attempt #${error.attemptNumber} failed: ${error.message}`);
|
|
298
|
+
}
|
|
299
|
+
});
|
|
300
|
+
logger.trace("...stored.");
|
|
301
|
+
|
|
302
|
+
// Update checkpoint after every batch.
|
|
303
|
+
migrationStatus.lastEvaluatedKey = result.lastEvaluatedKey?.PK ? result.lastEvaluatedKey : true;
|
|
304
|
+
|
|
305
|
+
// Check if we should store checkpoint and exit.
|
|
306
|
+
if (context.runningOutOfTime()) {
|
|
307
|
+
await context.createCheckpointAndExit(migrationStatus);
|
|
308
|
+
} else {
|
|
309
|
+
await context.createCheckpoint(migrationStatus);
|
|
310
|
+
}
|
|
311
|
+
});
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* This is the end of the migration.
|
|
315
|
+
*/
|
|
316
|
+
await (0, _utils.restoreOriginalElasticsearchSettings)({
|
|
317
|
+
indexSettings: migrationStatus.indexes,
|
|
318
|
+
logger,
|
|
319
|
+
elasticsearchClient: this.elasticsearchClient
|
|
320
|
+
});
|
|
321
|
+
migrationStatus.lastEvaluatedKey = true;
|
|
322
|
+
migrationStatus.indexes = {};
|
|
323
|
+
context.createCheckpoint(migrationStatus);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
exports.CmsEntriesInitNewMetaFields_5_39_6_001 = CmsEntriesInitNewMetaFields_5_39_6_001;
|
|
327
|
+
(0, _ioc.makeInjectable)(CmsEntriesInitNewMetaFields_5_39_6_001, [(0, _ioc.inject)(_dataMigration.PrimaryDynamoTableSymbol), (0, _ioc.inject)(_dataMigration.ElasticsearchDynamoTableSymbol), (0, _ioc.inject)(_dataMigration.ElasticsearchClientSymbol)]);
|
|
328
|
+
|
|
329
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dataMigration","require","_utils","_ioc","_utils2","_createEntryEntity","_getDecompressedData","_getCompressedData","_assignNewMetaFields","_fixTypeFieldValue","_getOldestRevisionCreatedOn","_getFirstLastPublishedOn","_hasValidTypeFieldValue","_hasAllNonNullableValues","_isMigratedEntry","_getFallbackIdentity","_ensureAllNonNullableValues","CmsEntriesInitNewMetaFields_5_39_6_001","constructor","table","esTable","elasticsearchClient","ddbEntryEntity","createDdbEntryEntity","ddbEsEntryEntity","createDdbEsEntryEntity","getId","getDescription","shouldExecute","logger","ddbScanWithCallback","entity","options","filters","attr","eq","limit","result","error","Error","item","items","isFullyMigrated","isMigratedEntry","hasValidTypeFieldValue","hasAllNonNullableValues","info","execute","context","migrationStatus","checkpoint","lastEvaluatedKey","restoreOriginalElasticsearchSettings","indexSettings","indexes","usingKey","JSON","stringify","trace","currentDdbScanIteration","startKey","undefined","length","ddbItems","ddbEsItems","ddbEsGetItems","fallbackDateTime","Date","toISOString","index","esGetIndexName","tenant","locale","type","modelId","isHeadlessCmsModel","settings","fetchOriginalElasticsearchSettings","disableElasticsearchIndexing","createdOn","getOldestRevisionCreatedOn","entry","entryEntity","firstLastPublishedOnByFields","getFirstLastPublishedOnBy","assignNewMetaFields","fixTypeFieldValue","id","fallbackIdentity","getFallbackIdentity","ensureAllNonNullableValues","dateTime","identity","e","debug","message","push","putBatch","entryId","getBatch","PK","SK","status","locked","ddbEsRecords","batchReadAll","Object","values","ddbEsRecord","decompressedData","getDecompressedData","data","join","compressedData","getCompressedData","batchWriteAll","executeWithRetry","onFailedAttempt","attemptNumber","executeDdbEs","runningOutOfTime","createCheckpointAndExit","createCheckpoint","exports","makeInjectable","inject","PrimaryDynamoTableSymbol","ElasticsearchDynamoTableSymbol","ElasticsearchClientSymbol"],"sources":["index.ts"],"sourcesContent":["import { Table } from \"@webiny/db-dynamodb/toolbox\";\nimport {\n DataMigration,\n DataMigrationContext,\n ElasticsearchClientSymbol,\n ElasticsearchDynamoTableSymbol,\n PrimaryDynamoTableSymbol\n} from \"@webiny/data-migration\";\nimport {\n batchReadAll,\n BatchReadItem,\n batchWriteAll,\n BatchWriteItem,\n ddbScanWithCallback,\n disableElasticsearchIndexing,\n esGetIndexName,\n fetchOriginalElasticsearchSettings,\n restoreOriginalElasticsearchSettings\n} from \"~/utils\";\nimport { inject, makeInjectable } from \"@webiny/ioc\";\nimport { Client } from \"@elastic/elasticsearch\";\nimport { executeWithRetry } from \"@webiny/utils\";\nimport {\n createDdbEntryEntity,\n createDdbEsEntryEntity\n} from \"~/migrations/5.39.0/001/entities/createEntryEntity\";\nimport { CmsEntry } from \"~/migrations/5.39.0/001/types\";\nimport { getDecompressedData } from \"~/migrations/5.39.0/001/utils/getDecompressedData\";\nimport { getCompressedData } from \"~/migrations/5.39.0/001/utils/getCompressedData\";\nimport { assignNewMetaFields } from \"~/migrations/5.39.0/001/utils/assignNewMetaFields\";\nimport { fixTypeFieldValue } from \"~/migrations/5.39.0/001/utils/fixTypeFieldValue\";\nimport { getOldestRevisionCreatedOn } from \"~/migrations/5.39.0/001/utils/getOldestRevisionCreatedOn\";\nimport { getFirstLastPublishedOnBy } from \"~/migrations/5.39.0/001/utils/getFirstLastPublishedOn\";\nimport { hasValidTypeFieldValue } from \"~/migrations/5.39.0/001/utils/hasValidTypeFieldValue\";\nimport { hasAllNonNullableValues } from \"~/migrations/5.39.0/001/utils/hasAllNonNullableValues\";\nimport { isMigratedEntry } from \"~/migrations/5.39.0/001/utils/isMigratedEntry\";\nimport { getFallbackIdentity } from \"~/migrations/5.39.0/001/utils/getFallbackIdentity\";\nimport { ensureAllNonNullableValues } from \"~/migrations/5.39.0/001/utils/ensureAllNonNullableValues\";\nimport { ScanDbItem } from \"@webiny/db-dynamodb\";\n\ninterface LastEvaluatedKey {\n PK: string;\n SK: string;\n GSI1_PK: string;\n GSI1_SK: string;\n}\n\ninterface IndexSettings {\n number_of_replicas: number;\n refresh_interval: `${number}s`;\n}\n\ninterface CmsEntriesRootFolderDataMigrationCheckpoint {\n lastEvaluatedKey?: LastEvaluatedKey | boolean;\n indexes: {\n [index: string]: IndexSettings | null;\n };\n}\n\ninterface DynamoDbElasticsearchRecord {\n PK: string;\n SK: string;\n data: string;\n}\n\nexport class CmsEntriesInitNewMetaFields_5_39_6_001 implements DataMigration {\n private readonly elasticsearchClient: Client;\n private readonly ddbEntryEntity: ReturnType<typeof createDdbEntryEntity>;\n private readonly ddbEsEntryEntity: ReturnType<typeof createDdbEsEntryEntity>;\n\n public constructor(\n table: Table<string, string, string>,\n esTable: Table<string, string, string>,\n elasticsearchClient: Client\n ) {\n this.elasticsearchClient = elasticsearchClient;\n this.ddbEntryEntity = createDdbEntryEntity(table);\n this.ddbEsEntryEntity = createDdbEsEntryEntity(esTable);\n }\n\n getId() {\n return \"5.39.6-001\";\n }\n\n getDescription() {\n return \"Write new revision and entry-level on/by meta fields.\";\n }\n\n async shouldExecute({ logger }: DataMigrationContext): Promise<boolean> {\n let shouldExecute = false;\n\n await ddbScanWithCallback<ScanDbItem<CmsEntry>>(\n {\n entity: this.ddbEntryEntity,\n options: {\n filters: [\n {\n attr: \"_et\",\n eq: \"CmsEntries\"\n }\n ],\n limit: 100\n }\n },\n async result => {\n if (result.error) {\n logger.error(result.error);\n throw new Error(result.error);\n }\n\n for (const item of result.items) {\n const isFullyMigrated =\n isMigratedEntry(item) &&\n hasValidTypeFieldValue(item) &&\n hasAllNonNullableValues(item);\n\n if (!isFullyMigrated) {\n shouldExecute = true;\n\n // Stop further scanning.\n return false;\n }\n }\n\n // Continue further scanning.\n return true;\n }\n );\n\n if (shouldExecute) {\n return true;\n }\n\n logger.info(`CMS entries already upgraded. Skipping...`);\n return false;\n }\n\n async execute({\n logger,\n ...context\n }: DataMigrationContext<CmsEntriesRootFolderDataMigrationCheckpoint>): Promise<void> {\n const migrationStatus =\n context.checkpoint || ({} as CmsEntriesRootFolderDataMigrationCheckpoint);\n\n if (migrationStatus.lastEvaluatedKey === true) {\n await restoreOriginalElasticsearchSettings({\n indexSettings: migrationStatus.indexes,\n logger,\n elasticsearchClient: this.elasticsearchClient\n });\n logger.info(`Migration completed, no need to start again.`);\n return;\n }\n\n let usingKey = \"\";\n if (migrationStatus?.lastEvaluatedKey) {\n usingKey = JSON.stringify(migrationStatus.lastEvaluatedKey);\n }\n\n logger.trace(`Scanning primary DynamoDB table.`, {\n usingKey\n });\n\n let currentDdbScanIteration = 0;\n\n await ddbScanWithCallback<CmsEntry>(\n {\n entity: this.ddbEntryEntity,\n options: {\n filters: [\n {\n attr: \"_et\",\n eq: \"CmsEntries\"\n }\n ],\n startKey: migrationStatus.lastEvaluatedKey || undefined,\n limit: 100\n }\n },\n async result => {\n currentDdbScanIteration++;\n\n logger.trace(`Primary DynamoDB table scan iteration: ${currentDdbScanIteration}.`);\n logger.trace(`Analyzing ${result.items.length} record(s)...`);\n\n const ddbItems: BatchWriteItem[] = [];\n const ddbEsItems: BatchWriteItem[] = [];\n const ddbEsGetItems: Record<string, BatchReadItem> = {};\n\n const fallbackDateTime = new Date().toISOString();\n\n // Update records in primary DynamoDB table. Also do preparations for\n // subsequent updates on DDB-ES DynamoDB table, and in Elasticsearch.\n for (const item of result.items) {\n const isFullyMigrated =\n isMigratedEntry(item) &&\n hasValidTypeFieldValue(item) &&\n hasAllNonNullableValues(item);\n\n if (isFullyMigrated) {\n continue;\n }\n\n const index = esGetIndexName({\n tenant: item.tenant,\n locale: item.locale,\n type: item.modelId,\n isHeadlessCmsModel: true\n });\n\n // Check ES index settings.\n if (!migrationStatus.indexes || migrationStatus.indexes[index] === undefined) {\n // We need to fetch the index settings first\n const settings = await fetchOriginalElasticsearchSettings({\n index,\n logger,\n elasticsearchClient: this.elasticsearchClient\n });\n\n // ... add it to the checkpoint...\n migrationStatus.indexes = {\n ...migrationStatus.indexes,\n [index]: settings\n };\n // and then set not to index\n await disableElasticsearchIndexing({\n elasticsearchClient: this.elasticsearchClient,\n index,\n logger\n });\n }\n\n // 1. Check if the data migration was ever performed. If not, let's perform it.\n if (!isMigratedEntry(item)) {\n // Get the oldest revision's `createdOn` value. We use that to set the entry-level `createdOn` value.\n const createdOn = await getOldestRevisionCreatedOn({\n entry: item,\n entryEntity: this.ddbEntryEntity\n });\n\n const firstLastPublishedOnByFields = await getFirstLastPublishedOnBy({\n entry: item,\n entryEntity: this.ddbEntryEntity\n });\n\n assignNewMetaFields(item, {\n createdOn,\n ...firstLastPublishedOnByFields\n });\n }\n\n // 2. We've noticed some of the records had an invalid `TYPE` field value\n // in the database. This step addresses this issue.\n if (!hasValidTypeFieldValue(item)) {\n // Fixes the value of the `TYPE` field, if it's not valid.\n fixTypeFieldValue(item);\n }\n\n // 3. Finally, once both of the steps were performed, ensure that all\n // new non-nullable meta fields have a value and nothing is missing.\n if (!hasAllNonNullableValues(item)) {\n logger.trace(\n `Detected an entry with missing values for non-nullable meta fields (${item.modelId}/${item.id}).`\n );\n\n try {\n const fallbackIdentity = await getFallbackIdentity({\n entity: this.ddbEntryEntity,\n tenant: item.tenant\n });\n\n ensureAllNonNullableValues(item, {\n dateTime: fallbackDateTime,\n identity: fallbackIdentity\n });\n\n logger.trace(\n `Successfully ensured all non-nullable meta fields have values (${item.modelId}/${item.id}). Will be saving into the database soon.`\n );\n } catch (e) {\n logger.debug(\n `Failed to ensure all non-nullable meta fields have values (${item.modelId}/${item.id}): ${e.message}`\n );\n }\n }\n\n ddbItems.push(this.ddbEntryEntity.putBatch(item));\n\n /**\n * Prepare the loading of DynamoDB Elasticsearch part of the records.\n */\n if (ddbEsGetItems[`${item.entryId}:L`]) {\n continue;\n }\n\n ddbEsGetItems[`${item.entryId}:L`] = this.ddbEsEntryEntity.getBatch({\n PK: item.PK,\n SK: \"L\"\n });\n\n if (item.status === \"published\" || !!item.locked) {\n ddbEsGetItems[`${item.entryId}:P`] = this.ddbEsEntryEntity.getBatch({\n PK: item.PK,\n SK: \"P\"\n });\n }\n }\n\n /**\n * Get all the records from DynamoDB Elasticsearch.\n */\n const ddbEsRecords = await batchReadAll<DynamoDbElasticsearchRecord>({\n table: this.ddbEsEntryEntity.table,\n items: Object.values(ddbEsGetItems)\n });\n\n for (const ddbEsRecord of ddbEsRecords) {\n const decompressedData = await getDecompressedData<CmsEntry>(ddbEsRecord.data);\n if (!decompressedData) {\n logger.trace(\n `[DDB-ES Table] Skipping record \"${ddbEsRecord.PK}\" as it is not a valid CMS entry...`\n );\n continue;\n }\n\n // 1. Check if the data migration was ever performed. If not, let's perform it.\n if (!isMigratedEntry(decompressedData)) {\n // Get the oldest revision's `createdOn` value. We use that to set the entry-level `createdOn` value.\n const createdOn = await getOldestRevisionCreatedOn({\n entry: { ...decompressedData, PK: ddbEsRecord.PK },\n entryEntity: this.ddbEntryEntity\n });\n\n const firstLastPublishedOnByFields = await getFirstLastPublishedOnBy({\n entry: { ...decompressedData, PK: ddbEsRecord.PK },\n entryEntity: this.ddbEntryEntity\n });\n\n assignNewMetaFields(decompressedData, {\n createdOn,\n ...firstLastPublishedOnByFields\n });\n }\n\n // 2. Ensure new non-nullable meta fields have a value and nothing is missing.\n if (!hasAllNonNullableValues(decompressedData)) {\n logger.trace(\n [\n \"[DDB-ES Table] Detected an entry with missing values for non-nullable meta fields\",\n `(${decompressedData.modelId}/${decompressedData.id}).`\n ].join(\" \")\n );\n\n try {\n const fallbackIdentity = await getFallbackIdentity({\n entity: this.ddbEntryEntity,\n tenant: decompressedData.tenant\n });\n\n ensureAllNonNullableValues(decompressedData, {\n dateTime: fallbackDateTime,\n identity: fallbackIdentity\n });\n\n logger.trace(\n [\n \"[DDB-ES Table] Successfully ensured all non-nullable meta fields\",\n `have values (${decompressedData.modelId}/${decompressedData.id}).`,\n \"Will be saving the changes soon.\"\n ].join(\" \")\n );\n } catch (e) {\n logger.debug(\n [\n \"[DDB-ES Table] Failed to ensure all non-nullable meta fields have values\",\n `(${decompressedData.modelId}/${decompressedData.id}): ${e.message}`\n ].join(\" \")\n );\n }\n }\n\n const compressedData = await getCompressedData(decompressedData);\n\n ddbEsItems.push(\n this.ddbEsEntryEntity.putBatch({\n ...ddbEsRecord,\n data: compressedData\n })\n );\n }\n\n // Store data in primary DynamoDB table.\n const execute = () => {\n return batchWriteAll({\n table: this.ddbEntryEntity.table,\n items: ddbItems\n });\n };\n\n logger.trace(\"Storing records in primary DynamoDB table...\");\n await executeWithRetry(execute, {\n onFailedAttempt: error => {\n logger.error(\n `\"batchWriteAll\" attempt #${error.attemptNumber} failed: ${error.message}`\n );\n }\n });\n logger.trace(\"...stored.\");\n\n // Store data in DDB-ES DynamoDB table.\n const executeDdbEs = () => {\n return batchWriteAll({\n table: this.ddbEsEntryEntity.table,\n items: ddbEsItems\n });\n };\n\n logger.trace(\"Storing records in DDB-ES DynamoDB table...\");\n await executeWithRetry(executeDdbEs, {\n onFailedAttempt: error => {\n logger.error(\n `\"batchWriteAll ddb-es\" attempt #${error.attemptNumber} failed: ${error.message}`\n );\n }\n });\n logger.trace(\"...stored.\");\n\n // Update checkpoint after every batch.\n migrationStatus.lastEvaluatedKey = result.lastEvaluatedKey?.PK\n ? (result.lastEvaluatedKey as unknown as LastEvaluatedKey)\n : true;\n\n // Check if we should store checkpoint and exit.\n if (context.runningOutOfTime()) {\n await context.createCheckpointAndExit(migrationStatus);\n } else {\n await context.createCheckpoint(migrationStatus);\n }\n }\n );\n\n /**\n * This is the end of the migration.\n */\n await restoreOriginalElasticsearchSettings({\n indexSettings: migrationStatus.indexes,\n logger,\n elasticsearchClient: this.elasticsearchClient\n });\n\n migrationStatus.lastEvaluatedKey = true;\n migrationStatus.indexes = {};\n context.createCheckpoint(migrationStatus);\n }\n}\n\nmakeInjectable(CmsEntriesInitNewMetaFields_5_39_6_001, [\n inject(PrimaryDynamoTableSymbol),\n inject(ElasticsearchDynamoTableSymbol),\n inject(ElasticsearchClientSymbol)\n]);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb";
|
|
2
|
+
import { IWaitUntilHealthyParams } from "@webiny/api-elasticsearch";
|
|
3
|
+
export declare type EsHealthChecksParams = Required<IWaitUntilHealthyParams>;
|
|
4
|
+
export declare const DEFAULT_ES_HEALTH_CHECKS_PARAMS: EsHealthChecksParams;
|
|
5
|
+
export declare const migrationSkippedDdbRecord: {
|
|
6
|
+
PK: string;
|
|
7
|
+
SK: string;
|
|
8
|
+
data: {
|
|
9
|
+
description: string;
|
|
10
|
+
finishedOn: string;
|
|
11
|
+
id: string;
|
|
12
|
+
reason: string;
|
|
13
|
+
startedOn: string;
|
|
14
|
+
};
|
|
15
|
+
GSI1_PK: string;
|
|
16
|
+
GSI1_SK: string;
|
|
17
|
+
TYPE: string;
|
|
18
|
+
_ct: string;
|
|
19
|
+
_et: string;
|
|
20
|
+
_md: string;
|
|
21
|
+
};
|
|
22
|
+
interface MigrationSkippedDdbRecordParams {
|
|
23
|
+
documentClient: DynamoDBDocument;
|
|
24
|
+
ddbTable: string;
|
|
25
|
+
}
|
|
26
|
+
export declare const migrationSkippedDdbRecordExists: ({ documentClient, ddbTable }: MigrationSkippedDdbRecordParams) => Promise<boolean>;
|
|
27
|
+
export declare const createMigrationSkippedDdbRecord: ({ documentClient, ddbTable }: MigrationSkippedDdbRecordParams) => Promise<void>;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.migrationSkippedDdbRecordExists = exports.migrationSkippedDdbRecord = exports.createMigrationSkippedDdbRecord = exports.DEFAULT_ES_HEALTH_CHECKS_PARAMS = void 0;
|
|
7
|
+
var _apiElasticsearch = require("@webiny/api-elasticsearch");
|
|
8
|
+
const DEFAULT_ES_HEALTH_CHECKS_PARAMS = {
|
|
9
|
+
minClusterHealthStatus: _apiElasticsearch.ElasticsearchCatClusterHealthStatus.Yellow,
|
|
10
|
+
maxProcessorPercent: 90,
|
|
11
|
+
maxRamPercent: 100,
|
|
12
|
+
maxWaitingTime: 90,
|
|
13
|
+
waitingTimeStep: 2
|
|
14
|
+
};
|
|
15
|
+
exports.DEFAULT_ES_HEALTH_CHECKS_PARAMS = DEFAULT_ES_HEALTH_CHECKS_PARAMS;
|
|
16
|
+
const migrationSkippedDdbRecord = {
|
|
17
|
+
PK: "MIGRATION#5.39.6-001",
|
|
18
|
+
SK: "A",
|
|
19
|
+
data: {
|
|
20
|
+
description: "Meta fields data migration (skipped via improved meta fields migration)",
|
|
21
|
+
finishedOn: "2024-06-01T12:00:00.000Z",
|
|
22
|
+
id: "5.39.6-001",
|
|
23
|
+
reason: "skipped",
|
|
24
|
+
startedOn: "2024-06-01T12:00:00.000Z"
|
|
25
|
+
},
|
|
26
|
+
GSI1_PK: "MIGRATIONS",
|
|
27
|
+
GSI1_SK: "5.39.6-001",
|
|
28
|
+
TYPE: "migration",
|
|
29
|
+
_ct: "2024-06-01T12:00:00.000Z",
|
|
30
|
+
_et: "Migration",
|
|
31
|
+
_md: "2024-06-01T12:00:00.000Z"
|
|
32
|
+
};
|
|
33
|
+
exports.migrationSkippedDdbRecord = migrationSkippedDdbRecord;
|
|
34
|
+
const migrationSkippedDdbRecordExists = async ({
|
|
35
|
+
documentClient,
|
|
36
|
+
ddbTable
|
|
37
|
+
}) => {
|
|
38
|
+
// Was the migration already executed?
|
|
39
|
+
const {
|
|
40
|
+
Item
|
|
41
|
+
} = await documentClient.get({
|
|
42
|
+
TableName: ddbTable,
|
|
43
|
+
Key: {
|
|
44
|
+
PK: "MIGRATION#5.39.6-001",
|
|
45
|
+
SK: "A"
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
return !!Item;
|
|
49
|
+
};
|
|
50
|
+
exports.migrationSkippedDdbRecordExists = migrationSkippedDdbRecordExists;
|
|
51
|
+
const createMigrationSkippedDdbRecord = async ({
|
|
52
|
+
documentClient,
|
|
53
|
+
ddbTable
|
|
54
|
+
}) => {
|
|
55
|
+
await documentClient.put({
|
|
56
|
+
TableName: ddbTable,
|
|
57
|
+
Item: migrationSkippedDdbRecord
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
exports.createMigrationSkippedDdbRecord = createMigrationSkippedDdbRecord;
|
|
61
|
+
|
|
62
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_apiElasticsearch","require","DEFAULT_ES_HEALTH_CHECKS_PARAMS","minClusterHealthStatus","ElasticsearchCatClusterHealthStatus","Yellow","maxProcessorPercent","maxRamPercent","maxWaitingTime","waitingTimeStep","exports","migrationSkippedDdbRecord","PK","SK","data","description","finishedOn","id","reason","startedOn","GSI1_PK","GSI1_SK","TYPE","_ct","_et","_md","migrationSkippedDdbRecordExists","documentClient","ddbTable","Item","get","TableName","Key","createMigrationSkippedDdbRecord","put"],"sources":["utils.ts"],"sourcesContent":["import { DynamoDBDocument } from \"@webiny/aws-sdk/client-dynamodb\";\nimport {\n ElasticsearchCatClusterHealthStatus,\n IWaitUntilHealthyParams\n} from \"@webiny/api-elasticsearch\";\n\nexport type EsHealthChecksParams = Required<IWaitUntilHealthyParams>;\n\nexport const DEFAULT_ES_HEALTH_CHECKS_PARAMS: EsHealthChecksParams = {\n minClusterHealthStatus: ElasticsearchCatClusterHealthStatus.Yellow,\n maxProcessorPercent: 90,\n maxRamPercent: 100,\n maxWaitingTime: 90,\n waitingTimeStep: 2\n};\n\nexport const migrationSkippedDdbRecord = {\n PK: \"MIGRATION#5.39.6-001\",\n SK: \"A\",\n data: {\n description: \"Meta fields data migration (skipped via improved meta fields migration)\",\n finishedOn: \"2024-06-01T12:00:00.000Z\",\n id: \"5.39.6-001\",\n reason: \"skipped\",\n startedOn: \"2024-06-01T12:00:00.000Z\"\n },\n GSI1_PK: \"MIGRATIONS\",\n GSI1_SK: \"5.39.6-001\",\n TYPE: \"migration\",\n _ct: \"2024-06-01T12:00:00.000Z\",\n _et: \"Migration\",\n _md: \"2024-06-01T12:00:00.000Z\"\n};\n\ninterface MigrationSkippedDdbRecordParams {\n documentClient: DynamoDBDocument;\n ddbTable: string;\n}\n\nexport const migrationSkippedDdbRecordExists = async ({\n documentClient,\n ddbTable\n}: MigrationSkippedDdbRecordParams) => {\n // Was the migration already executed?\n const { Item } = await documentClient.get({\n TableName: ddbTable,\n Key: {\n PK: \"MIGRATION#5.39.6-001\",\n SK: \"A\"\n }\n });\n\n return !!Item;\n};\n\nexport const createMigrationSkippedDdbRecord = async ({\n documentClient,\n ddbTable\n}: MigrationSkippedDdbRecordParams) => {\n await documentClient.put({\n TableName: ddbTable,\n Item: migrationSkippedDdbRecord\n });\n};\n"],"mappings":";;;;;;AACA,IAAAA,iBAAA,GAAAC,OAAA;AAOO,MAAMC,+BAAqD,GAAG;EACjEC,sBAAsB,EAAEC,qDAAmC,CAACC,MAAM;EAClEC,mBAAmB,EAAE,EAAE;EACvBC,aAAa,EAAE,GAAG;EAClBC,cAAc,EAAE,EAAE;EAClBC,eAAe,EAAE;AACrB,CAAC;AAACC,OAAA,CAAAR,+BAAA,GAAAA,+BAAA;AAEK,MAAMS,yBAAyB,GAAG;EACrCC,EAAE,EAAE,sBAAsB;EAC1BC,EAAE,EAAE,GAAG;EACPC,IAAI,EAAE;IACFC,WAAW,EAAE,yEAAyE;IACtFC,UAAU,EAAE,0BAA0B;IACtCC,EAAE,EAAE,YAAY;IAChBC,MAAM,EAAE,SAAS;IACjBC,SAAS,EAAE;EACf,CAAC;EACDC,OAAO,EAAE,YAAY;EACrBC,OAAO,EAAE,YAAY;EACrBC,IAAI,EAAE,WAAW;EACjBC,GAAG,EAAE,0BAA0B;EAC/BC,GAAG,EAAE,WAAW;EAChBC,GAAG,EAAE;AACT,CAAC;AAACf,OAAA,CAAAC,yBAAA,GAAAA,yBAAA;AAOK,MAAMe,+BAA+B,GAAG,MAAAA,CAAO;EAClDC,cAAc;EACdC;AAC6B,CAAC,KAAK;EACnC;EACA,MAAM;IAAEC;EAAK,CAAC,GAAG,MAAMF,cAAc,CAACG,GAAG,CAAC;IACtCC,SAAS,EAAEH,QAAQ;IACnBI,GAAG,EAAE;MACDpB,EAAE,EAAE,sBAAsB;MAC1BC,EAAE,EAAE;IACR;EACJ,CAAC,CAAC;EAEF,OAAO,CAAC,CAACgB,IAAI;AACjB,CAAC;AAACnB,OAAA,CAAAgB,+BAAA,GAAAA,+BAAA;AAEK,MAAMO,+BAA+B,GAAG,MAAAA,CAAO;EAClDN,cAAc;EACdC;AAC6B,CAAC,KAAK;EACnC,MAAMD,cAAc,CAACO,GAAG,CAAC;IACrBH,SAAS,EAAEH,QAAQ;IACnBC,IAAI,EAAElB;EACV,CAAC,CAAC;AACN,CAAC;AAACD,OAAA,CAAAuB,+BAAA,GAAAA,+BAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|