{"id":18930063,"url":"https://github.com/labd/terraform-provider-commercetools","last_synced_at":"2025-04-04T14:04:43.684Z","repository":{"id":39411299,"uuid":"137787806","full_name":"labd/terraform-provider-commercetools","owner":"labd","description":"Terraform provider for commercetools","archived":false,"fork":false,"pushed_at":"2025-03-07T15:07:47.000Z","size":1883,"stargazers_count":65,"open_issues_count":12,"forks_count":71,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-03-28T13:05:04.014Z","etag":null,"topics":["commercetools","terraform","terraform-provider"],"latest_commit_sha":null,"homepage":"https://registry.terraform.io/providers/labd/commercetools/latest/docs","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/labd.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["labd"]}},"created_at":"2018-06-18T17:59:43.000Z","updated_at":"2025-03-07T15:17:08.000Z","dependencies_parsed_at":"2023-11-15T10:40:24.012Z","dependency_job_id":"8d35c676-bb03-4d72-9366-48e2d988461e","html_url":"https://github.com/labd/terraform-provider-commercetools","commit_stats":null,"previous_names":[],"tags_count":112,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labd%2Fterraform-provider-commercetools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labd%2Fterraform-provider-commercetools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labd%2Fterraform-provider-commercetools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labd%2Fterraform-provider-commercetools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/labd","download_url":"https://codeload.github.com/labd/terraform-provider-commercetools/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247186063,"owners_count":20898088,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["commercetools","terraform","terraform-provider"],"created_at":"2024-11-08T11:36:22.803Z","updated_at":"2025-04-04T14:04:43.667Z","avatar_url":"https://github.com/labd.png","language":"Go","funding_links":["https://github.com/sponsors/labd"],"categories":[],"sub_categories":[],"readme":"# commercetools Terraform Provider\n\n[![Test status](https://github.com/labd/terraform-provider-commercetools/workflows/Run%20Tests/badge.svg)](https://github.com/labd/terraform-provider-commercetools/actions?query=workflow%3A%22Run+Tests%22)\n[![codecov](https://codecov.io/gh/LabD/terraform-provider-commercetools/branch/master/graph/badge.svg)](https://codecov.io/gh/LabD/terraform-provider-commercetools)\n[![Go Report Card](https://goreportcard.com/badge/github.com/labd/terraform-provider-commercetools)](https://goreportcard.com/report/github.com/labd/terraform-provider-commercetools)\n\nThe Terraform commercetools provider allows you to configure\nyour [commercetools](https://commercetools.com/) project with\ninfrastructure-as-code principles.\n\n# Commercial support\n\nNeed support implementing this terraform provider in your organization? Or are you missing features \nthat need to be added, then we are able to offer support. Please contact us at opensource@labdigital.nl\n\n# Quick start\n\n[Read our documentation](https://registry.terraform.io/providers/labd/commercetools/latest/docs)\nand check out the [examples](https://registry.terraform.io/providers/labd/commercetools/latest/docs/guides/extensions).\n\n## Usage\n\nThe provider is distributed via the Terraform registry. To use it you need to configure\nthe [`required_provider`](https://www.terraform.io/language/providers/requirements#requiring-providers) block. For example:\n\n```hcl\nterraform {\n  required_providers {\n    commercetools = {\n      source = \"labd/commercetools\"\n\n      # It's recommended to pin the version, e.g.:\n      # version = \"~\u003e 1.4.0\"\n    }\n  }\n}\n```\n\n# Binaries\n\nPackages of the releases are available at\nhttps://github.com/labd/terraform-provider-commercetools/releases See the\n[terraform documentation](https://www.terraform.io/docs/configuration/providers.html#third-party-plugins)\nfor more information about installing third-party providers.\n\n# Contributing\n\n## Requirements\n\n- [Go](https://golang.org/doc/install) \u003e= 1.20\n- [Task](https://taskfile.dev/installation/)\n- [Changie](https://github.com/miniscruff/changie)\n\n## Building the provider\n\nClone repository to: `$GOPATH/src/github.com/labd/terraform-provider-commercetools`\n\n```sh\n$ mkdir -p $GOPATH/src/github.com/labd; cd $GOPATH/src/github.com/labd\n$ git clone git@github.com:labd/terraform-provider-commercetools\n```\n\nEnter the provider directory and build the provider\n\n```sh\n$ cd $GOPATH/src/github.com/labd/terraform-provider-commercetools\n$ task build-local\n```\n\nA build is created `terraform-provider-commercetools_99.0.0` in the root directory and added to plugin folder available\nlocally:\n\n```sh\n~/.terraform.d/plugins/local/labd/commercetools/99.0.0/${OS_ARCH}/terraform-provider-commercetools_v99.0.0\n```\n\nUse version `99.0.0` in the provider to test your changes locally\n\n```hcl\nterraform {\n  required_providers {\n    commercetools = {\n      source  = \"labd/commercetools\"\n      version = \"99.0.0\"\n    }\n  }\n}\n```\n\n## Adding new resources\n\nWhen commercetools releases new features which include new resources these need to be implemented\nin terraform as new resources too. This provider is currently undergoing a migration path to\nmove from [terraform-plugin-sdk](https://github.com/hashicorp/terraform-plugin-sdk/) to the new\n[terraform-plugin-framework](https://github.com/hashicorp/terraform-plugin-framework/). All new\nresources therefore need to be written using the terraform-plugin-framework module. See the\n`subscription` component as example.\n\n## Debugging / Troubleshooting\n\nThere are two environment settings for troubleshooting:\n\n- `TF_LOG=INFO` enables debug output for Terraform.\n- `CTP_DEBUG=1` enables debug output for the Commercetools GO SDK this provider uses.\n\nNote this generates a lot of output!\n\n## Releasing\n\nWhen creating a PR with changes, please include a changie file in the `changelogs/unreleased` folder. This file can be\ninteractively generated by running `changie new` in the root of the project. Pick a suitable category for the change. We\nrecommend `Fixed` or `Added` for most cases. See the [changie configuration](./.changie.yaml) for the full list of\ncategories.\n\nOnce a new version is released all the unreleased changelog files will be merged and added to the general CHANGELOG.md file.\n\n## Testing\n\n### Running the unit tests\n\n```sh\n$ task test\n```\n\n### Running the unit tests with coverage\n\n```sh\n$ task coverage\n```\n\n### Running an Acceptance Test\n\nIn order to run the full suite of Acceptance tests, run `task testacc`.\n\n**NOTE:** Acceptance tests create real resources.\n\nPrior to running the tests provider configuration details such as access keys\nmust be made available as environment variables.\n\nSince we need to be able to create commercetools resources, we need the\ncommercetools API credentials. So in order for the acceptance tests to run\ncorrectly please provide all the following:\n\n```sh\nexport CTP_CLIENT_ID=...\nexport CTP_CLIENT_SECRET=...\nexport CTP_PROJECT_KEY=...\nexport CTP_SCOPES=...\n```\n\nFor convenience, place a `testenv.sh` in your `local` folder (which is\nincluded in .gitignore) where you can store these environment variables.\n\nTests can then be started by running\n\n```sh\n$ source local/testenv.sh\n$ task testacc\n```\n\n## Authors\n\nThis project is developed by [Lab Digital](https://www.labdigital.nl). We\nwelcome additional contributors. Please see our\n[GitHub repository](https://github.com/labd/terraform-provider-commercetools)\nfor more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabd%2Fterraform-provider-commercetools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flabd%2Fterraform-provider-commercetools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabd%2Fterraform-provider-commercetools/lists"}