k6runner: apply empty IP denylist even if it is empty #731
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Before this PR,
withOpts
checked if the IP denylist atopts.BlacklistedIP
was empty, and if it was, it didn't override the default value (10.0.0.0/8
). Unfortunately, this effectively prevented from clearning that default, as specifying--blocked-nets=""
would causeopts.BlacklistedIP
to become the empty string, which will not be applied over the default.To prevent having two defaults (cli flag and in-constructor), with the constructor one being always ignored, this PR gets rid of the constructor default.
The changes here should not cause any functional change, as
blocked-nets
defaults to10.0.0.0/8
either way in the CLI code:synthetic-monitoring-agent/cmd/synthetic-monitoring-agent/main.go
Line 80 in 7123e22
Additionally, this PR fixes a bug that made this change ineffective when
WithLogger
was called on the local runner, as doing so would not copy the IP denylist.Finally, having a mixture of pointer and non-pointer returns for LocalRunner was making testing hard. This PR also uniforms to non-pointer runners everywhere.
Related to: #730