Skip to content

Commit 90abe89

Browse files
Merge pull request #565 from Kentico/docs/revamp
Docs/revamp
2 parents 5cd040e + 3c3e91f commit 90abe89

File tree

25 files changed

+1277
-239
lines changed

25 files changed

+1277
-239
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ What went wrong?
99

1010
## Output logs
1111

12-
Please include the command line output log file and migration protocol generated for your `Migration.Tool.CLI.exe migrate` command.
12+
Please include the command line output log file generated for your `Migration.Tool.CLI.exe migrate` command.
1313

1414
### Repro steps
1515

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Migration.Tool.Source (KVA/)
2+
3+
> **Advanced Customization:** This is an internal abstraction layer. Most users do not need to modify this project. Only modify this if you are contributing to the migration tool itself or need to customize advanced features like [automatic image optimization during migration](https://docs.kentico.com/x/optimize_images_during_upgrade_guides).
4+
5+
## Purpose
6+
7+
Provides version-agnostic abstractions and shared interfaces used by all version-specific Core projects (K11/KX12/KX13). This acts as a bridge between the core infrastructure (Common) and version-specific implementations.
8+
9+
Located in the `KVA/` solution folder to indicate it's part of the Kentico Version Abstraction layer.
10+
11+
## Key Components
12+
13+
- **Source Entity Abstractions** - Interfaces defining common properties across K11/KX12/KX13 entities
14+
- **Repository Patterns** - Shared patterns for querying source databases
15+
- **Source API Contracts** - Common interfaces for source instance API calls (e.g., widget metadata discovery)
16+
- **Mapping Helpers** - Utility functions used across all version-specific implementations
17+
- **Source Configuration** - Source instance connection and configuration models
18+
19+
## Architecture Role
20+
21+
```
22+
Migration.Tool.Common
23+
24+
Migration.Tool.Source ← Abstraction layer (this project)
25+
26+
Core.K11 / Core.KX12 / Core.KX13 ← Version-specific implementations
27+
28+
K11 / KX12 / KX13 ← Source database models
29+
```
30+
31+
This allows Core projects to share common logic while implementing version-specific behavior where source CMS versions differ.

KX13.Extensions/README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# KX13.Extensions
2+
3+
> **Minimal User Interaction:** This project provides API controllers that you deploy to your KX13 source instance for widget metadata discovery. Most users only need to copy the controller file to their source instance - no modification required.
4+
5+
## Purpose
6+
7+
Required when migrating **Page Builder widgets** from KX13. Provides ASP.NET Core API controllers that expose widget metadata (available properties, data types, default values) from your source instance. The migration tool calls these APIs to retrieve Page Builder widget configurations that are not stored in the database.
8+
9+
## Setup
10+
11+
For complete setup instructions, see [Source instance API discovery](../Migration.Tool.CLI/README.md#api-discovery-setup) in the Migration.Tool.CLI README.
12+
13+
**Quick summary:**
14+
1. Copy `ToolApiController.cs` to your KX13 source instance's `Controllers` folder
15+
2. Register the controller route in `Startup.cs` or `Program.cs`
16+
3. Set a secret value in the controller
17+
4. Configure the migration tool's `appsettings.json` with the matching secret
18+
19+
## Technical Details
20+
21+
- ASP.NET Core 3.1+ compatible (use `ToolApiController.NET48.cs` for .NET Framework 4.8 projects)
22+
- Reads widget registrations from the Kentico API
23+
- Returns JSON metadata consumed by the migration tool
24+
- Requires matching secret between controller and migration tool configuration
25+
26+
Most users will not need to modify this code. Contributors may extend it to expose additional widget metadata or handle custom widget registration patterns.

KX13.NET48.Extensions/README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# KX13.NET48.Extensions
2+
3+
> **Minimal User Interaction:** This project provides API controllers for .NET Framework 4.8 KX13 instances. Most users only need to copy the controller file to their source instance - no modification required.
4+
5+
## Purpose
6+
7+
Required when migrating **Page Builder widgets** from KX13 instances running on **.NET Framework 4.8** (not ASP.NET Core). Provides ASP.NET MVC API controllers that expose widget metadata (available properties, data types, default values) from your source instance. If your KX13 instance runs on ASP.NET Core, use the `KX13.Extensions` project instead.
8+
9+
## Setup
10+
11+
For complete setup instructions, see [Source instance API discovery](../Migration.Tool.CLI/README.md#api-discovery-setup) in the Migration.Tool.CLI README.
12+
13+
**Quick summary:**
14+
1. Copy `ToolApiController.NET48.cs` to your KX13 source instance's `Controllers` folder
15+
2. Register the controller route in `/App_Start/RouteConfig.cs`
16+
3. Set a secret value in the controller
17+
4. Configure the migration tool's `appsettings.json` with the matching secret
18+
19+
## Technical Details
20+
21+
- ASP.NET MVC (not Core) - for .NET Framework 4.8
22+
- Uses `System.Web.Http` instead of `Microsoft.AspNetCore.Mvc`
23+
- Returns JSON metadata consumed by the migration tool
24+
- Requires matching secret between controller and migration tool configuration
25+
26+
Most users will not need to modify this code. Use this project only if your KX13 source instance runs on .NET Framework 4.8 instead of ASP.NET Core.

Migration.Tool.CLI/MIGRATION_PROTOCOL_REFERENCE.md

Lines changed: 0 additions & 37 deletions
This file was deleted.

0 commit comments

Comments
 (0)