Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Use new identifier with arguments in function, external function and procedure grants #3002

Merged
merged 21 commits into from
Aug 20, 2024

Conversation

sfc-gh-jmichalak
Copy link
Collaborator

@sfc-gh-jmichalak sfc-gh-jmichalak commented Aug 16, 2024

  • handle unusual identifiers returned in SHOW GRANTS
  • handle function, external function and procedure identifiers in ownership and privilege grants properly
  • add tests for these objects with and without arguments
  • remove IsValidIdentifier from validations - it doesn't work for ids with arguments

Note: base branch of this PR is identifier-with-arguments-for-procedure-and-external-function and should be merged soon in #2987

TODO:

  • handle granteeName for shares in next PR (instead of using a fallback in convert), parse the ID outside the function when we know SHOW GRANT request details, so we can parse based on that.

Test Plan

  • acceptance tests
  • integration tests
  • unit tests

References

https://docs.snowflake.com/en/sql-reference/sql/grant-privilege and other grant docs

@sfc-gh-jmichalak sfc-gh-jmichalak marked this pull request as ready for review August 16, 2024 13:39
Copy link

Integration tests failure for 8544eefa2beb5188b2499e79c9a124a11b865f11

Copy link

Integration tests failure for 2ff65e8a75926148b469dd5eddd1a7a22b9c25b7

Copy link

Integration tests failure for fddfa48bb17aac2fb95c1a91638b6798170565b9

Copy link

Integration tests failure for d3585f1f119edcc11ac043c12766fdd1ab9ca944

pkg/acceptance/helpers/function_client.go Outdated Show resolved Hide resolved
pkg/resources/grant_ownership_acceptance_test.go Outdated Show resolved Hide resolved
pkg/resources/grant_ownership_acceptance_test.go Outdated Show resolved Hide resolved
pkg/acceptance/helpers/share_client.go Show resolved Hide resolved
pkg/sdk/testint/grants_integration_test.go Outdated Show resolved Hide resolved
Copy link

Integration tests failure for bfe34b402d120f6c8c0a0023d7410e51457ff905

Base automatically changed from identifier-with-arguments-for-procedure-and-external-function to main August 20, 2024 08:49
Copy link

Integration tests failure for c5ad5b28c29a91822ee1d7739d32b7318596bf47

Copy link

Integration tests failure for ad0d189c571f7ede4c7f83cecf4b00c38737b06c

Copy link

Integration tests failure for 9d71f59eaedd12fbe9362829a8d9cd6f3d5a14c1

@sfc-gh-jmichalak sfc-gh-jmichalak merged commit 5053f8b into main Aug 20, 2024
9 of 10 checks passed
@sfc-gh-jmichalak sfc-gh-jmichalak deleted the show-grants-id branch August 20, 2024 11:03
sfc-gh-jcieslak pushed a commit that referenced this pull request Sep 4, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.95.0](v0.94.1...v0.95.0)
(2024-09-04)


### 🎉 **What's new:**

* Add change_tracking, row access policy and aggregation policy to views
([#2988](#2988))
([1f88bb1](1f88bb1))
* Add fully_qualified_name to all resources
([#2990](#2990))
([1b0462f](1b0462f))
* Add identifier parsers
([#2957](#2957))
([824ec52](824ec52))
* Add identifier with arguments
([#2979](#2979))
([00ae1c5](00ae1c5))
* Add timeouts block to cortex
([#3004](#3004))
([34d764b](34d764b))
* Add user parameters to resource
([#2968](#2968))
([f4ae380](f4ae380))
* Conclude user rework
([#3036](#3036))
([23e4625](23e4625))
* database role v1 readiness
([#3014](#3014))
([c4db255](c4db255))
* Identifier with arguments for procedure and external function
([#2987](#2987))
([f13cc5c](f13cc5c))
* Rework user resource
([#3026](#3026))
([bde2638](bde2638)),
closes
[#1572](#1572)
* Rework users datasource
([#3030](#3030))
([751239b](751239b)),
closes
[#2902](#2902)
* Upgrade view sdk
([#2969](#2969))
([ef2d50a](ef2d50a))
* View rework part 2
([#3021](#3021))
([e05377d](e05377d))
* View rework part 3
([#3023](#3023))
([195b41c](195b41c))


### 🔧 **Misc**

* Add annotation about fully_qualified_name and fix handling granteeName
([#3009](#3009))
([94e6345](94e6345))
* Apply identifier conventions
([#2996](#2996))
([5cbea84](5cbea84))
* apply identifier conventions to grants
([#3008](#3008))
([d7780ae](d7780ae))
* Clean collection utils
([#3028](#3028))
([426ddb1](426ddb1))
* Clean old assertions
([#3029](#3029))
([ad657eb](ad657eb))
* Conclude identifiers rework
([#3011](#3011))
([c1b53f3](c1b53f3))
* Improve user test and add manual test for user default database and
role
([#3035](#3035))
([6cb0b4e](6cb0b4e))
* Use new identifier with arguments in function, external function and
procedure grants
([#3002](#3002))
([5053f8b](5053f8b))
* User improvements
([#3034](#3034))
([65b64d7](65b64d7))


### 🐛 **Bug fixes:**

* database tests and introduce a new parameter
([#2981](#2981))
([3bae7f6](3bae7f6))
* Fix custom diffs for fields with diff supression
([#3032](#3032))
([2499602](2499602))
* Fix default secondary roles after BCR 2024_07
([#3040](#3040))
([2ca465a](2ca465a)),
closes
[#3038](#3038)
* Fix issues 2972 and 3007
([#3020](#3020))
([1772387](1772387))
* Fix known user resource issues
([#3013](#3013))
([a5dfeac](a5dfeac))
* identifier issues
([#2998](#2998))
([6fb76b7](6fb76b7))
* minor issues
([#3027](#3027))
([467b06e](467b06e)),
closes
[#3015](#3015)
[#2807](#2807)
[#3025](#3025)
* Nuke users
([#2971](#2971))
([0d90cc9](0d90cc9))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: snowflake-release-please[bot] <105954990+snowflake-release-please[bot]@users.noreply.github.com>
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.

3 participants