chef / chef/mixlib-install

Omnitruck Windows install.ps1 script breaks when no_proxy contains *.domain

Open
#330 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Status: Untriaged Type: Bug
Dominant language
Ruby
Stars
13
Forks
55
Avg merge
2d 15h
Merged PRs (30d)
8

Description

Version:

Omnitruck

Environment:

Windows

Scenario:

Running the omnitruck script fails if the $env:no_proxy environment variable contains wildcard domain entries like *.chef.io.

Steps to Reproduce:

The cause is the Get-WebContentOnFullNet helper function. It doesn't sanitise the setting of $proxy.BypassList which must be an array of regular expressions.

$proxy = New-Object -TypeName System.Net.WebProxy

$proxy.BypassList = @( "*.chef.io" ) # will fail

$proxy.BypassList = @( "\*.chef.io" ) # will work

$proxy.BypassList = @( " *.chef.io" ) # also works

Expected Result:

Chef is installed

Actual Result:

Exception thrown - Exception setting "BypassList": "parsing "*.chef.io" - Quantifier {x,y} following nothing."

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Get-WebContentOnFullNet helper in the omnitruck install.ps1 script and reproduce the failure with a no_proxy value containing *.chef.io. Check the WebProxy BypassList handling and verify that the script completes and installs Chef without the parsing exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.