Skip to content

feat: initial Google Play provider - #1

Merged
yordis merged 1 commit into
mainfrom
yordis/feat-initial-provider
Oct 5, 2026
Merged

yordis merged 1 commit into
mainfrom
yordis/feat-initial-provider

Conversation

@yordis

@yordis yordis commented Oct 5, 2026 •

Copy link
Copy Markdown
Member
  • Google Play Console configuration changes currently happen by hand with no review trail; a Terraform provider gives those changes code review and reproducibility across apps.
  • Application Default Credentials, including Workload Identity Federation, keep CI from needing a static service account key.
  • A dedicated retry layer is necessary because the generated androidpublisher client makes a single request per call with no retry of its own, and retrying a non-idempotent create after it has already taken effect would be unsafe.
  • Resources are added one at a time as they are needed, so this ships only the provider, authentication, and client wiring.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith with what you need. Autofix is disabled.

Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
@coderabbitai

coderabbitai Bot commented Oct 5, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 184 files, which is 34 over the limit of 150.

To get a review, reduce the PR to 150 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

Check out review usage here.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Free
  • Run ID: 6d207fd4-0c52-4718-b013-40370d63eecd
📥 Commits

Reviewing files that changed from the base of the PR and between 0aa0c99 and 9e0a125.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (184)
  • .agents/skills/terraform-provider-dev/SKILL.md
  • .agents/skills/terraform-provider-dev/references/framework/acctests.mdx
  • .agents/skills/terraform-provider-dev/references/framework/actions/implementation.mdx
  • .agents/skills/terraform-provider-dev/references/framework/actions/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/actions/testing.mdx
  • .agents/skills/terraform-provider-dev/references/framework/data-sources/configure.mdx
  • .agents/skills/terraform-provider-dev/references/framework/data-sources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/data-sources/timeouts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/data-sources/validate-configuration.mdx
  • .agents/skills/terraform-provider-dev/references/framework/debugging.mdx
  • .agents/skills/terraform-provider-dev/references/framework/deprecations.mdx
  • .agents/skills/terraform-provider-dev/references/framework/diagnostics.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/close.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/configure.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/open.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/renew.mdx
  • .agents/skills/terraform-provider-dev/references/framework/ephemeral-resources/validate-configuration.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/concepts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/documentation.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/errors.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/implementation.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/bool.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/dynamic.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/float32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/float64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/int32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/int64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/list.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/map.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/number.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/object.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/set.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/parameters/string.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/bool.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/dynamic.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/float32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/float64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/int32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/int64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/list.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/map.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/number.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/object.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/set.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/returns/string.mdx
  • .agents/skills/terraform-provider-dev/references/framework/functions/testing.mdx
  • .agents/skills/terraform-provider-dev/references/framework/getting-started/code-walkthrough.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/accessing-values.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/bool.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/dynamic.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/float32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/float64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/int32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/int64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/list-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/list.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/map-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/map.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/number.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/object.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/set-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/set.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/single-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/attributes/string.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/blocks/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/blocks/list-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/blocks/set-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/blocks/single-nested.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/dynamic-data.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/path-expressions.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/paths.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/schemas.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/terraform-concepts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/bool.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/custom.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/dynamic.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/float32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/float64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/int32.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/int64.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/list.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/map.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/number.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/object.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/set.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/string.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/types/tuple.mdx
  • .agents/skills/terraform-provider-dev/references/framework/handling-data/writing-state.mdx
  • .agents/skills/terraform-provider-dev/references/framework/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/internals/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/internals/rpcs.mdx
  • .agents/skills/terraform-provider-dev/references/framework/list-resources/configure.mdx
  • .agents/skills/terraform-provider-dev/references/framework/list-resources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/list-resources/list.mdx
  • .agents/skills/terraform-provider-dev/references/framework/list-resources/non-framework-resource.mdx
  • .agents/skills/terraform-provider-dev/references/framework/list-resources/validate-configuration.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/attribute-schema.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/blocks-computed.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/blocks.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/default-values.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/fields.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/force-new.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/types.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/validators-custom.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/attributes-blocks/validators-predefined.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/benefits.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/data-sources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/data-sources/timeouts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/mux.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/providers.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/crud.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/import.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/plan-modification.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/state-upgrade.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/resources/timeouts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/schema.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/testing.mdx
  • .agents/skills/terraform-provider-dev/references/framework/migrating/workflow.mdx
  • .agents/skills/terraform-provider-dev/references/framework/provider-servers.mdx
  • .agents/skills/terraform-provider-dev/references/framework/providers/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/providers/validate-configuration.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/configure.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/create.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/default.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/delete.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/identity-upgrade.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/identity.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/import.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/plan-modification.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/private-state.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/read.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/state-move.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/state-upgrade.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/timeouts.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/update.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/validate-configuration.mdx
  • .agents/skills/terraform-provider-dev/references/framework/resources/write-only-arguments.mdx
  • .agents/skills/terraform-provider-dev/references/framework/state-stores/implementation.mdx
  • .agents/skills/terraform-provider-dev/references/framework/state-stores/index.mdx
  • .agents/skills/terraform-provider-dev/references/framework/validation.mdx
  • .agents/skills/terraform-provider-dev/references/guides/data-source-lifecycle.md
  • .agents/skills/terraform-provider-dev/references/guides/functions.md
  • .agents/skills/terraform-provider-dev/references/guides/plan-modification.md
  • .agents/skills/terraform-provider-dev/references/guides/provider-configuration.md
  • .agents/skills/terraform-provider-dev/references/guides/resource-lifecycle.md
  • .agents/skills/terraform-provider-dev/references/guides/schema-design.md
  • .agents/skills/terraform-provider-dev/references/guides/state-management.md
  • .agents/skills/terraform-provider-dev/references/guides/testing.md
  • .agents/skills/terraform-provider-dev/references/guides/validation.md
  • .gitattributes
  • .github/release-please-config.json
  • .github/release-please-manifest.json
  • .github/workflows/ci.yaml
  • .github/workflows/release.yaml
  • .gitignore
  • .goreleaser.yml
  • AGENTS.md
  • CONTRIBUTING.md
  • LICENSE
  • README.md
  • docs/index.md
  • examples/provider/provider.tf
  • go.mod
  • internal/provider/client.go
  • internal/provider/client_test.go
  • internal/provider/errors.go
  • internal/provider/helpers_test.go
  • internal/provider/live_test.go
  • internal/provider/provider.go
  • internal/provider/provider_test.go
  • internal/provider/retry.go
  • internal/provider/retry_test.go
  • main.go
  • mise.toml
  • terraform-registry-manifest.json

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

TrogonStack is on CodeRabbit Free, which includes PR summaries. Ask your admin to upgrade for code reviews.

  • Ask an admin to upgrade

Open in CodeRabbit

  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@yordis
yordis merged commit ad6dff1 into main Oct 5, 2026
3 of 4 checks passed
@yordis
yordis deleted the yordis/feat-initial-provider branch October 5, 2026 20:39
@sht-bot sht-bot mentioned this pull request Oct 5, 2026
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