{"id":13505747,"url":"https://github.com/coder/terraform-provider-coder","last_synced_at":"2025-04-04T17:05:01.679Z","repository":{"id":37857655,"uuid":"462891362","full_name":"coder/terraform-provider-coder","owner":"coder","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-04T15:24:28.000Z","size":635,"stargazers_count":39,"open_issues_count":39,"forks_count":22,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-04-04T16:36:24.542Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://coder.com","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/coder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2022-02-23T20:14:55.000Z","updated_at":"2025-04-04T03:56:08.000Z","dependencies_parsed_at":"2023-11-22T13:44:19.319Z","dependency_job_id":"49c8c5d2-b546-40ab-b001-f3878f1b9458","html_url":"https://github.com/coder/terraform-provider-coder","commit_stats":{"total_commits":198,"total_committers":30,"mean_commits":6.6,"dds":0.7676767676767677,"last_synced_commit":"493a0f18a5383db9c2eaf8d1bffd8b8caf978507"},"previous_names":[],"tags_count":110,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coder%2Fterraform-provider-coder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coder%2Fterraform-provider-coder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coder%2Fterraform-provider-coder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coder%2Fterraform-provider-coder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/coder","download_url":"https://codeload.github.com/coder/terraform-provider-coder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217172,"owners_count":20903008,"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":[],"created_at":"2024-08-01T00:01:12.803Z","updated_at":"2025-04-04T17:05:01.650Z","avatar_url":"https://github.com/coder.png","language":"Go","readme":"# terraform-provider-coder\n\nTerraform provider for [Coder](https://github.com/coder/coder).\n\n### Developing\n\n#### Prerequisites\n\n- [Go](https://golang.org/doc/install)\n- [Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli)\n\nWe recommend using [`nix`](https://nixos.org/download.html) to manage your development environment. If you have `nix` installed, you can run `nix develop` to enter a shell with all the necessary dependencies.\n\nAlternatively, you can install the dependencies manually.\n\n#### Building\n\nFollow the instructions outlined in the [Terraform documentation](https://developer.hashicorp.com/terraform/cli/config/config-file#development-overrides-for-provider-developers)\nto setup your local Terraform to use your local version rather than the registry version.\n\n1. Create a file named `.terraformrc` in your `$HOME` directory\n2. Add the following content:\n\n   ```hcl\n    provider_installation {\n        # Override the coder/coder provider to use your local version\n        dev_overrides {\n          \"coder/coder\" = \"/path/to/terraform-provider-coder\"\n        }\n\n        # For all other providers, install them directly from their origin provider\n        # registries as normal. If you omit this, Terraform will _only_ use\n        # the dev_overrides block, and so no other providers will be available.\n        direct {}\n    }\n   ```\n\n3. (optional, but recommended) Validate your configuration:\n   1. Create a new `main.tf` file and include:\n   ```hcl\n   terraform {\n       required_providers {\n           coder = {\n               source = \"coder/coder\"\n           }\n       }\n   }\n   ```\n   2. Run `terraform init` and observe a warning like `Warning: Provider development overrides are in effect`\n4. Run `go build -o terraform-provider-coder` to build the provider binary, which Terraform will try locate and execute\n5. All local Terraform runs will now use your local provider!\n6. _**NOTE**: we vendor in this provider into `github.com/coder/coder`, so if you're testing with a local clone then you should also run `go mod edit -replace github.com/coder/terraform-provider-coder=/path/to/terraform-provider-coder` in your clone._\n\n#### Terraform Acceptance Tests\n\nTo run Terraform acceptance tests, run `make testacc`. This will test the provider against the locally installed version of Terraform.\n\n\u003e [!Note]\n\u003e Our [CI workflow](./github/workflows/test.yml) runs a test matrix against multiple Terraform versions.\n\n#### Integration Tests\n\nThe tests under the `./integration` directory perform the following steps:\n\n- Build the local version of the provider,\n- Run an in-memory Coder instance with a specified version,\n- Validate the behaviour of the local provider against that specific version of Coder.\n\nTo run these integration tests locally:\n\n1. Pull the version of the Coder image you wish to test:\n\n   ```console\n     docker pull ghcr.io/coder/coder-preview:main-x.y.z-devel-abcd1234\n   ```\n\n1. Run `CODER_IMAGE=ghcr.io/coder/coder-preview CODER_VERSION=main-x.y.z-devel-abcd1234 make test-integration`.\n\n\u003e [!Note]\n\u003e You can specify `CODER_IMAGE` if the Coder image you wish to test is hosted somewhere other than `ghcr.io/coder/coder`.\n\u003e For example, `CODER_IMAGE=example.com/repo/coder CODER_VERSION=foobar make test-integration`.\n\n### How to create a new release\n\u003e [!Warning]\n\u003e Before creating a new release, make sure you have pulled the latest commit from the main branch i.e. `git pull origin main`\n\n1. Create a new tag with a version number (following semantic versioning):\n   ```console\n   git tag -a v2.1.2 -m \"v2.1.2\"\n   ```\n\n2. Push the tag to the remote repository:\n   ```console\n   git push origin tag v2.1.2\n   ```\n\nA GitHub Actions workflow named \"Release\" will automatically trigger, run integration tests, and publish the new release.\n","funding_links":[],"categories":["Providers"],"sub_categories":["Vendor supported providers"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoder%2Fterraform-provider-coder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoder%2Fterraform-provider-coder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoder%2Fterraform-provider-coder/lists"}