refactor: remove SkipProvisionerCheck and improve test provisioner handling #19117
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.
Summary
This PR addresses the requirements to:
provisionerCloser.Close()
inTestExecutorAutostartSkipsWhenNoProvisionersAvailable
and verify test behaviorSkipProvisionerCheck
by refactoring tests to properly handle provisioner availabilityChanges Made
🗑️ Removed SkipProvisionerCheck Mechanism
SkipProvisionerCheck
field fromExecutor
structhasAvailableProvisioners
functionSkipProvisionerCheck
option fromcoderdtest.Options
🧪 Enhanced Test Infrastructure
mustWaitForProvisioners()
helper functionmustWaitForProvisionersWithClient()
helper functionmustWaitForProvisionersAvailable()
helper function for workspace-specific provisioner availability🔧 Fixed Main Test
provisionerCloser.Close()
call inTestExecutorAutostartSkipsWhenNoProvisionersAvailable
Test Behavior
Before: Test relied on
SkipProvisionerCheck = true
to bypass provisioner availability logicAfter: Test uses real
hasAvailableProvisioners
logic with proper provisioner setupThe test now correctly:
Testing
Ran
TestExecutorAutostartSkipsWhenNoProvisionersAvailable
successfully with the changes:SkipProvisionerCheck
mechanismFiles Changed
coderd/autobuild/lifecycle_executor.go
- Removed SkipProvisionerCheck mechanismcoderd/autobuild/lifecycle_executor_test.go
- Enhanced test infrastructure and fixed main testcoderd/coderdtest/coderdtest.go
- Removed SkipProvisionerCheck option