@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,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.compressContent = void 0;
|
|
7
|
+
var _gzip = require("@webiny/utils/compression/gzip");
|
|
8
|
+
const compressContent = async data => {
|
|
9
|
+
const compressedValue = await (0, _gzip.compress)(JSON.stringify(data));
|
|
10
|
+
return {
|
|
11
|
+
compression: "gzip",
|
|
12
|
+
value: compressedValue.toString("base64")
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
exports.compressContent = compressContent;
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=compressContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_gzip","require","compressContent","data","compressedValue","compress","JSON","stringify","compression","value","toString","exports"],"sources":["compressContent.ts"],"sourcesContent":["import { compress } from \"@webiny/utils/compression/gzip\";\n\nexport const compressContent = async (data: Record<string, any>) => {\n const compressedValue = await compress(JSON.stringify(data));\n\n return {\n compression: \"gzip\",\n value: compressedValue.toString(\"base64\")\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,eAAe,GAAG,MAAOC,IAAyB,IAAK;EAChE,MAAMC,eAAe,GAAG,MAAM,IAAAC,cAAQ,EAACC,IAAI,CAACC,SAAS,CAACJ,IAAI,CAAC,CAAC;EAE5D,OAAO;IACHK,WAAW,EAAE,MAAM;IACnBC,KAAK,EAAEL,eAAe,CAACM,QAAQ,CAAC,QAAQ;EAC5C,CAAC;AACL,CAAC;AAACC,OAAA,CAAAT,eAAA,GAAAA,eAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Table } from "@webiny/db-dynamodb/toolbox";
|
|
2
|
+
import { DataMigration, DataMigrationContext } from "@webiny/data-migration";
|
|
3
|
+
export declare class PageBlocks_5_38_0_003 implements DataMigration {
|
|
4
|
+
private readonly oldPageBlockEntity;
|
|
5
|
+
private readonly newPageBlockEntity;
|
|
6
|
+
private readonly table;
|
|
7
|
+
constructor(table: Table<string, string, string>);
|
|
8
|
+
getId(): string;
|
|
9
|
+
getDescription(): string;
|
|
10
|
+
shouldExecute({ logger }: DataMigrationContext): Promise<boolean>;
|
|
11
|
+
execute({ logger, ...context }: DataMigrationContext): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PageBlocks_5_38_0_003 = void 0;
|
|
7
|
+
var _ioc = require("@webiny/ioc");
|
|
8
|
+
var _utils = require("@webiny/utils");
|
|
9
|
+
var _dataMigration = require("@webiny/data-migration");
|
|
10
|
+
var _createPageBlockEntity = require("../entities/createPageBlockEntity");
|
|
11
|
+
var _utils2 = require("../../../../utils");
|
|
12
|
+
var _compressContent = require("./compressContent");
|
|
13
|
+
const isGroupMigrationCompleted = status => {
|
|
14
|
+
return typeof status === "boolean";
|
|
15
|
+
};
|
|
16
|
+
class PageBlocks_5_38_0_003 {
|
|
17
|
+
constructor(table) {
|
|
18
|
+
this.table = table;
|
|
19
|
+
this.oldPageBlockEntity = (0, _createPageBlockEntity.createOldPageBlockEntity)(table);
|
|
20
|
+
this.newPageBlockEntity = (0, _createPageBlockEntity.createNewPageBlockEntity)(table);
|
|
21
|
+
}
|
|
22
|
+
getId() {
|
|
23
|
+
return "5.38.0-003";
|
|
24
|
+
}
|
|
25
|
+
getDescription() {
|
|
26
|
+
return "Compress block content, and add GSI1.";
|
|
27
|
+
}
|
|
28
|
+
async shouldExecute({
|
|
29
|
+
logger
|
|
30
|
+
}) {
|
|
31
|
+
let shouldExecute = false;
|
|
32
|
+
await (0, _utils2.forEachTenantLocale)({
|
|
33
|
+
table: this.table,
|
|
34
|
+
logger,
|
|
35
|
+
callback: async ({
|
|
36
|
+
tenantId,
|
|
37
|
+
localeCode
|
|
38
|
+
}) => {
|
|
39
|
+
// We're doing `queryAll` because, at this point in time, this feature is
|
|
40
|
+
// quite new, and we know there won't be a large number of records, so no need to paginate.
|
|
41
|
+
const oldBlocksCount = await (0, _utils2.count)({
|
|
42
|
+
entity: this.oldPageBlockEntity,
|
|
43
|
+
partitionKey: `T#${tenantId}#L#${localeCode}#PB#B`
|
|
44
|
+
});
|
|
45
|
+
const newBlocksCount = await (0, _utils2.count)({
|
|
46
|
+
entity: this.newPageBlockEntity,
|
|
47
|
+
partitionKey: `T#${tenantId}#L#${localeCode}#PB#BLOCKS`,
|
|
48
|
+
options: {
|
|
49
|
+
index: "GSI1"
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
if (newBlocksCount < oldBlocksCount) {
|
|
53
|
+
shouldExecute = true;
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
// Continue to the next locale.
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
return shouldExecute;
|
|
61
|
+
}
|
|
62
|
+
async execute({
|
|
63
|
+
logger,
|
|
64
|
+
...context
|
|
65
|
+
}) {
|
|
66
|
+
const migrationStatus = context.checkpoint || {};
|
|
67
|
+
let batch = 0;
|
|
68
|
+
await (0, _utils2.forEachTenantLocale)({
|
|
69
|
+
table: this.table,
|
|
70
|
+
logger,
|
|
71
|
+
callback: async ({
|
|
72
|
+
tenantId,
|
|
73
|
+
localeCode
|
|
74
|
+
}) => {
|
|
75
|
+
const groupId = `${tenantId}:${localeCode}`;
|
|
76
|
+
const status = migrationStatus[groupId];
|
|
77
|
+
if (isGroupMigrationCompleted(status)) {
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
await (0, _utils2.ddbQueryAllWithCallback)({
|
|
81
|
+
entity: this.oldPageBlockEntity,
|
|
82
|
+
partitionKey: `T#${tenantId}#L#${localeCode}#PB#B`,
|
|
83
|
+
options: {
|
|
84
|
+
gt: status || " "
|
|
85
|
+
}
|
|
86
|
+
}, async oldBlocks => {
|
|
87
|
+
batch++;
|
|
88
|
+
logger.info(`Processing batch #${batch} in group ${groupId} (${oldBlocks.length} blocks).`);
|
|
89
|
+
const items = await Promise.all(oldBlocks.map(async oldBlock => {
|
|
90
|
+
const newPageBlock = {
|
|
91
|
+
...oldBlock,
|
|
92
|
+
PK: `T#${tenantId}#L#${localeCode}#PB#BLOCK#${oldBlock.id}`,
|
|
93
|
+
SK: "A",
|
|
94
|
+
GSI1_PK: `T#${tenantId}#L#${localeCode}#PB#BLOCKS`,
|
|
95
|
+
// We need the ability to filter by category slug, and `id` is for uniqueness.
|
|
96
|
+
GSI1_SK: `${oldBlock.blockCategory}#${oldBlock.id}`,
|
|
97
|
+
content: await (0, _compressContent.compressContent)(oldBlock.content)
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
// We no longer have a `preview`.
|
|
101
|
+
delete newPageBlock["preview"];
|
|
102
|
+
return this.newPageBlockEntity.putBatch(newPageBlock);
|
|
103
|
+
}));
|
|
104
|
+
const execute = () => {
|
|
105
|
+
return (0, _utils2.batchWriteAll)({
|
|
106
|
+
table: this.newPageBlockEntity.table,
|
|
107
|
+
items
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
await (0, _utils.executeWithRetry)(execute, {
|
|
111
|
+
onFailedAttempt: error => {
|
|
112
|
+
logger.error(`"batchWriteAll" attempt #${error.attemptNumber} failed.`);
|
|
113
|
+
logger.error(error.message);
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
// Update checkpoint after every batch
|
|
118
|
+
migrationStatus[groupId] = oldBlocks[oldBlocks.length - 1]?.id;
|
|
119
|
+
|
|
120
|
+
// Check if we should store checkpoint and exit.
|
|
121
|
+
if (context.runningOutOfTime()) {
|
|
122
|
+
await context.createCheckpointAndExit(migrationStatus);
|
|
123
|
+
} else {
|
|
124
|
+
await context.createCheckpoint(migrationStatus);
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
// Mark group as completed.
|
|
129
|
+
migrationStatus[groupId] = true;
|
|
130
|
+
|
|
131
|
+
// Store checkpoint.
|
|
132
|
+
await context.createCheckpoint(migrationStatus);
|
|
133
|
+
|
|
134
|
+
// Continue processing.
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
exports.PageBlocks_5_38_0_003 = PageBlocks_5_38_0_003;
|
|
141
|
+
(0, _ioc.makeInjectable)(PageBlocks_5_38_0_003, [(0, _ioc.inject)(_dataMigration.PrimaryDynamoTableSymbol)]);
|
|
142
|
+
|
|
143
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_ioc","require","_utils","_dataMigration","_createPageBlockEntity","_utils2","_compressContent","isGroupMigrationCompleted","status","PageBlocks_5_38_0_003","constructor","table","oldPageBlockEntity","createOldPageBlockEntity","newPageBlockEntity","createNewPageBlockEntity","getId","getDescription","shouldExecute","logger","forEachTenantLocale","callback","tenantId","localeCode","oldBlocksCount","count","entity","partitionKey","newBlocksCount","options","index","execute","context","migrationStatus","checkpoint","batch","groupId","ddbQueryAllWithCallback","gt","oldBlocks","info","length","items","Promise","all","map","oldBlock","newPageBlock","PK","id","SK","GSI1_PK","GSI1_SK","blockCategory","content","compressContent","putBatch","batchWriteAll","executeWithRetry","onFailedAttempt","error","attemptNumber","message","runningOutOfTime","createCheckpointAndExit","createCheckpoint","exports","makeInjectable","inject","PrimaryDynamoTableSymbol"],"sources":["index.ts"],"sourcesContent":["import { Table } from \"@webiny/db-dynamodb/toolbox\";\nimport { inject, makeInjectable } from \"@webiny/ioc\";\nimport { executeWithRetry } from \"@webiny/utils\";\nimport {\n DataMigration,\n DataMigrationContext,\n PrimaryDynamoTableSymbol\n} from \"@webiny/data-migration\";\nimport {\n createOldPageBlockEntity,\n createNewPageBlockEntity\n} from \"../entities/createPageBlockEntity\";\nimport { batchWriteAll, ddbQueryAllWithCallback, forEachTenantLocale, count } from \"~/utils\";\nimport { PbPageBlock } from \"../types\";\nimport { PrimitiveValue } from \"@webiny/api-elasticsearch/types\";\nimport { compressContent } from \"./compressContent\";\n\nconst isGroupMigrationCompleted = (\n status: PrimitiveValue[] | boolean | undefined\n): status is boolean => {\n return typeof status === \"boolean\";\n};\n\nexport class PageBlocks_5_38_0_003 implements DataMigration {\n private readonly oldPageBlockEntity: ReturnType<typeof createOldPageBlockEntity>;\n private readonly newPageBlockEntity: ReturnType<typeof createNewPageBlockEntity>;\n private readonly table: Table<string, string, string>;\n\n constructor(table: Table<string, string, string>) {\n this.table = table;\n this.oldPageBlockEntity = createOldPageBlockEntity(table);\n this.newPageBlockEntity = createNewPageBlockEntity(table);\n }\n\n getId() {\n return \"5.38.0-003\";\n }\n\n getDescription() {\n return \"Compress block content, and add GSI1.\";\n }\n\n async shouldExecute({ logger }: DataMigrationContext): Promise<boolean> {\n let shouldExecute = false;\n\n await forEachTenantLocale({\n table: this.table,\n logger,\n callback: async ({ tenantId, localeCode }) => {\n // We're doing `queryAll` because, at this point in time, this feature is\n // quite new, and we know there won't be a large number of records, so no need to paginate.\n const oldBlocksCount = await count({\n entity: this.oldPageBlockEntity,\n partitionKey: `T#${tenantId}#L#${localeCode}#PB#B`\n });\n\n const newBlocksCount = await count({\n entity: this.newPageBlockEntity,\n partitionKey: `T#${tenantId}#L#${localeCode}#PB#BLOCKS`,\n options: {\n index: \"GSI1\"\n }\n });\n\n if (newBlocksCount < oldBlocksCount) {\n shouldExecute = true;\n return false;\n }\n // Continue to the next locale.\n return true;\n }\n });\n\n return shouldExecute;\n }\n\n async execute({ logger, ...context }: DataMigrationContext): Promise<void> {\n const migrationStatus = context.checkpoint || {};\n\n let batch = 0;\n\n await forEachTenantLocale({\n table: this.table,\n logger,\n callback: async ({ tenantId, localeCode }) => {\n const groupId = `${tenantId}:${localeCode}`;\n const status = migrationStatus[groupId];\n\n if (isGroupMigrationCompleted(status)) {\n return true;\n }\n\n await ddbQueryAllWithCallback<PbPageBlock>(\n {\n entity: this.oldPageBlockEntity,\n partitionKey: `T#${tenantId}#L#${localeCode}#PB#B`,\n options: {\n gt: status || \" \"\n }\n },\n async oldBlocks => {\n batch++;\n\n logger.info(\n `Processing batch #${batch} in group ${groupId} (${oldBlocks.length} blocks).`\n );\n\n const items = await Promise.all(\n oldBlocks.map(async oldBlock => {\n const newPageBlock = {\n ...oldBlock,\n PK: `T#${tenantId}#L#${localeCode}#PB#BLOCK#${oldBlock.id}`,\n SK: \"A\",\n GSI1_PK: `T#${tenantId}#L#${localeCode}#PB#BLOCKS`,\n // We need the ability to filter by category slug, and `id` is for uniqueness.\n GSI1_SK: `${oldBlock.blockCategory}#${oldBlock.id}`,\n content: await compressContent(oldBlock.content)\n };\n\n // We no longer have a `preview`.\n delete newPageBlock[\"preview\"];\n\n return this.newPageBlockEntity.putBatch(newPageBlock);\n })\n );\n\n const execute = () => {\n return batchWriteAll({ table: this.newPageBlockEntity.table, items });\n };\n\n await executeWithRetry(execute, {\n onFailedAttempt: error => {\n logger.error(\n `\"batchWriteAll\" attempt #${error.attemptNumber} failed.`\n );\n logger.error(error.message);\n }\n });\n\n // Update checkpoint after every batch\n migrationStatus[groupId] = oldBlocks[oldBlocks.length - 1]?.id;\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 // Mark group as completed.\n migrationStatus[groupId] = true;\n\n // Store checkpoint.\n await context.createCheckpoint(migrationStatus);\n\n // Continue processing.\n return true;\n }\n });\n }\n}\n\nmakeInjectable(PageBlocks_5_38_0_003, [inject(PrimaryDynamoTableSymbol)]);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Table } from "@webiny/db-dynamodb/toolbox";
|
|
2
|
+
export declare const createOldPageBlockEntity: (table: Table<string, string, string>) => import("dynamodb-toolbox/dist/cjs/classes/Entity/Entity").default<string, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, Table<string, string, string>, true, true, boolean, string, string, string, boolean, {
|
|
3
|
+
PK: {
|
|
4
|
+
partitionKey: true;
|
|
5
|
+
};
|
|
6
|
+
SK: {
|
|
7
|
+
sortKey: true;
|
|
8
|
+
};
|
|
9
|
+
GSI1_PK: {
|
|
10
|
+
type: "string";
|
|
11
|
+
};
|
|
12
|
+
GSI1_SK: {
|
|
13
|
+
type: "string";
|
|
14
|
+
};
|
|
15
|
+
TYPE: {
|
|
16
|
+
type: "string";
|
|
17
|
+
};
|
|
18
|
+
}, {
|
|
19
|
+
PK: {
|
|
20
|
+
partitionKey: true;
|
|
21
|
+
};
|
|
22
|
+
SK: {
|
|
23
|
+
sortKey: true;
|
|
24
|
+
};
|
|
25
|
+
GSI1_PK: {
|
|
26
|
+
type: "string";
|
|
27
|
+
};
|
|
28
|
+
GSI1_SK: {
|
|
29
|
+
type: "string";
|
|
30
|
+
};
|
|
31
|
+
TYPE: {
|
|
32
|
+
type: "string";
|
|
33
|
+
};
|
|
34
|
+
}, import("dynamodb-toolbox/dist/cjs/classes/Entity").ParsedAttributes<import("ts-toolbelt/out/Any/Key").Key>, any, {
|
|
35
|
+
[x: string]: any;
|
|
36
|
+
[x: number]: any;
|
|
37
|
+
[x: symbol]: any;
|
|
38
|
+
}, {
|
|
39
|
+
[x: string]: any;
|
|
40
|
+
[x: number]: any;
|
|
41
|
+
[x: symbol]: any;
|
|
42
|
+
}>;
|
|
43
|
+
export declare const createNewPageBlockEntity: (table: Table<string, string, string>) => import("dynamodb-toolbox/dist/cjs/classes/Entity/Entity").default<string, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, Table<string, string, string>, true, true, boolean, string, string, string, boolean, {
|
|
44
|
+
PK: {
|
|
45
|
+
partitionKey: true;
|
|
46
|
+
};
|
|
47
|
+
SK: {
|
|
48
|
+
sortKey: true;
|
|
49
|
+
};
|
|
50
|
+
GSI1_PK: {
|
|
51
|
+
type: "string";
|
|
52
|
+
};
|
|
53
|
+
GSI1_SK: {
|
|
54
|
+
type: "string";
|
|
55
|
+
};
|
|
56
|
+
TYPE: {
|
|
57
|
+
type: "string";
|
|
58
|
+
};
|
|
59
|
+
}, {
|
|
60
|
+
PK: {
|
|
61
|
+
partitionKey: true;
|
|
62
|
+
};
|
|
63
|
+
SK: {
|
|
64
|
+
sortKey: true;
|
|
65
|
+
};
|
|
66
|
+
GSI1_PK: {
|
|
67
|
+
type: "string";
|
|
68
|
+
};
|
|
69
|
+
GSI1_SK: {
|
|
70
|
+
type: "string";
|
|
71
|
+
};
|
|
72
|
+
TYPE: {
|
|
73
|
+
type: "string";
|
|
74
|
+
};
|
|
75
|
+
}, import("dynamodb-toolbox/dist/cjs/classes/Entity").ParsedAttributes<import("ts-toolbelt/out/Any/Key").Key>, any, {
|
|
76
|
+
[x: string]: any;
|
|
77
|
+
[x: number]: any;
|
|
78
|
+
[x: symbol]: any;
|
|
79
|
+
}, {
|
|
80
|
+
[x: string]: any;
|
|
81
|
+
[x: number]: any;
|
|
82
|
+
[x: symbol]: any;
|
|
83
|
+
}>;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createOldPageBlockEntity = exports.createNewPageBlockEntity = void 0;
|
|
7
|
+
var _utils = require("../../../../utils");
|
|
8
|
+
const oldAttributes = {
|
|
9
|
+
PK: {
|
|
10
|
+
partitionKey: true
|
|
11
|
+
},
|
|
12
|
+
SK: {
|
|
13
|
+
sortKey: true
|
|
14
|
+
},
|
|
15
|
+
TYPE: {
|
|
16
|
+
type: "string"
|
|
17
|
+
},
|
|
18
|
+
id: {
|
|
19
|
+
type: "string"
|
|
20
|
+
},
|
|
21
|
+
name: {
|
|
22
|
+
type: "string"
|
|
23
|
+
},
|
|
24
|
+
blockCategory: {
|
|
25
|
+
type: "string"
|
|
26
|
+
},
|
|
27
|
+
content: {
|
|
28
|
+
type: "map"
|
|
29
|
+
},
|
|
30
|
+
preview: {
|
|
31
|
+
type: "map"
|
|
32
|
+
},
|
|
33
|
+
createdOn: {
|
|
34
|
+
type: "string"
|
|
35
|
+
},
|
|
36
|
+
createdBy: {
|
|
37
|
+
type: "map"
|
|
38
|
+
},
|
|
39
|
+
tenant: {
|
|
40
|
+
type: "string"
|
|
41
|
+
},
|
|
42
|
+
locale: {
|
|
43
|
+
type: "string"
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
const createOldPageBlockEntity = table => {
|
|
47
|
+
return (0, _utils.createLegacyEntity)(table, "PbPageBlocks", oldAttributes);
|
|
48
|
+
};
|
|
49
|
+
exports.createOldPageBlockEntity = createOldPageBlockEntity;
|
|
50
|
+
const createNewPageBlockEntity = table => {
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
52
|
+
const {
|
|
53
|
+
preview,
|
|
54
|
+
...attrs
|
|
55
|
+
} = oldAttributes;
|
|
56
|
+
return (0, _utils.createLegacyEntity)(table, "PbPageBlocks", {
|
|
57
|
+
...attrs,
|
|
58
|
+
GSI1_PK: {
|
|
59
|
+
type: "string"
|
|
60
|
+
},
|
|
61
|
+
GSI1_SK: {
|
|
62
|
+
type: "string"
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
exports.createNewPageBlockEntity = createNewPageBlockEntity;
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=createPageBlockEntity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_utils","require","oldAttributes","PK","partitionKey","SK","sortKey","TYPE","type","id","name","blockCategory","content","preview","createdOn","createdBy","tenant","locale","createOldPageBlockEntity","table","createLegacyEntity","exports","createNewPageBlockEntity","attrs","GSI1_PK","GSI1_SK"],"sources":["createPageBlockEntity.ts"],"sourcesContent":["import { Table, AttributeDefinitions } from \"@webiny/db-dynamodb/toolbox\";\nimport { createLegacyEntity } from \"~/utils\";\n\nconst oldAttributes: AttributeDefinitions = {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n TYPE: {\n type: \"string\"\n },\n id: {\n type: \"string\"\n },\n name: {\n type: \"string\"\n },\n blockCategory: {\n type: \"string\"\n },\n content: {\n type: \"map\"\n },\n preview: {\n type: \"map\"\n },\n createdOn: {\n type: \"string\"\n },\n createdBy: {\n type: \"map\"\n },\n tenant: {\n type: \"string\"\n },\n locale: {\n type: \"string\"\n }\n};\n\nexport const createOldPageBlockEntity = (table: Table<string, string, string>) => {\n return createLegacyEntity(table, \"PbPageBlocks\", oldAttributes);\n};\n\nexport const createNewPageBlockEntity = (table: Table<string, string, string>) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { preview, ...attrs } = oldAttributes;\n\n return createLegacyEntity(table, \"PbPageBlocks\", {\n ...attrs,\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n }\n });\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAEA,MAAMC,aAAmC,GAAG;EACxCC,EAAE,EAAE;IACAC,YAAY,EAAE;EAClB,CAAC;EACDC,EAAE,EAAE;IACAC,OAAO,EAAE;EACb,CAAC;EACDC,IAAI,EAAE;IACFC,IAAI,EAAE;EACV,CAAC;EACDC,EAAE,EAAE;IACAD,IAAI,EAAE;EACV,CAAC;EACDE,IAAI,EAAE;IACFF,IAAI,EAAE;EACV,CAAC;EACDG,aAAa,EAAE;IACXH,IAAI,EAAE;EACV,CAAC;EACDI,OAAO,EAAE;IACLJ,IAAI,EAAE;EACV,CAAC;EACDK,OAAO,EAAE;IACLL,IAAI,EAAE;EACV,CAAC;EACDM,SAAS,EAAE;IACPN,IAAI,EAAE;EACV,CAAC;EACDO,SAAS,EAAE;IACPP,IAAI,EAAE;EACV,CAAC;EACDQ,MAAM,EAAE;IACJR,IAAI,EAAE;EACV,CAAC;EACDS,MAAM,EAAE;IACJT,IAAI,EAAE;EACV;AACJ,CAAC;AAEM,MAAMU,wBAAwB,GAAIC,KAAoC,IAAK;EAC9E,OAAO,IAAAC,yBAAkB,EAACD,KAAK,EAAE,cAAc,EAAEjB,aAAa,CAAC;AACnE,CAAC;AAACmB,OAAA,CAAAH,wBAAA,GAAAA,wBAAA;AAEK,MAAMI,wBAAwB,GAAIH,KAAoC,IAAK;EAC9E;EACA,MAAM;IAAEN,OAAO;IAAE,GAAGU;EAAM,CAAC,GAAGrB,aAAa;EAE3C,OAAO,IAAAkB,yBAAkB,EAACD,KAAK,EAAE,cAAc,EAAE;IAC7C,GAAGI,KAAK;IACRC,OAAO,EAAE;MACLhB,IAAI,EAAE;IACV,CAAC;IACDiB,OAAO,EAAE;MACLjB,IAAI,EAAE;IACV;EACJ,CAAC,CAAC;AACN,CAAC;AAACa,OAAA,CAAAC,wBAAA,GAAAA,wBAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["export interface PbPageBlock {\n id: string;\n tenant: string;\n locale: string;\n blockCategory: string;\n content: Record<string, any>;\n preview?: any;\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Table } from "@webiny/db-dynamodb/toolbox";
|
|
2
|
+
import { DataMigration, DataMigrationContext } from "@webiny/data-migration";
|
|
3
|
+
interface LastEvaluatedKey {
|
|
4
|
+
PK: string;
|
|
5
|
+
SK: string;
|
|
6
|
+
GSI1_PK: string;
|
|
7
|
+
GSI1_SK: string;
|
|
8
|
+
}
|
|
9
|
+
interface FolderSubmissionsDataMigrationCheckpoint {
|
|
10
|
+
lastEvaluatedKey?: LastEvaluatedKey | boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare class CmsEntriesInitNewMetaFields_5_39_0_001 implements DataMigration {
|
|
13
|
+
private readonly entryEntity;
|
|
14
|
+
constructor(table: Table<string, string, string>);
|
|
15
|
+
getId(): string;
|
|
16
|
+
getDescription(): string;
|
|
17
|
+
shouldExecute({ logger }: DataMigrationContext): Promise<boolean>;
|
|
18
|
+
execute({ logger, ...context }: DataMigrationContext<FolderSubmissionsDataMigrationCheckpoint>): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CmsEntriesInitNewMetaFields_5_39_0_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("../entities/createEntryEntity");
|
|
12
|
+
var _assignNewMetaFields = require("../utils/assignNewMetaFields");
|
|
13
|
+
var _isMigratedEntry = require("../utils/isMigratedEntry");
|
|
14
|
+
var _getOldestRevisionCreatedOn = require("../utils/getOldestRevisionCreatedOn");
|
|
15
|
+
var _getFirstLastPublishedOn = require("../utils/getFirstLastPublishedOn");
|
|
16
|
+
class CmsEntriesInitNewMetaFields_5_39_0_001 {
|
|
17
|
+
constructor(table) {
|
|
18
|
+
this.entryEntity = (0, _createEntryEntity.createDdbEntryEntity)(table);
|
|
19
|
+
}
|
|
20
|
+
getId() {
|
|
21
|
+
return "5.39.0-001";
|
|
22
|
+
}
|
|
23
|
+
getDescription() {
|
|
24
|
+
return "Write new revision and entry-level on/by meta fields.";
|
|
25
|
+
}
|
|
26
|
+
async shouldExecute({
|
|
27
|
+
logger
|
|
28
|
+
}) {
|
|
29
|
+
/**
|
|
30
|
+
* We will go through a larger amount of the entries, to determine if they need to be updated.
|
|
31
|
+
*/
|
|
32
|
+
const result = await (0, _utils.scan)({
|
|
33
|
+
entity: this.entryEntity,
|
|
34
|
+
options: {
|
|
35
|
+
filters: [{
|
|
36
|
+
attr: "_et",
|
|
37
|
+
eq: "CmsEntries"
|
|
38
|
+
}],
|
|
39
|
+
limit: 100
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
if (result.items.length === 0) {
|
|
43
|
+
logger.info(`No CMS entries found in the system; skipping migration.`);
|
|
44
|
+
return false;
|
|
45
|
+
} else if (result.error) {
|
|
46
|
+
logger.error(result.error);
|
|
47
|
+
throw new Error(result.error);
|
|
48
|
+
}
|
|
49
|
+
for (const item of result.items) {
|
|
50
|
+
if (!(0, _isMigratedEntry.isMigratedEntry)(item)) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
logger.info(`CMS entries already upgraded. skipping...`);
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
async execute({
|
|
58
|
+
logger,
|
|
59
|
+
...context
|
|
60
|
+
}) {
|
|
61
|
+
const migrationStatus = context.checkpoint || {};
|
|
62
|
+
if (migrationStatus.lastEvaluatedKey === true) {
|
|
63
|
+
logger.info(`Migration completed, no need to start again.`);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
let usingKey = "";
|
|
67
|
+
if (migrationStatus?.lastEvaluatedKey) {
|
|
68
|
+
usingKey = JSON.stringify(migrationStatus.lastEvaluatedKey);
|
|
69
|
+
}
|
|
70
|
+
logger.debug(`Scanning DynamoDB table... ${usingKey}`);
|
|
71
|
+
await (0, _utils.ddbScanWithCallback)({
|
|
72
|
+
entity: this.entryEntity,
|
|
73
|
+
options: {
|
|
74
|
+
filters: [{
|
|
75
|
+
attr: "_et",
|
|
76
|
+
eq: "CmsEntries"
|
|
77
|
+
}],
|
|
78
|
+
startKey: migrationStatus.lastEvaluatedKey || undefined,
|
|
79
|
+
limit: 100
|
|
80
|
+
}
|
|
81
|
+
}, async result => {
|
|
82
|
+
logger.debug(`Processing ${result.items.length} items...`);
|
|
83
|
+
const items = [];
|
|
84
|
+
for (const item of result.items) {
|
|
85
|
+
if ((0, _isMigratedEntry.isMigratedEntry)(item)) {
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// Get the oldest revision's `createdOn` value. We use that to set the entry-level `createdOn` value.
|
|
90
|
+
const createdOn = await (0, _getOldestRevisionCreatedOn.getOldestRevisionCreatedOn)({
|
|
91
|
+
entry: item,
|
|
92
|
+
entryEntity: this.entryEntity
|
|
93
|
+
});
|
|
94
|
+
const firstLastPublishedOnByFields = await (0, _getFirstLastPublishedOn.getFirstLastPublishedOnBy)({
|
|
95
|
+
entry: item,
|
|
96
|
+
entryEntity: this.entryEntity
|
|
97
|
+
});
|
|
98
|
+
(0, _assignNewMetaFields.assignNewMetaFields)(item, {
|
|
99
|
+
createdOn,
|
|
100
|
+
...firstLastPublishedOnByFields
|
|
101
|
+
});
|
|
102
|
+
items.push(this.entryEntity.putBatch(item));
|
|
103
|
+
}
|
|
104
|
+
const execute = () => {
|
|
105
|
+
return (0, _utils.batchWriteAll)({
|
|
106
|
+
table: this.entryEntity.table,
|
|
107
|
+
items
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
logger.trace("Storing the DynamoDB records...");
|
|
111
|
+
await (0, _utils2.executeWithRetry)(execute, {
|
|
112
|
+
onFailedAttempt: error => {
|
|
113
|
+
logger.error(`"batchWriteAll" attempt #${error.attemptNumber} failed.`);
|
|
114
|
+
logger.error(error.message);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
logger.trace("...stored.");
|
|
118
|
+
|
|
119
|
+
// Update checkpoint after every batch
|
|
120
|
+
migrationStatus.lastEvaluatedKey = result.lastEvaluatedKey?.PK ? result.lastEvaluatedKey : true;
|
|
121
|
+
|
|
122
|
+
// Check if we should store checkpoint and exit.
|
|
123
|
+
if (context.runningOutOfTime()) {
|
|
124
|
+
await context.createCheckpointAndExit(migrationStatus);
|
|
125
|
+
} else {
|
|
126
|
+
await context.createCheckpoint(migrationStatus);
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
migrationStatus.lastEvaluatedKey = true;
|
|
130
|
+
context.createCheckpoint(migrationStatus);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
exports.CmsEntriesInitNewMetaFields_5_39_0_001 = CmsEntriesInitNewMetaFields_5_39_0_001;
|
|
134
|
+
(0, _ioc.makeInjectable)(CmsEntriesInitNewMetaFields_5_39_0_001, [(0, _ioc.inject)(_dataMigration.PrimaryDynamoTableSymbol)]);
|
|
135
|
+
|
|
136
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dataMigration","require","_utils","_ioc","_utils2","_createEntryEntity","_assignNewMetaFields","_isMigratedEntry","_getOldestRevisionCreatedOn","_getFirstLastPublishedOn","CmsEntriesInitNewMetaFields_5_39_0_001","constructor","table","entryEntity","createDdbEntryEntity","getId","getDescription","shouldExecute","logger","result","scan","entity","options","filters","attr","eq","limit","items","length","info","error","Error","item","isMigratedEntry","execute","context","migrationStatus","checkpoint","lastEvaluatedKey","usingKey","JSON","stringify","debug","ddbScanWithCallback","startKey","undefined","createdOn","getOldestRevisionCreatedOn","entry","firstLastPublishedOnByFields","getFirstLastPublishedOnBy","assignNewMetaFields","push","putBatch","batchWriteAll","trace","executeWithRetry","onFailedAttempt","attemptNumber","message","PK","runningOutOfTime","createCheckpointAndExit","createCheckpoint","exports","makeInjectable","inject","PrimaryDynamoTableSymbol"],"sources":["index.ts"],"sourcesContent":["import { Table } from \"@webiny/db-dynamodb/toolbox\";\nimport {\n DataMigration,\n DataMigrationContext,\n PrimaryDynamoTableSymbol\n} from \"@webiny/data-migration\";\nimport { batchWriteAll, BatchWriteItem, ddbScanWithCallback, scan } from \"~/utils\";\nimport { inject, makeInjectable } from \"@webiny/ioc\";\nimport { executeWithRetry } from \"@webiny/utils\";\nimport { CmsEntry } from \"../types\";\nimport { createDdbEntryEntity } from \"../entities/createEntryEntity\";\nimport { assignNewMetaFields } from \"../utils/assignNewMetaFields\";\nimport { isMigratedEntry } from \"../utils/isMigratedEntry\";\nimport { getOldestRevisionCreatedOn } from \"../utils/getOldestRevisionCreatedOn\";\nimport { getFirstLastPublishedOnBy } from \"~/migrations/5.39.0/001/utils/getFirstLastPublishedOn\";\n\ninterface LastEvaluatedKey {\n PK: string;\n SK: string;\n GSI1_PK: string;\n GSI1_SK: string;\n}\n\ninterface FolderSubmissionsDataMigrationCheckpoint {\n lastEvaluatedKey?: LastEvaluatedKey | boolean;\n}\n\nexport class CmsEntriesInitNewMetaFields_5_39_0_001 implements DataMigration {\n private readonly entryEntity: ReturnType<typeof createDdbEntryEntity>;\n\n constructor(table: Table<string, string, string>) {\n this.entryEntity = createDdbEntryEntity(table);\n }\n\n getId() {\n return \"5.39.0-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 /**\n * We will go through a larger amount of the entries, to determine if they need to be updated.\n */\n const result = await scan<CmsEntry>({\n entity: this.entryEntity,\n options: {\n filters: [\n {\n attr: \"_et\",\n eq: \"CmsEntries\"\n }\n ],\n limit: 100\n }\n });\n\n if (result.items.length === 0) {\n logger.info(`No CMS entries found in the system; skipping migration.`);\n return false;\n } else if (result.error) {\n logger.error(result.error);\n throw new Error(result.error);\n }\n\n for (const item of result.items) {\n if (!isMigratedEntry(item)) {\n return true;\n }\n }\n\n logger.info(`CMS entries already upgraded. skipping...`);\n return false;\n }\n\n async execute({\n logger,\n ...context\n }: DataMigrationContext<FolderSubmissionsDataMigrationCheckpoint>): Promise<void> {\n const migrationStatus = context.checkpoint || {};\n\n if (migrationStatus.lastEvaluatedKey === true) {\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.debug(`Scanning DynamoDB table... ${usingKey}`);\n await ddbScanWithCallback<CmsEntry>(\n {\n entity: this.entryEntity,\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 logger.debug(`Processing ${result.items.length} items...`);\n const items: BatchWriteItem[] = [];\n for (const item of result.items) {\n if (isMigratedEntry(item)) {\n continue;\n }\n\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.entryEntity\n });\n\n const firstLastPublishedOnByFields = await getFirstLastPublishedOnBy({\n entry: item,\n entryEntity: this.entryEntity\n });\n\n assignNewMetaFields(item, {\n createdOn,\n ...firstLastPublishedOnByFields\n });\n\n items.push(this.entryEntity.putBatch(item));\n }\n\n const execute = () => {\n return batchWriteAll({ table: this.entryEntity.table, items });\n };\n\n logger.trace(\"Storing the DynamoDB records...\");\n await executeWithRetry(execute, {\n onFailedAttempt: error => {\n logger.error(`\"batchWriteAll\" attempt #${error.attemptNumber} failed.`);\n logger.error(error.message);\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 migrationStatus.lastEvaluatedKey = true;\n context.createCheckpoint(migrationStatus);\n }\n}\n\nmakeInjectable(CmsEntriesInitNewMetaFields_5_39_0_001, [inject(PrimaryDynamoTableSymbol)]);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Table } from "@webiny/db-dynamodb/toolbox";
|
|
2
|
+
import { DataMigration, DataMigrationContext } from "@webiny/data-migration";
|
|
3
|
+
import { Client } from "@elastic/elasticsearch";
|
|
4
|
+
interface LastEvaluatedKey {
|
|
5
|
+
PK: string;
|
|
6
|
+
SK: string;
|
|
7
|
+
GSI1_PK: string;
|
|
8
|
+
GSI1_SK: string;
|
|
9
|
+
}
|
|
10
|
+
interface IndexSettings {
|
|
11
|
+
number_of_replicas: number;
|
|
12
|
+
refresh_interval: `${number}s`;
|
|
13
|
+
}
|
|
14
|
+
interface CmsEntriesRootFolderDataMigrationCheckpoint {
|
|
15
|
+
lastEvaluatedKey?: LastEvaluatedKey | boolean;
|
|
16
|
+
indexes: {
|
|
17
|
+
[index: string]: IndexSettings | null;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare class CmsEntriesInitNewMetaFields_5_39_0_001 implements DataMigration {
|
|
21
|
+
private readonly elasticsearchClient;
|
|
22
|
+
private readonly ddbEntryEntity;
|
|
23
|
+
private readonly ddbEsEntryEntity;
|
|
24
|
+
constructor(table: Table<string, string, string>, esTable: Table<string, string, string>, elasticsearchClient: Client);
|
|
25
|
+
getId(): string;
|
|
26
|
+
getDescription(): string;
|
|
27
|
+
shouldExecute({ logger }: DataMigrationContext): Promise<boolean>;
|
|
28
|
+
execute({ logger, ...context }: DataMigrationContext<CmsEntriesRootFolderDataMigrationCheckpoint>): Promise<void>;
|
|
29
|
+
}
|
|
30
|
+
export {};
|