Skip to content

🐛 Fix mta-801 golden manifest diff mismatch for ocp - #740

Merged
msajidmansoori12 merged 7 commits into
migtools:mainfrom
msajidmansoori12:fix-mta-801
Aug 3, 2026
Merged

🐛 Fix mta-801 golden manifest diff mismatch for ocp#740
msajidmansoori12 merged 7 commits into
migtools:mainfrom
msajidmansoori12:fix-mta-801

Conversation

@msajidmansoori12

@msajidmansoori12 msajidmansoori12 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Tests
    • Added OpenShift golden manifests covering a Redis deployment, storage, networking, certificates, secrets, service accounts, and RBAC.
    • Updated migration validation for platform-specific expected results and OpenShift-generated defaults.
    • Improved manifest comparisons by ignoring cluster-specific storage and networking fields.
    • Added regression coverage for normalized Service and PersistentVolumeClaim comparisons.
    • Updated sample NGINX expectations for generated routes and platform-managed resources.

@msajidmansoori12 msajidmansoori12 self-assigned this Jul 29, 2026
@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: f691413f-17fc-43f1-b1fd-13adc7f07561

📥 Commits

Reviewing files that changed from the base of the PR and between 1920356 and 615628c.

📒 Files selected for processing (9)
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/output.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/Route_route.openshift.io_v1_simple-nginx-nopv_my-simple-nginx-nopv.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/ServiceAccount__v1_simple-nginx-nopv_builder.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/ServiceAccount__v1_simple-nginx-nopv_deployer.yaml
  • e2e-tests/utils/utils.go
  • e2e-tests/utils/utils_test.go
💤 Files with no reviewable changes (5)
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/ServiceAccount__v1_simple-nginx-nopv_builder.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/RoleBinding_rbac.authorization.k8s.io_v1_simple-nginx-nopv_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/resources/simple-nginx-nopv/ServiceAccount__v1_simple-nginx-nopv_deployer.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • e2e-tests/utils/utils.go
  • e2e-tests/utils/utils_test.go

📝 Walkthrough

Walkthrough

OpenShift-aware golden selection and semantic comparison were added to MTA-801. Redis OpenShift export fixtures and output goldens now cover workload, storage, networking, certificates, identities, registry secrets, and RBAC resources. Simple nginx output goldens now reflect generated Route hosts and removed generated resources.

Changes

OpenShift Redis golden manifests

Layer / File(s) Summary
Platform-aware golden validation
e2e-tests/tests/tier0/*, e2e-tests/utils/*
Tests select platform-specific goldens. Export normalization ignores cluster-specific Service and PVC fields. Regression tests cover these rules.
Redis OpenShift exported resources
e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ConfigMap*, Deployment*, ReplicaSet*, Service*, Endpoints*, EndpointSlice*, PersistentVolumeClaim*
Export goldens define Redis workload resources, persistent storage, service discovery, and certificate ConfigMaps.
Redis OpenShift identities and access
e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding*, Secret*, ServiceAccount*
Export goldens define service accounts, registry pull secrets, Redis credentials, and OpenShift RBAC bindings.
Redis output goldens
e2e-tests/golden-manifests-ocp/redis/output/*
Output goldens define the Redis Secret, ClusterIP Service, and zero-replica Deployment with persistent storage.
Simple nginx OpenShift output fixtures
e2e-tests/golden-manifests-ocp/simple-nginx-nopv/output/*
Output goldens remove generated ServiceAccounts and RoleBindings and add the generated-host Route annotation.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant MTA801Test
  participant KubectlSrc
  participant GoldenDirectory
  participant YAMLComparator
  MTA801Test->>KubectlSrc: Detect OpenShift
  MTA801Test->>GoldenDirectory: Select platform-specific goldens
  MTA801Test->>YAMLComparator: Compare normalized manifests
Loading

Possibly related PRs

  • migtools/crane#677: Updates MTA-801 with OpenShift-specific golden manifests and comparison handling.
  • migtools/crane#580: Modifies the same migration tests and YAML comparison utilities.
  • migtools/crane#618: Extends export normalization for cluster-specific manifest fields.

Suggested labels: size/XL, test

Suggested reviewers: stillalearner

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the primary change: fixing the MTA-801 golden manifest diff mismatch for OpenShift.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@e2e-tests/golden-manifests-ocp/redis/export/resources/redis/PersistentVolumeClaim__v1_redis_redis-data.yaml`:
- Around line 7-9: Normalize the OpenShift Redis export fixtures to remove
cluster-specific defaults: in
e2e-tests/golden-manifests-ocp/redis/export/resources/redis/PersistentVolumeClaim__v1_redis_redis-data.yaml:7-9,
remove volume.kubernetes.io/selected-node and avoid AWS-specific storage
provisioner values; in
e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Service__v1_redis_redis.yaml:40-42,
remove spec.ipFamilies and spec.ipFamilyPolicy or align them with the generic
golden set’s single-stack baseline.

In
`@e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_builder-dockercfg-lgfpb.yaml`:
- Around line 2-3: Remove the captured OpenShift registry credentials from the
three `.dockercfg` payloads: replace the values in
e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_builder-dockercfg-lgfpb.yaml
lines 2-3, Secret__v1_redis_default-dockercfg-jpgs2.yaml lines 2-3, and
Secret__v1_redis_deployer-dockercfg-vf8ll.yaml lines 2-3 with consistent invalid
synthetic or redacted authentication values, and rotate any credentials sourced
from the real cluster.

In `@e2e-tests/tests/tier0/mta_801_stateful_migration_test.go`:
- Around line 84-85: Update the comparator assignment in the stateful migration
test so OpenShift output goldens use an output-specific comparator with strict
file-set semantics, rather than
CompareDirectoryYAMLSemanticsExportAllowOptionalOCPOutputDefaults. Preserve
OCP-specific normalization only if provided through a dedicated output
comparator.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 3a7eacf4-3ca3-4152-9699-579330b50e92

📥 Commits

Reviewing files that changed from the base of the PR and between 2af4112 and 1fd864d.

📒 Files selected for processing (26)
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ConfigMap__v1_redis_kube-root-ca.crt.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ConfigMap__v1_redis_openshift-service-ca.crt.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Deployment_apps_v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/EndpointSlice_discovery.k8s.io_v1_redis_redis-r8vds.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Endpoints__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/PersistentVolumeClaim__v1_redis_redis-data.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ReplicaSet_apps_v1_redis_redis-6b9f4c765d.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_builder-dockercfg-lgfpb.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_default-dockercfg-jpgs2.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_deployer-dockercfg-vf8ll.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_builder.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_default.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_deployer.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/output.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Deployment_apps_v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Secret__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/tests/tier0/mta_801_stateful_migration_test.go

Comment thread e2e-tests/tests/tier0/mta_801_stateful_migration_test.go Outdated
Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
@msajidmansoori12 msajidmansoori12 changed the title 🐛 Fix mta-801 golden manifest diff mismatch for ocp :bugfix: Fix mta-801 golden manifest diff mismatch for ocp Jul 29, 2026
@msajidmansoori12 msajidmansoori12 changed the title :bugfix: Fix mta-801 golden manifest diff mismatch for ocp 🐛 Fix mta-801 golden manifest diff mismatch for ocp Jul 29, 2026
…dressing coderabbit comments

Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
@msajidmansoori12

Copy link
Copy Markdown
Contributor Author

Tested on ocp clusters passed.

@msajidmansoori12

Copy link
Copy Markdown
Contributor Author

/rfr

@istein1

istein1 commented Jul 30, 2026

Copy link
Copy Markdown
Member

The test logic changes (platform detection, normalization, OCP golden dir) are well-structured.
The main concern is the golden manifest content: real certificates and cluster-specific data that will
cause this test to break again on a different OCP cluster, recreating the exact problem this PR is trying to solve.
Issues

  1. Real certificates committed to the repo (High)

The OCP golden manifests include 7 real CA certificates from what appears to be a live OCP cluster
(kube-apiserver-lb-signer, kube-apiserver-localhost-signer, etc.) in
ConfigMap__v1_redis_kube-root-ca.crt.yaml and ConfigMap__v1_redis_openshift-service-ca.crt.yaml.

These are CA public certificates (not private keys), so they're not secret material — but they are
cluster-identifying. They tie test fixtures to a specific cluster's PKI, they'll change on every
cluster rotation, and they'll cause this exact diff-mismatch test failure to recur on a different
OCP cluster. The normalizeUnstableFields function should strip or stub CA certificate data from
ConfigMaps of these well-known names, rather than pinning them in golden files.

  1. CompareDirectoryYAMLSemanticsExportAllowOptionalOCPOutputDefaults used for the output comparison
    — wrong function? (Medium)

In the test:
compareOutput := utils.CompareDirectoryYAMLSemantics
if isOpenShift {
compareOutput = utils.CompareDirectoryYAMLSemanticsExportAllowOptionalOCPOutputDefaults
}

The output stage is using the Export-flavored comparison function
(...ExportAllowOptionalOCPOutputDefaults). The non-OCP path uses CompareDirectoryYAMLSemantics (the
output-stage comparator). The export function builds a normalized-export index and tolerates
optional identities — that's export-specific logic. Is this intentional, or should there be a
separate CompareDirectoryYAMLSemanticsAllowOptionalOCPOutputDefaults for the output stage? This
could silently mask real output-stage regressions on OCP by applying export-stage leniency where it
shouldn't.

  1. Golden manifests contain cluster-specific ephemeral data (Medium)

Beyond certificates, the golden files contain:

  • EndpointSlice with specific endpoint IPs (10.131.0.45) and node names
    (ip-10-0-25-205.us-east-2.compute.internal)
  • ReplicaSet with a specific pod-template-hash (redis-6b9f4c765d)
  • PersistentVolumeClaim with cluster-specific storage class (gp3-csi) and volume name
    (pvc-c70c3...)
  • ServiceAccount secrets with cluster-generated suffixes (builder-dockercfg-lgfpb)

These are all handled by normalizeUnstableFields stripping them at comparison time — which is
correct. But it means ~50% of the content in the golden files is noise that gets normalized away.
The golden files would be cleaner (and more maintainable) if they were pre-normalized before
committing, rather than relying on runtime stripping to make them match.

  1. Whitespace fix bundled in (Low — but good)

The RemapNamespaceInYAML function was re-indented from spaces to tabs. This is correct Go
formatting and should have been a separate commit, but it's harmless.

  1. PVC/Service normalization: early returns prevent downstream kind checks (Low)

if kind == "PersistentVolumeClaim" {
// ...strip annotations...
return normalized // ← returns here
}

if kind == "Service" {
// ...strip ipFamilies...
return normalized // ← returns here
}

Each new if block returns early. This is consistent with the existing pattern (every kind block
returns), so it's fine. But it means if a PVC or Service had an EndpointSlice-like field that a
later block would catch, it would be missed. Not a real concern today, but worth noting that the
function is a chain of mutually-exclusive kind handlers, not a pipeline.

Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
@msajidmansoori12

Copy link
Copy Markdown
Contributor Author

The test logic changes (platform detection, normalization, OCP golden dir) are well-structured. The main concern is the golden manifest content: real certificates and cluster-specific data that will cause this test to break again on a different OCP cluster, recreating the exact problem this PR is trying to solve. Issues

1. Real certificates committed to the repo (High)

The OCP golden manifests include 7 real CA certificates from what appears to be a live OCP cluster (kube-apiserver-lb-signer, kube-apiserver-localhost-signer, etc.) in ConfigMap__v1_redis_kube-root-ca.crt.yaml and ConfigMap__v1_redis_openshift-service-ca.crt.yaml.

These are CA public certificates (not private keys), so they're not secret material — but they are cluster-identifying. They tie test fixtures to a specific cluster's PKI, they'll change on every cluster rotation, and they'll cause this exact diff-mismatch test failure to recur on a different OCP cluster. The normalizeUnstableFields function should strip or stub CA certificate data from ConfigMaps of these well-known names, rather than pinning them in golden files.

2. CompareDirectoryYAMLSemanticsExportAllowOptionalOCPOutputDefaults used for the output comparison
   — wrong function? (Medium)

In the test: compareOutput := utils.CompareDirectoryYAMLSemantics if isOpenShift { compareOutput = utils.CompareDirectoryYAMLSemanticsExportAllowOptionalOCPOutputDefaults }

The output stage is using the Export-flavored comparison function (...ExportAllowOptionalOCPOutputDefaults). The non-OCP path uses CompareDirectoryYAMLSemantics (the output-stage comparator). The export function builds a normalized-export index and tolerates optional identities — that's export-specific logic. Is this intentional, or should there be a separate CompareDirectoryYAMLSemanticsAllowOptionalOCPOutputDefaults for the output stage? This could silently mask real output-stage regressions on OCP by applying export-stage leniency where it shouldn't.

3. Golden manifests contain cluster-specific ephemeral data (Medium)

Beyond certificates, the golden files contain:

* EndpointSlice with specific endpoint IPs (10.131.0.45) and node names
  (ip-10-0-25-205.us-east-2.compute.internal)

* ReplicaSet with a specific pod-template-hash (redis-6b9f4c765d)

* PersistentVolumeClaim with cluster-specific storage class (gp3-csi) and volume name
  (pvc-c70c3...)

* ServiceAccount secrets with cluster-generated suffixes (builder-dockercfg-lgfpb)

These are all handled by normalizeUnstableFields stripping them at comparison time — which is correct. But it means ~50% of the content in the golden files is noise that gets normalized away. The golden files would be cleaner (and more maintainable) if they were pre-normalized before committing, rather than relying on runtime stripping to make them match.

4. Whitespace fix bundled in (Low — but good)

The RemapNamespaceInYAML function was re-indented from spaces to tabs. This is correct Go formatting and should have been a separate commit, but it's harmless.

5. PVC/Service normalization: early returns prevent downstream kind checks (Low)

if kind == "PersistentVolumeClaim" { // ...strip annotations... return normalized // ← returns here }

if kind == "Service" { // ...strip ipFamilies... return normalized // ← returns here }

Each new if block returns early. This is consistent with the existing pattern (every kind block returns), so it's fine. But it means if a PVC or Service had an EndpointSlice-like field that a later block would catch, it would be missed. Not a real concern today, but worth noting that the function is a chain of mutually-exclusive kind handlers, not a pipeline.

@istein1 Thanks for the detailed review.

I addressed the two highest-priority concerns:

  1. The Redis OCP certificate ConfigMaps no longer keep live cluster certificate payloads. They now follow the same redacted pattern used in the existing OCP goldens.
  2. The OCP output comparison in both MTA-801 and MTA-817 now uses the strict CompareDirectoryYAMLSemantics comparator again, so final rendered output is no longer checked with the export-style lenient comparator.

For the remaining points:

  • The cluster-specific noise still present in some OCP export goldens is mostly normalized away during comparison today, so I’m treating that as fixture-cleanup / maintainability work rather than a correctness issue for this PR.
  • The gofmt-only whitespace change is harmless and not functionally related.
  • The early-return note in normalizeUnstableFields() is valid structurally, but it follows the existing pattern in that function and is not causing an actual issue here.

Given that, I’d prefer to keep this PR focused on the correctness fixes above and leave the remaining items as optional follow-up cleanup.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@e2e-tests/utils/utils.go`:
- Around line 773-780: The PersistentVolumeClaim branch in normalizeWithPath
leaves an empty metadata.annotations map after removing ignored annotations.
After the three deletes in the PVC filtering logic, remove the annotations field
when the resulting map is empty, preserving it when other annotations remain.
Add a regression test covering ignored annotations present on only one side of
the comparison.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 13cba94b-ae82-428b-b7b1-0daf834438af

📥 Commits

Reviewing files that changed from the base of the PR and between 1fd864d and 1920356.

📒 Files selected for processing (29)
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ConfigMap__v1_redis_kube-root-ca.crt.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ConfigMap__v1_redis_openshift-service-ca.crt.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Deployment_apps_v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/EndpointSlice_discovery.k8s.io_v1_redis_redis-r8vds.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Endpoints__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/PersistentVolumeClaim__v1_redis_redis-data.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ReplicaSet_apps_v1_redis_redis-6b9f4c765d.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_builder-dockercfg-lgfpb.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_default-dockercfg-jpgs2.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_deployer-dockercfg-vf8ll.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Secret__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_builder.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_default.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_deployer.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/output.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Deployment_apps_v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Secret__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/tests/tier0/mta_801_stateful_migration_test.go
  • e2e-tests/tests/tier0/mta_817_stateless_migration_test.go
  • e2e-tests/utils/utils.go
  • e2e-tests/utils/utils_test.go
🚧 Files skipped from review as they are similar to previous changes (15)
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-builders.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Endpoints__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/PersistentVolumeClaim__v1_redis_redis-data.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/EndpointSlice_discovery.k8s.io_v1_redis_redis-r8vds.yaml
  • e2e-tests/golden-manifests-ocp/redis/output/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:deployers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/Service__v1_redis_redis.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_builder.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_deployer.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_authorization.openshift.io_v1_redis_system:image-pullers.yaml
  • e2e-tests/tests/tier0/mta_801_stateful_migration_test.go
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/ServiceAccount__v1_redis_default.yaml
  • e2e-tests/golden-manifests-ocp/redis/export/resources/redis/RoleBinding_rbac.authorization.k8s.io_v1_redis_system:image-builders.yaml

Comment thread e2e-tests/utils/utils.go
Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
Signed-off-by: M Sajid Mansoori <mmansoor@redhat.com>
@msajidmansoori12
msajidmansoori12 merged commit f2e8a87 into migtools:main Aug 3, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[tier0] MTA-801: Stateful app migration golden-file diff mismatch (redis)

2 participants