picubedllc/terraform-provider-appleads

Terraform plugin for managing Apple Ads

See the code

See what people are saying

SourceMessageScoreDate

Show HN: Apple Ads as Infra as Code

1

Sep 25, 2026

README

Terraform Provider for Apple Ads

Manage Apple Ads configuration as code with Terraform.

This is an open-source project from Pi Cubed. It provides a Terraform Plugin Framework provider for Apple Ads campaigns, ad groups, and keywords — with safety guardrails that protect historical campaign identity.

Status: early development, not yet published to the Terraform Registry.

Requirements

  • Terraform >= 1.0
  • Go >= 1.24 (for building from source)

Building the Provider

git clone https://github.com/picubedllc/terraform-provider-appleads
cd terraform-provider-appleads
make install

Developing

make build    # compile
make test     # unit tests (no Apple credentials)
make testlive # read-only live Apple Ads tests (APPLEADS_* env vars)
make lint     # golangci-lint
make fmt      # gofmt
make generate # regenerate docs (tfplugindocs)

Pull request CI runs unit tests, vet, lint, and docs generation only. It never receives Apple Ads credentials.

Live integration tests run from the Apple Ads Live Integration Tests workflow (workflow_dispatch or weekly). Credentials are GitHub Environment secrets on appleads-integration, not repository secrets, and that workflow is not triggered by pull requests.

See CONTRIBUTING.md for architecture, how to add resources, and test conventions. Provider releases are signed GitHub Releases from a vMAJOR.MINOR.PATCH tag; see docs/RELEASING.md.

Local live tests (make testlive) require:

APPLEADS_ORG_ID
APPLEADS_CLIENT_ID
APPLEADS_TEAM_ID
APPLEADS_KEY_ID
APPLEADS_PRIVATE_KEY
apple-ads
terraform

Contributors

irdz

192 commits

cursoragent

36 commits

picubedllc/terraform-provider-appleads

Terraform plugin for managing Apple Ads

See the code

See what people are saying

SourceMessageScoreDate

Show HN: Apple Ads as Infra as Code

1

Sep 25, 2026

README

Terraform Provider for Apple Ads

Manage Apple Ads configuration as code with Terraform.

This is an open-source project from Pi Cubed. It provides a Terraform Plugin Framework provider for Apple Ads campaigns, ad groups, and keywords — with safety guardrails that protect historical campaign identity.

Status: early development, not yet published to the Terraform Registry.

Requirements

  • Terraform >= 1.0
  • Go >= 1.24 (for building from source)

Building the Provider

git clone https://github.com/picubedllc/terraform-provider-appleads
cd terraform-provider-appleads
make install

Developing

make build    # compile
make test     # unit tests (no Apple credentials)
make testlive # read-only live Apple Ads tests (APPLEADS_* env vars)
make lint     # golangci-lint
make fmt      # gofmt
make generate # regenerate docs (tfplugindocs)

Pull request CI runs unit tests, vet, lint, and docs generation only. It never receives Apple Ads credentials.

Live integration tests run from the Apple Ads Live Integration Tests workflow (workflow_dispatch or weekly). Credentials are GitHub Environment secrets on appleads-integration, not repository secrets, and that workflow is not triggered by pull requests.

See CONTRIBUTING.md for architecture, how to add resources, and test conventions. Provider releases are signed GitHub Releases from a vMAJOR.MINOR.PATCH tag; see docs/RELEASING.md.

Local live tests (make testlive) require:

APPLEADS_ORG_ID
APPLEADS_CLIENT_ID
APPLEADS_TEAM_ID
APPLEADS_KEY_ID
APPLEADS_PRIVATE_KEY
apple-ads
terraform

Contributors

irdz

192 commits

cursoragent

36 commits

Languages

Go

99.7%