Bug 1782265 - Creating a migplan with a dot in the name causes reconcile failure
Summary: Creating a migplan with a dot in the name causes reconcile failure
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Migration Tooling
Version: 4.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: 4.2.z
Assignee: Scott Seago
QA Contact: Xin jiang
URL:
Whiteboard:
Depends On: 1768667
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-12-11 14:03 UTC by John Matthews
Modified: 2019-12-19 15:44 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of: 1768667
Environment:
Last Closed: 2019-12-19 15:44:27 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2019:4304 0 None None None 2019-12-19 15:44:33 UTC

Description John Matthews 2019-12-11 14:03:41 UTC
+++ This bug was initially created as a clone of Bug #1768667 +++

Description of problem:
Creating a migplan with a dot in the name (or anything other than lowercase alphanumeric characters plus "-") results in a reconcile error

Version-Release number of selected component (if applicable):
CAM 1.0

How reproducible:
Always

Steps to Reproduce:
1. Create a migplan with a dot in the name (i.e. "migplan-1.1")
2. Wait for reconcile.
3. Look at migplan yaml output

Actual results:
Reconcile error is displayed:
    message: 'Reconcile failed: [DeploymentConfig.apps.openshift.io "registry-registry-example-plan-4.2-khf6n"
      is invalid: [spec.template.spec.volumes[0].name: Invalid value: "registry-registry-example-plan-4.2-khf6n-volume-1":
      a DNS-1123 label must consist of lower case alphanumeric characters or ''-'',
      and must start and end with an alphanumeric character (e.g. ''my-name'',  or
      ''123-abc'', regex used for validation is ''[a-z0-9]([-a-z0-9]*[a-z0-9])?''),
      spec.template.spec.containers[0].name: Invalid value: "registry-registry-example-plan-4.2-khf6n":
      a DNS-1123 label must consist of lower case alphanumeric characters or ''-'',
      and must start and end with an alphanumeric character (e.g. ''my-name'',  or
      ''123-abc'', regex used for validation is ''[a-z0-9]([-a-z0-9]*[a-z0-9])?''),
      spec.template.spec.containers[0].volumeMounts[0].name: Not found: "registry-registry-example-plan-4.2-khf6n-volume-1"]].
      See controller logs for details.'


Expected results:
Plan is ready.

Additional info:

--- Additional comment from Scott Seago on 2019-11-04 22:27:00 UTC ---

The error comes from using the plan name to build a name for a mount point in the container, which has stricter rules for labels than the migplan name itself. Since this mount point is an EmptyDir volume source that's not shared outside the container, the solution is probably just to remove the migplan name from the mount and just call it "volume-1". We'll need to verify that this doesn't break anything, though, and make sure there aren't other errors related to other places where the migplan name is used.

--- Additional comment from Scott Seago on 2019-11-06 14:17:11 UTC ---

Fix is here: https://github.com/fusor/mig-controller/pull/362

Comment 1 Sergio 2019-12-17 10:55:40 UTC
Verified in version 1.0.1 using osbs images.

Created a migplan with name "snapshots.with.dots" and the migration plan was created properly. The error didn't happen.

Comment 3 errata-xmlrpc 2019-12-19 15:44:27 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2019:4304


Note You need to log in before you can comment on or make changes to this bug.