{"id":13582350,"url":"https://github.com/alphagov/terraform-provider-concourse","last_synced_at":"2025-05-08T22:51:33.750Z","repository":{"id":53515021,"uuid":"162608196","full_name":"alphagov/terraform-provider-concourse","owner":"alphagov","description":"A terraform provider for Concourse","archived":false,"fork":false,"pushed_at":"2024-09-03T21:38:25.000Z","size":482,"stargazers_count":50,"open_issues_count":11,"forks_count":27,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-05-08T22:51:31.727Z","etag":null,"topics":["concourse","reliability-engineering","terraform-provider"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alphagov.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-20T17:01:26.000Z","updated_at":"2024-09-08T07:50:01.000Z","dependencies_parsed_at":"2024-06-19T00:15:48.766Z","dependency_job_id":"8fe1c408-dd7c-4b35-a079-402103db905e","html_url":"https://github.com/alphagov/terraform-provider-concourse","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alphagov%2Fterraform-provider-concourse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alphagov%2Fterraform-provider-concourse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alphagov%2Fterraform-provider-concourse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alphagov%2Fterraform-provider-concourse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alphagov","download_url":"https://codeload.github.com/alphagov/terraform-provider-concourse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253160827,"owners_count":21863624,"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":["concourse","reliability-engineering","terraform-provider"],"created_at":"2024-08-01T15:02:37.610Z","updated_at":"2025-05-08T22:51:33.731Z","avatar_url":"https://github.com/alphagov.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# terraform-provider-concourse\n\n## What\n\nA terraform provider for concourse\n\n## Why\n\n`fly` is an amazing tool, but configuration using scripts running fly is not\nideal.\n\n## Prerequisites\n\nInstall `go`, and `terraform`.\n\n## How to install and use\n\n```\nmake install\n```\n\n## How to build and test for development\n\n```\nmake\nmake integration-tests\n```\n\n# Example `terraform`\n\n## Create a provider (using target from fly)\n\n```hcl\nprovider \"concourse\" {\n  target = \"target_name\"\n}\n```\n\n## Create a provider (using a local username and password)\n\nNote: this is not basic authentication\n\n```hcl\nprovider \"concourse\" {\n  url  = \"https://wings.pivotal.io\"\n  team = \"main\"\n\n  username = \"localuser\"\n  password = \"very-secure-password\"\n}\n```\n\n## Look up all teams\n\n```hcl\ndata \"concourse_teams\" \"teams\" {\n}\n\noutput \"team_names\" {\n  value = data.concourse_teams.teams.names\n}\n```\n\n## Look up a team\n\n```hcl\ndata \"concourse_team\" \"my_team\" {\n  team_name = \"main\"\n}\n\noutput \"my_team_name\" {\n  value = data.concourse_team.my_team.team_name\n}\n\noutput \"my_team_owners\" {\n  value = data.concourse_team.my_team.owners\n}\n\noutput \"my_team_members\" {\n  value = data.concourse_team.my_team.members\n}\n\noutput \"my_team_pipeline_operators\" {\n  value = data.concourse_team.my_team.pipeline_operators\n}\n\noutput \"my_team_viewers\" {\n  value = data.concourse_team.my_team.viewers\n}\n```\n\n## Look up a pipeline\n\n```hcl\ndata \"concourse_pipeline\" \"my_pipeline\" {\n  team_name     = \"main\"\n  pipeline_name = \"pipeline\"\n}\n\noutput \"my_pipeline_team_name\" {\n  value = data.concourse_pipeline.my_pipeline.team_name\n}\n\noutput \"my_pipeline_pipeline_name\" {\n  value = data.concourse_pipeline.my_pipeline.pipeline_name\n}\n\noutput \"my_pipeline_is_exposed\" {\n  value = data.concourse_pipeline.my_pipeline.is_exposed\n}\n\noutput \"my_pipeline_is_paused\" {\n  value = data.concourse_pipeline.my_pipeline.is_paused\n}\n\noutput \"my_pipeline_json\" {\n  value = data.concourse_pipeline.my_pipeline.json\n}\n\noutput \"my_pipeline_yaml\" {\n  value = data.concourse_pipeline.my_pipeline.yaml\n}\n```\n## Create a team\n\nSupports `owners`, `members`, `pipeline_operators`, and `viewers`.\n\nSpecify users and groups by prefixing the strings:\n\n* `user:`\n* `group:`\n\n```hcl\nresource \"concourse_team\" \"my_team\" {\n  team_name = \"my-team\"\n\n  owners = [\n    \"group:github:org-name\",\n    \"group:github:org-name:team-name\",\n    \"user:github:tlwr\",\n  ]\n\n  viewers = [\n    \"user:github:samrees\"\n  ]\n}\n```\n\n## Create a pipeline\n\n```hcl\nresource \"concourse_pipeline\" \"my_pipeline\" {\n  team_name     = \"main\"\n  pipeline_name = \"my-pipeline\"\n\n  is_exposed = true\n  is_paused  = true\n\n  pipeline_config        = file(\"pipeline-config.yml\")\n  pipeline_config_format = \"yaml\"\n}\n\n# OR\n\nresource \"concourse_pipeline\" \"my_pipeline\" {\n  team_name     = \"main\"\n  pipeline_name = \"my-pipeline\"\n\n  is_exposed = true\n  is_paused  = true\n\n  pipeline_config        = file(\"pipeline-config.json\")\n  pipeline_config_format = \"json\"\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falphagov%2Fterraform-provider-concourse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falphagov%2Fterraform-provider-concourse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falphagov%2Fterraform-provider-concourse/lists"}