feat(Storage): add support for Bucket IP filter configuration#9
feat(Storage): add support for Bucket IP filter configuration#9salilg-eng wants to merge 10 commits into
Conversation
4b71613 to
87180a4
Compare
f4470e0 to
ae44c36
Compare
|
@salilg-eng have you tested all test cases passing in your local env? |
c72cae1 to
6d0f403
Compare
|
@thiyaguk09 I've addressed all of your feedback and thoroughly re-tested everything. It's all working perfectly now! |
|
@salilg-eng please add testDisableBucketIpFilter & testDeleteBucketIpFilter this system test |
|
@thiyaguk09 I added |
a0604ba to
976d286
Compare
976d286 to
8affcd4
Compare
8affcd4 to
7576e88
Compare
7576e88 to
bdf53da
Compare
thiyaguk09
left a comment
There was a problem hiding this comment.
LGTM.
*Please avoid force-pushing, as it makes code reviews and tracking changes difficult.
|
/gemini-review |
|
/Gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces support for configuring IP filters (ipFilter) on Google Cloud Storage buckets, updating the service definition, documenting the new parameters, and adding extensive unit and system tests. The feedback highlights a test group annotation mismatch in ManageBucketsTest.php that could cause dependent tests to be skipped, and suggests using standard fully-qualified path notation in the docblocks of Bucket.php and StorageClient.php for better IDE autocomplete and documentation generation.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
bdf53da to
66d12d7
Compare
…h deprecation and DETECT_INTENT_RESPONSE_VIEW_BASIC (googleapis#9278) * docs: clarified OUTPUT_AUDIO_ENCODING_MP3 bit rate with deprecation and DETECT_INTENT_RESPONSE_VIEW_BASIC PiperOrigin-RevId: 934362384 Source-Link: googleapis/googleapis@a105b43 Source-Link: https://github.com/googleapis/googleapis-gen/commit/6593d67ea3fd51f58d4518468bbb3e9bd9681a16 Copy-Tag: eyJwIjoiRGlhbG9nZmxvd0N4Ly5Pd2xCb3QueWFtbCIsImgiOiI2NTkzZDY3ZWEzZmQ1MWY1OGQ0NTE4NDY4YmJiM2U5YmQ5NjgxYTE2In0= * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
…o allow deleting a Collection together with its Indexes and DataObjects (googleapis#9290) * feat: Added `force` field to DeleteCollectionRequest to allow deleting a Collection together with its Indexes and DataObjects feat: Added `FieldFilter` message and `field_filter` field to ExportDataObjects to restrict which top-level Data Object fields are emitted feat: Relaxed `search_text` and `data_field_names` on data object search from REQUIRED to OPTIONAL (required only for the default text search mode) docs: Updated documentation for listing locations PiperOrigin-RevId: 936147070 Source-Link: googleapis/googleapis@0b5d8e6 Source-Link: https://github.com/googleapis/googleapis-gen/commit/d3e03d82a6a9db8c6036e728d75f90e10a16ba52 Copy-Tag: eyJwIjoiVmVjdG9yU2VhcmNoLy5Pd2xCb3QueWFtbCIsImgiOiJkM2UwM2Q4MmE2YTlkYjhjNjAzNmU3MjhkNzVmOTBlMTBhMTZiYTUyIn0= * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Brent Shaffer <betterbrent@google.com>
* feat: add DMS Private Connection PiperOrigin-RevId: 936483837 Source-Link: googleapis/googleapis@ea8c396 Source-Link: https://github.com/googleapis/googleapis-gen/commit/238accc080b4d5af8b78f0d79c8128d2dcc9d275 Copy-Tag: eyJwIjoiTmV0d29ya01hbmFnZW1lbnQvLk93bEJvdC55YW1sIiwiaCI6IjIzOGFjY2MwODBiNGQ1YWY4Yjc4ZjBkNzljODEyOGQyZGNjOWQyNzUifQ== * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
…y_profile_group.proto (googleapis#9296) * docs: escape data_path_id comment braces in security_profile_group.proto PiperOrigin-RevId: 936756712 Source-Link: googleapis/googleapis@77875a7 Source-Link: https://github.com/googleapis/googleapis-gen/commit/b831ee17bbbbc5a61ca866c7dea164e59e814e70 Copy-Tag: eyJwIjoiTmV0d29ya1NlY3VyaXR5Ly5Pd2xCb3QueWFtbCIsImgiOiJiODMxZWUxN2JiYmJjNWE2MWNhODY2YzdkZWExNjRlNTllODE0ZTcwIn0= * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
…bench docker tag to v0.63.0 (googleapis#9291)
725c37c to
5bfba7f
Compare
…tAudioConfig.enable_voice_activity_events (googleapis#9302) * feat: speech activity event is configurable through InputAudioConfig.enable_voice_activity_events feat: StreamingRecognitionResult now has new MessageType: DTMF_DIGITS, PARTIAL_DTMF_DIGITS, SPEECH_ACTIVITY_BEGIN, SPEECH_ACTIVITY_END feat: ces_debug_info is available in SearchKnowledgeDebugInfo PiperOrigin-RevId: 938734624 Source-Link: googleapis/googleapis@8a2919c Source-Link: https://github.com/googleapis/googleapis-gen/commit/06d243931e549653b5ee2f7bdf99f390a9361abb Copy-Tag: eyJwIjoiRGlhbG9nZmxvdy8uT3dsQm90LnlhbWwiLCJoIjoiMDZkMjQzOTMxZTU0OTY1M2I1ZWUyZjdiZGY5OWYzOTBhOTM2MWFiYiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
This PR adds support for Bucket IP Filters to the PHP Cloud Storage client library. This lets developers restrict bucket access to specific IP addresses or VPC networks, which is a big win for security.
Changes :
Schema: Updated
storage-v1.jsonwith theipFilterdefinition (covering mode, public/VPC sources, and service agent access) so the REST client handles serialization correctly.Documentation: Added the
$ipFilterarray structure to the docblocks forStorageClient::createBucket()andBucket::update().System Tests: Added comprehensive E2E verification in
ManageBucketsTest.phpunder the@group bucket-ipfiltertag. This covers CRUD operations, invalid CIDR handling, and safely confirms403 Forbiddendenials for unauthorized access.Unit Tests: Added extensive unit test coverage in
StorageClientTest.phpandBucketTest.phpto ensure the new configuration passes perfectly through the client down to the underlying connections.