Snowflake-Labs / terraform-provider-snowflake

Terraform provider for managing Snowflake accounts
https://registry.terraform.io/providers/Snowflake-Labs/snowflake/latest
MIT License
549 stars 420 forks source link

Add support for compute pools, image repositories, and services #2478

Open awilliamsOM1 opened 9 months ago

awilliamsOM1 commented 9 months ago

Terraform CLI and Provider Versions

Current version of terraform CLI and snowflake versions

Use Cases or Problem Statement

Snowflake has introduced compute pools as part of their public beta for Snowpark Container Services. https://docs.snowflake.com/en/sql-reference/commands-snowpark-container-services. The terraform provider should be extended to support compute pool resource types. Image repositories and services should be supported too.

Proposal

The terraform provider should be extended to support compute pool resource types.

How much impact is this issue causing?

Medium

Additional Information

Snowpark Container Services is still in public beta preview in Snowflake. It would be nice to get the Terraform provider updated to support compute pools ahead of the public release. But there is risk that the api will change before public release.

sfc-gh-asawicki commented 9 months ago

Hey @awilliamsOM1. Thanks for creating the issue.

We are currently focusing on stabilizing the provider on its road to V1 release. For that reason we are focusing on the GA features only. We can revisit this topic after V1. You can check our roadmap here: https://github.com/Snowflake-Labs/terraform-provider-snowflake/blob/main/ROADMAP.md#our-roadmap.

awilliamsOM1 commented 9 months ago

Focusing on GA features makes sense. I opened this issue as a way to track that the feature will be needed in the future. Feel free to move the issue into whatever state makes the most sense.

There are also two other resources that are related, image repositories and services. Should I open issues for each of those beta resource types? If you are just going to close the issue I won't create more issues to close.

sfc-gh-asawicki commented 9 months ago

I will keep the issue, I added both of them to the issue's description and name.

awilliamsOM1 commented 9 months ago

Great! Thank you.

awilliamsOM1 commented 9 months ago

A related feature will also be supporting the BIND SERVICE ENDPOINT privilege in the snowflake_account_grant resource.

awilliamsOM1 commented 8 months ago

A related feature will also be supporting the BIND SERVICE ENDPOINT privilege in the snowflake_account_grant resource.

Nevermind on needing new privileges. snowflake_account_grant is deprecated. The new resource snowflake_grant_privileges_to_account_role already supports the BIND SERVICE ENDPOINT and other grants needed for SPCS support.

This ticket is still needed for the COMPUTE POOL, SERVICE, and IMAGE REPOSITORY resources.

awilliamsOM1 commented 4 months ago

I know this feature is on the road map, but in the future because it is a public preview feature. Based on the roadmap I would not expect to get this feature until after v1.0. Would I be able to work on a PR to introduce just the compute pool resource type? Would the PR be accepted or would it be rejected based on the roadmap and features not getting added till after v1.0?

sfc-gh-asawicki commented 4 months ago

We are open to contributions. Please follow the https://github.com/Snowflake-Labs/terraform-provider-snowflake/blob/main/CONTRIBUTING.md. Just be aware that because of the V1 scope priorities, the reviews for features outside of the scope may be processed a bit longer than usual. Thanks for understanding this.

tblake84 commented 1 month ago

Any update on this now that SPCS is in GA?

sfc-gh-asawicki commented 1 month ago

Hey @tblake84. We are still focusing on getting to V1 with the essential objects listed in https://github.com/Snowflake-Labs/terraform-provider-snowflake/blob/main/v1-preparations/ESSENTIAL_GA_OBJECTS.MD.