-
Task
-
Resolution: Unresolved
-
Critical
-
None
-
None
-
False
-
-
False
-
-
-
Summary
The dynamic plugin @parfuemerie-douglas/scaffolder-backend-module-azure-repositories (incompatible with BS 1.45 / project abandoned) has been removed from RHDH as it is no longer being maintained and is incompatible.
There exists a community-maintained @backstage-community/plugin-scaffolder-backend-module-azure-devops from the backstage/community-plugins repository at https://github.com/backstage/community-plugins/tree/main/workspaces/azure-devops/plugins/scaffolder-backend-module-azure-devops which is almost completely compatible with the old plugin.
See details below about breaking changes
Reason for Change
The Parfuemerie Douglas plugin is incompatible with RHDH 1.9+ due to:
- Dependency on deprecated @backstage/backend-common package
- Use of legacy /alpha imports from @backstage/plugin-scaffolder-node
- Outdated createTemplateAction API (single type argument vs two)
- Incompatible Logger type (Winston vs LoggerService)
- Unmaintained - last commit was Aug 2024.
The community plugin is actively maintained and compatible with current Backstage APIs.
Action ID Changes
| Old Action (Parfuemerie) | New Action (Community) |
|---|---|
| azure:repo:clone | azure:repository:clone |
| azure:repo:push | azure:repository:push |
| azure:repo:pr | azure:pr:create |
Parameter Differences
Clone Action
| Parameter | Old Plugin | New Plugin | Migration Notes |
|---|---|---|---|
| remoteUrl | ✓ | ✓ | No change |
| branch | ✓ | ✓ | No change |
| targetPath | ✓ | ✓ | No change |
| server | ✓ | ✗ | Remove - auth handled via integrations config |
| token | ✓ | ✓ | No change |
| cloneDepth | ✗ | ✓ | New optional feature |
Push Action
| Parameter | Old Plugin | New Plugin | Migration Notes |
|---|---|---|---|
| remoteUrl | ✗ (implicit) | ✓ Required | BREAKING: Must add explicit remoteUrl parameter |
| branch | ✓ | ✓ | No change |
| sourcePath | ✓ | ✓ | No change |
| gitCommitMessage | ✓ | ✓ | No change |
| gitAuthorName | ✓ | ✓ | No change |
| gitAuthorEmail | ✓ | ✓ | No change |
| token | ✗ | ✓ | New optional parameter |
Pull Request Action
| Parameter | Old Plugin | New Plugin | Migration Notes |
|---|---|---|---|
| organization | ✓ | ✓ | No change |
| sourceBranch | ✓ | ✓ | No change |
| targetBranch | ✓ | ✓ | No change |
| title | ✓ | ✓ | No change |
| description | ✓ | ✓ | No change |
| repoId | ✓ | ✗ | BREAKING: Renamed to repoName |
| repoName | ✗ | ✓ | BREAKING: Replaces repoId |
| project | ✓ | ✓ | No change |
| supportsIterations | ✓ | ✓ | No change |
| server | ✓ | ✓ | No change |
| token | ✓ | ✓ | No change |
| autoComplete | ✓ | ✓ | No change |
| workItemId | ✗ | ✓ | New optional feature |
Template Migration Steps
1. Update Action IDs
# Before - id: clone action: azure:repo:clone # After - id: clone action: azure:repository:clone
2. Update Push Action (Breaking Change)
# Before - remoteUrl was implicit from previous clone - id: push action: azure:repo:push input: branch: main # After - remoteUrl is now required - id: push action: azure:repository:push input: remoteUrl: ${{ steps.clone.output.remoteUrl }} branch: main
3. Update PR Action Parameter Name (Breaking Change)
# Before - id: pr action: azure:repo:pr input: repoId: ${{ parameters.repoId }} title: "New PR" # After - repoId renamed to repoName - id: pr action: azure:pr:create input: repoName: ${{ parameters.repoId }} title: "New PR"
Dynamic Plugin Package Reference
| Version | Package |
|---|---|
| Old (deprecated) | oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/parfuemerie-douglas-scaffolder-backend-module-azure-repositories:* |
| New (recommended) | oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-scaffolder-backend-module-azure-devops:bs_1.45.3__0.18.0 |
Acceptance Criteria
- [ ] Document the deprecation of @parfuemerie-douglas/scaffolder-backend-module-azure-repositories
- [ ] Document the replacement plugin @backstage-community/plugin-scaffolder-backend-module-azure-devops
- [ ] Provide migration guide for existing templates
- [ ] Update release notes with breaking changes
- [ ] Remove the deprecated plugin from the overlay repository, at least remove it from the .txt lists of supported / tech-preview / dev-preview plugins, so that it wouldn't be a mandatory plugin anymore.
- clones
-
RHIDP-11408 Remove @parfuemerie-douglas/scaffolder-backend-module-azure-repositories as it is no longer being maintained and is incompatible with RHDH 1.9
-
- Closed
-
- depends on
-
RHIDP-11408 Remove @parfuemerie-douglas/scaffolder-backend-module-azure-repositories as it is no longer being maintained and is incompatible with RHDH 1.9
-
- Closed
-