Over the last 24 (maybe 48) hours, I’ve noticed so...
# pactflow
a
Over the last 24 (maybe 48) hours, I’ve noticed some Pactflow operations failing (🧵 ’ing an error in verifying a pact). It often looks like network errors on
<http://pactflow.io|pactflow.io>
, but I can’t say if that’s all of them. I often re-run the CI stage and it goes through. If we need to just have a retry on the CI stages, that’s something we can do, but is there anything else I might have missed here?
Copy code
25 interactions, 0 failures
INFO: Creating [redacted] version [redacted] with branch "[redacted]"
INFO: Verification results published to https://[redacted].<http://pactflow.io/pacts/provider/[redacted]/consumer/[redacted]/pact-version/[redacted]/verification-results/[redacted]|pactflow.io/pacts/provider/[redacted]/consumer/[redacted]/pact-version/[redacted]/verification-results/[redacted]>
SPEC_OPTS='' /usr/local/bin/ruby -S pact verify --pact-helper ./spec/service_consumers/[redacted]/async/pact_helper.rb
I, [2024-05-02T17:41:10.141633 #140]  INFO -- ddtrace: [ddtrace] DATADOG CONFIGURATION - PROFILING - {"profiling_enabled":false}
I, [2024-05-02T17:41:10.149124 #140]  INFO -- ddtrace: [ddtrace] DATADOG CONFIGURATION - CORE - {"date":"2024-05-02T17:41:10+00:00","os_name":"x86_64-pc-linux","version":"1.20.0","lang":"ruby","lang_version":"3.3.1","env":null,"service":"pact","dd_version":null,"debug":false,"tags":null,"runtime_metrics_enabled":false,"vm":"ruby-3.3.1","health_metrics_enabled":false}
/builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/hal/entity.rb:106:in `assert_success!': Error retrieving https://[redacted].<http://pactflow.io|pactflow.io> status=404 Not Found. The requested document was not found on this server. (Pact::Hal::ErrorResponseReturned)
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/pact_broker/fetch_pact_uris_for_verification.rb:57:in `index'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/pact_broker/fetch_pact_uris_for_verification.rb:42:in `call'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/provider/world.rb:46:in `collect'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/provider/world.rb:46:in `pact_uris_from_pact_uri_sources'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/provider/world.rb:32:in `pact_urls'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/cli/run_pact_verification.rb:74:in `run_with_configured_pacts_from_pact_helper'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/cli/run_pact_verification.rb:53:in `run_specs'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/cli/run_pact_verification.rb:21:in `call'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/cli/run_pact_verification.rb:13:in `call'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/lib/pact/cli.rb:32:in `verify'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/thor-1.3.0/lib/thor/command.rb:28:in `run'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/thor-1.3.0/lib/thor/invocation.rb:127:in `invoke_command'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/thor-1.3.0/lib/thor.rb:527:in `dispatch'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/thor-1.3.0/lib/thor/base.rb:584:in `start'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/gems/pact-1.64.0/bin/pact:4:in `<top (required)>'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/bin/pact:25:in `load'
	from /builds/[redacted]/[redacted]/vendor/bundle/ruby/3.3.0/bin/pact:25:in `<main>'
This one is a
pact-verify
, but I’ve seen
publish
tasks fail, and even a
record-deployment
r
There was an incorrect network configuration applied on the Pactflow side. This is fixed now.
a
Awesome, thanks so much
r
Sorry, I have been informed that that issue may not be what is effecting you
m
Any chance you could please enable debug/verbose logging? I’m unsure which bit is
404
ing
a
It seems to have stopped today, but if it comes back I’ll turn on more verbose logging. It looks the 404 was just our pactflow instance’s base URL (https://tegus.pactflow.io). It was also intermittent - it happened 29 times in a 2 day period, but succeeded much more often than that. I wonder if we were maybe getting rate limited? Might that be a 404 instead of a 429?
m
That's really strange. Yeah if you could please share any future logs where it errors that'd be great. Too many requests should give a 429 so I suspect it is a different problem
Just checking in - are you still seeing these errors?
a
Thanks for the follow up. I didn't notice any today, but I'll do a more thorough sweep of errors tomorrow
thankyou 1
m
no probs
a
Confirmed - no pact jobs have failed in CI because of a 404 since Friday. Seems like the storm might have passed
thankyou 1
m
Thanks for letting us know.