Uploaded image for project: 'R10K'
  1. R10K
  2. RK-29

r10k should exit non-zero when it encounters a control repo branch name with non-ASCII characters

    Details

    • Type: Bug
    • Status: Ready for Engineering
    • Priority: Normal
    • Resolution: Unresolved
    • Affects Version/s: r10k 1.4.1
    • Fix Version/s: None
    • Component/s: None
    • Labels:
    • Environment:

      Master/Agent: CentOS6.5
      r10k Version: 1.4.1

    • Template:
    • Acceptance Criteria:
      Hide
      • r10k should exit with a useful error message if it encounters a control-repo branch name that contains non-ASCII characters.
      • The behavior when encountering disallowed ASCII characters should continue to be governed by the invalid_branches configuration setting.
      Show
      r10k should exit with a useful error message if it encounters a control-repo branch name that contains non-ASCII characters. The behavior when encountering disallowed ASCII characters should continue to be governed by the invalid_branches configuration setting.

      Description

      Description

      If a user attempts to deploy from a Git source that contains branches with Unicode characters r10k will convert the Unicode characters to "" characters. If the whole branch name is non-ASCII then the resulting environment name will be all underscore characters. (i.e. "______")

      Attachments

      • None

      Repro Steps

      1. Install PE monolithic master.
      2. Verify master is operational.
      3. Install and configure local Git repository.
      4. Install the r10k gem.
      5. Configure r10k with a single Git source with a branch that is non-ASCII Unicode.
      6. Attempt to deploy environments with r10k:

        r10k deploy environment -v -t

      Expect

      The r10k deployment should fail with a reasonable error message explaining that only ASCII alphanumeric characters are allowed.

      Actual

      The Unicode characters in the branch are converted to "" characters and the environment is successfully deployed. If the whole branch name is non-ASCII Unicode then the environment name will be comprised of all "" characters. The impact to the user is that if there are multiple non-ASCII Unicode branches there is a high likelihood of name collision or confusion for the end user.

       r10k deploy environment -v -t
      [R10K::Source::Git - WARN] Environment "굢챣샃뻧븣럩윕컾뾐깩" contained non-word characters, correcting name to __________
      [R10K::Action::Deploy::Environment - INFO] Deploying environment /etc/puppetlabs/puppet/environments/production
      [R10K::Action::Deploy::Environment - INFO] Deploying environment /etc/puppetlabs/puppet/environments/__________

        Attachments

          Issue Links

            Activity

              jsd-sla-details-panel

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  ryan.gard Ryan Gard
                  QA Contact:
                  Zach Reichert
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  8 Start watching this issue

                  Dates

                  • Created:
                    Updated: