Skip to content

Add WebDAV support to storage-cli client and improve test quality#4974

Open
kathap wants to merge 1 commit intomainfrom
storage-cli-webdav-support
Open

Add WebDAV support to storage-cli client and improve test quality#4974
kathap wants to merge 1 commit intomainfrom
storage-cli-webdav-support

Conversation

@kathap
Copy link
Contributor

@kathap kathap commented Mar 26, 2026

Enable WebDAV/DAV provider support in StorageCliClient by adding 'dav' to STORAGE_CLI_TYPES and mapping legacy 'webdav' provider name to 'dav'.
Needs cloudfoundry/capi-release#634 to be merged first.

Test improvements:

  • Add comprehensive tests for all legacy provider mappings (AzureRM, AWS, Google, aliyun, webdav)
  • Add test for native 'dav' storage-cli type
  • Use begin/ensure blocks to prevent tempfile leaks on test failures
  • Add helper methods (write_config_file, stub_config_for_droplets) to reduce repetition
  • Stub additional_flags in #run_cli tests for stability
  • Fix test descriptions for accuracy

Thanks for contributing to cloud_controller_ng. To speed up the process of reviewing your pull request please provide us with:

  • A short explanation of the proposed change:
    Add 'dav' to the list of supported storage-cli types and map the legacy 'webdav' provider name to 'dav', enabling CCNG to use storage-cli with WebDAV blobstores.

  • An explanation of the use cases your change solves
    Enable WebDAV blobstore support:
    Allows Cloud Controller to use storage-cli with WebDAV blobstores (previously only Azure, AWS, Google, and Aliyun were supported). This completes the set of supported providers for CAPI's
    storage-cli adoption.

    Support legacy fog configurations:
    Enables operators to migrate existing CAPI deployments that use fog with 'webdav' provider to storage-cli without changing their manifest configuration. The legacy 'webdav' provider name is
    automatically mapped to the native 'dav' storage-cli type.

    Unblock CAPI migration from fog:
    Removes the last blocker for migrating CAPI blobstore operations from the fog gem to storage-cli

  • Links to any other associated PRs
    Refactor DAV client, add missing operations storage-cli#70
    Enhance storage-cli webdav config capi-release#634

  • I have reviewed the contributing guide

  • I have viewed, signed, and submitted the Contributor License Agreement

  • I have made this pull request to the main branch

  • I have run all the unit tests using bundle exec rake

  • I have run CF Acceptance Tests

 Enable WebDAV/DAV provider support in StorageCliClient by adding 'dav'
  to STORAGE_CLI_TYPES and mapping legacy 'webdav' provider name to 'dav'.

  Test improvements:
  - Add comprehensive tests for all legacy provider mappings (AzureRM,
    AWS, Google, aliyun, webdav)
  - Add test for native 'dav' storage-cli type
  - Use begin/ensure blocks to prevent tempfile leaks on test failures
  - Add helper methods (write_config_file, stub_config_for_droplets) to
    reduce repetition
  - Stub additional_flags in #run_cli tests for stability
  - Fix test descriptions for accuracy
@kathap kathap marked this pull request as draft March 26, 2026 17:03
@kathap kathap marked this pull request as ready for review March 27, 2026 11:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant