Hello can anyone help me I'm trying to run the sta...
# pact-ruby
h
Hello can anyone help me I'm trying to run the standalone pact cli via docker like so in gitlab
Copy code
docker run --net=host ###.<http://dkr.ecr.eu-west-1.amazonaws.com/base-images/pactfoundation/pact-cli:latest|dkr.ecr.eu-west-1.amazonaws.com/base-images/pactfoundation/pact-cli:latest> verify $PACT_URL -e PACT_BROKER_BASE_URL=<https://pact.dev>.###.####.###/ --provider-base-url=<http://localhost:8000>
but I keep getting this error when it runs in CI
Copy code
Error reading file from <https://pact.dev>.###.####.###/pacts/provider/battery-api/consumer/fleet/version/"b47b9a1-develop+b47b9a1.SNAPSHOT.runner-5ybevqbc-project-456-concurrent-2"
bad URI(is not URI?): "<https://pact.dev>.###.####.###/pacts/provider/battery-api/consumer/fleet/version/\"b47b9a1-develop+b47b9a1.SNAPSHOT.runner-5ybevqbc-project-456-concurrent-2\"" /usr/lib/ruby/3.1.0/uri/rfc3986_parser.rb:67:in `split'
/usr/lib/ruby/3.1.0/uri/rfc3986_parser.rb:72:in `parse'
/usr/lib/ruby/3.1.0/uri/common.rb:188:in `parse'
Really at a loss how to get it to work without the encoding being wrong
I suspect it's something to do with the double quote marks, this is a valid pact url if the quotes are not escaped
I think the chain of events is 1. the url is encoded correctly, I send it to Gitlab CI as a variable, the url encoding is changed to real double quote marks (by Gitlab?) 2. bash or some other process escapes the double quote marks 3. pact cli cant find the pact Has anyone had this use case?
also later in the the same log session it has a slightly more mangled version of the url
Copy code
bundler: failed to load command: /pact/bin/pact (/pact/bin/pact)
/usr/lib/ruby/3.1.0/uri/rfc3986_parser.rb:67:in `split': bad URI(is not URI?): "https://###/pacts/provider/battery-api/consumer/fleet/version/\\"b47b9a1-develop+b47b9a1.SNAPSHOT.runner-5ybevqbc-project-456-concurrent-2\\"" (URI::InvalidURIError)