WIP: Add data sources for hosted runner custom images#3286
Draft
austenstone wants to merge 41 commits into
Draft
WIP: Add data sources for hosted runner custom images#3286austenstone wants to merge 41 commits into
austenstone wants to merge 41 commits into
Conversation
Add three new data sources for managing custom images on GitHub-hosted runners: - github_actions_hosted_runner_custom_images: List all custom images for an org - github_actions_hosted_runner_custom_image: Get a single custom image definition - github_actions_hosted_runner_custom_image_versions: List versions of a custom image WIP: Blocked on google/go-github#4101 merging. Currently uses raw HTTP calls via the v3client to avoid a go-github version bump. Once the go-github PR lands and is released, these can be migrated to typed SDK methods. Includes acceptance tests, provider registration, and website docs.
|
👋 Hi! Thank you for this contribution! Just to let you know, our GitHub SDK team does a round of issue and PR reviews twice a week, every Monday and Friday! We have a process in place for prioritizing and responding to your input. Because you are a part of this community please feel free to comment, add to, or pick up any issues/PRs that are labeled with |
…ns (integrations#3222) Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
…ntegrations#2356) * Define schema for repository_property Refactor expandConditions to reduce complexity Refactor logic to reduce the cognitive complexity and add logic to handle the repository_property field Flatten conditions for repository_property and fix schemas Add test case when ruleset use repository_property Refactor repository property conditions to make them optional Flatten update Target parameters to allow the detection of changes when remote resource is updated Update documentation * Apply format in the code base * Fix repository_property validation and docs - Add ValidateFunc to include.source field for consistency with exclude - Update docs to mention repository_property as third targeting option - Fix missing space in documentation * Support repository_property in push rulesets * Remove unused customdiff imports * Replace custom validation with built-in ExactlyOneOf for repo targeting Add ExactlyOneOf/AtLeastOneOf to repository_property, repository_name,repository_id fields. Remove manual validation counting in util_ruleset_validation.Add 3 validation tests for single/multiple/missing repo targeting options. Addresses PR integrations#2356 review feedback - simplifies validation using schema constraints. * Rever unintencial change * Add tests, docs, and fix default handling for repository_property - Add doc example for repository_property usage - Add tests for exclude block, multiple properties, and updates - Fix source field default handling in flatten function to prevent diffs * Apply suggestions from PR comment * Add unit tests * Remove redundant condition * Updated description based in the GitHub API docs * Apply linter and fmt * Remove unnecessary checks * Remove tests These tests check validation that was handover to the Terraform built-in validation * Improve syntax for include and exclude property Improve e2e tests for the ruleset and improve documentation * Use t context * Rewrite tests using the resource_github_organization_custom_properties Setup the tests case using the config instead of using the API * Refactor repository property names in organization ruleset tests for consistency * Refactor tests to use state checks for repository property validation in organization ruleset * Update repository property references to use default_branch in organization ruleset tests * Fix: Replace ExactlyOneOf with ConflictsWith/AtLeastOneOf for repository conditions ExactlyOneOf has known issues with nested optional list blocks in Terraform SDK. Use ConflictsWith + AtLeastOneOf pattern for reliable "exactly one" validation across repository_name, repository_id, and repository_property conditions. Updated test expectations to match new error message format from ConflictsWith. Addresses feedback from PR integrations#2356 comment r2968116244, references fix from integrations#3235 * Apply lint
…ions#3215) * Update resource ID to be <group-id>:<team-id> Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fix `tflog.SetField` usage Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update tests to use `terraform-plugin-testing` and fix broken tests Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update docs Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Cleanup extra `tflog.SetField` calls Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Reducing logger complexity Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Improve error messages in `Import` Signed-off-by: Timo Sand <timo.sand@f-secure.com> --------- Signed-off-by: Timo Sand <timo.sand@f-secure.com>
…ions#2649) * Adding github_enterprise_ip_allow_list_entry resource * Update github/resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> * Update github/resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> * Update github/resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: gateixeira <4645845+gateixeira@users.noreply.github.com> * Update github/resource_github_enterprise_ip_allow_list_entry_test.go Co-authored-by: gateixeira <4645845+gateixeira@users.noreply.github.com> * Update github/resource_github_enterprise_ip_allow_list_entry_test.go Co-authored-by: gateixeira <4645845+gateixeira@users.noreply.github.com> * Code review fixes * Fixes from code review * Fixing code review comments * Update resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: Timo Sand <timo.sand@iki.fi> * Update resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: Timo Sand <timo.sand@iki.fi> * Update github/resource_github_enterprise_ip_allow_list_entry_test.go Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> * Update github/resource_github_enterprise_ip_allow_list_entry.go Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> * Code review changes * Fixing config in test * Flattening update test * Adding error handling * Simplifying import function * Fix docs * Fixing code review changes * Fixing lint * Adding error handling for missing global ID * Removing two old functions * Fixing lint --------- Co-authored-by: Nick Floyd <139819+nickfloyd@users.noreply.github.com> Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> Co-authored-by: gateixeira <4645845+gateixeira@users.noreply.github.com> Co-authored-by: Timo Sand <timo.sand@iki.fi>
…ions#3166) * Add resource for repository vulnerability alerts Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Mark `vulnerability_alerts` in `github_repository` as deprecated Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update formatting Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update import after rebase Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Correct file names Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Address review comments Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Simplify `SetId` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Comment out `owner` until we can support it better Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Refactor to use `ConfigStateChecks` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update import ID to only repository name Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Improves tests Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Updates docs Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add clearer error for user when trying to add to an archived repository Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Re-order `SetId` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Simplify archived repo handling Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fix behaviour on archived repository Signed-off-by: Timo Sand <timo.sand@f-secure.com> --------- Signed-off-by: Timo Sand <timo.sand@f-secure.com>
The anonymous HTTP client was using a bare `http.Transport{}`
which does not respect `HTTP_PROXY`/`HTTPS_PROXY` environment
variables. This change clones `http.DefaultTransport` instead,
which has `Proxy: http.ProxyFromEnvironment` set by default.
Related to integrations#1509
Signed-off-by: Diogo Correia <diogo.correia@siemens.com>
…tions#3220) * Update docs Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update tests and add missing coverage Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add more tests to cover `Import` and a few more `Update` cases Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Refactor `Import` to be Context-aware Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Refactor to use Context-aware functions Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Use `resource.ParallelTest` to make testing quicker Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Remove unused call to `Read` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Uncouple `Create` and `Update` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fix resource to be able to set empty `review_request_delegation` block Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add top-level `notify` to enable setting it without `review_request_delegation` Mark nested `notify` as deprecated Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update docs Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Consolidate `getTeamSlugContext` and `resolveTeamIDs` to use shared logic with `getTeam` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Remove named returns * Fix missing reference Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Simplify `resolveNotify` Signed-off-by: Timo Sand <timo.sand@f-secure.com> --------- Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
…org data source (integrations#3359) The github_organization data source was using GetMembersCanCreatePrivateRepos() instead of GetMembersCanForkPrivateRepos() to populate the members_can_fork_private_repositories attribute, causing it to return the value of members_can_create_private_repositories instead. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ations#3168) * Add resource for repository pages and deprecate it from repository R Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add data source for repository pages and deprecate it from repository DS Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update formatting of docs page Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Change `github_repository` to only Read pages info if pages is in the config Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fix faulty test Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update Import test Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add `repository_id` diff logic and unify naming Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Use `ConfigStateChecks` in DS tests Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Refactor to use `ConfigStateChecks` in Resource Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Comment out `owner` field for now Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Comment out `owner` field for DS as well Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Simplify import ID Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add support for `public` field in pages Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update docs Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Improve field descriptions Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Only modify `CNAME` in state if it has a value upstream Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add `https_enforced` field Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Update `go-github` version Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Replace `switch` with `if` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Re-order `d.Set` calls Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Restructure `UpdatePages` section Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Refactor tests to use `testAccConf.testRepositoryVisibility` Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fix linter Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add tests to ensure that `source` validation works properly Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add more debug logging and fix validation Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Fixed validation tests to notify when they are not working Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Add comments to make it clearer why we need to use this partial value setting in Create Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Remove unnecessary `hasChanges` checks and explain the ones that are unnecessary Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Address review comments Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Reduce test time by parallelising Signed-off-by: Timo Sand <timo.sand@f-secure.com> --------- Signed-off-by: Timo Sand <timo.sand@f-secure.com>
…rations#3371) When the invitee of `github_repository_collaborators` is an organization member who is not yet a direct collaborator, GitHub's REST API returns `204 No Content` from `PUT /repos/{owner}/{repo}/collaborators/{username}` (the user is promoted to direct collaborator immediately, no invitation is issued). The Go client surfaces this as `inv == nil, err == nil`. Since integrations#3233 the create/update path in `updateUserCollaboratorsAndInvites` unconditionally dereferences `inv.ID`, causing a nil pointer panic for any configuration that adds an org member as a direct collaborator for the first time. Guard the invitation-tracking branch on `inv != nil`. On the 204 path there is no invitation to record; the user is a direct collaborator already and will be picked up by the next `listUserCollaborators` call. Signed-off-by: bofus10 <33520078+bofus10@users.noreply.github.com>
* Update Read to combine Invites and Collaborator users This is to prevent drift when external users have not accepted invites yet. Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Improve DEBUG logging of repo collaborators Signed-off-by: Timo Sand <timo.sand@f-secure.com> * Revert `ParallelTest` changes Signed-off-by: Timo Sand <timo.sand@f-secure.com> --------- Signed-off-by: Timo Sand <timo.sand@f-secure.com>
* chore: Use tf plugin docs Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com> * fixup! chore: Use tf plugin docs * fixup! chore: Use tf plugin docs --------- Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
…updates (integrations#3397) Bumps the github-actions group with 5 updates in the / directory: | Package | From | To | | --- | --- | --- | | [rvben/rumdl](https://github.com/rvben/rumdl) | `0.1.84` | `0.1.88` | | [github/codeql-action](https://github.com/github/codeql-action) | `4.32.3` | `4.35.3` | | [anchore/sbom-action](https://github.com/anchore/sbom-action) | `0.22.2` | `0.24.0` | | [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) | `4.0.0` | `4.1.1` | | [actions/stale](https://github.com/actions/stale) | `10.1.1` | `10.2.0` | Updates `rvben/rumdl` from 0.1.84 to 0.1.88 - [Release notes](https://github.com/rvben/rumdl/releases) - [Changelog](https://github.com/rvben/rumdl/blob/main/CHANGELOG.md) - [Commits](rvben/rumdl@f3ca9f4...6fd01e7) Updates `github/codeql-action` from 4.32.3 to 4.35.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@9e907b5...e46ed2c) Updates `anchore/sbom-action` from 0.22.2 to 0.24.0 - [Release notes](https://github.com/anchore/sbom-action/releases) - [Changelog](https://github.com/anchore/sbom-action/blob/main/RELEASE.md) - [Commits](anchore/sbom-action@28d7154...e22c389) Updates `sigstore/cosign-installer` from 4.0.0 to 4.1.1 - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](sigstore/cosign-installer@faadad0...cad07c2) Updates `actions/stale` from 10.1.1 to 10.2.0 - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](actions/stale@9971854...b5d41d4) --- updated-dependencies: - dependency-name: rvben/rumdl dependency-version: 0.1.88 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action dependency-version: 4.35.3 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: anchore/sbom-action dependency-version: 0.24.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: sigstore/cosign-installer dependency-version: 4.1.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: actions/stale dependency-version: 10.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ions#3398) Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
…updates (integrations#3400) Bumps the github-actions group with 2 updates in the / directory: [rvben/rumdl](https://github.com/rvben/rumdl) and [actions/labeler](https://github.com/actions/labeler). Updates `rvben/rumdl` from 0.1.88 to 0.1.89 - [Release notes](https://github.com/rvben/rumdl/releases) - [Changelog](https://github.com/rvben/rumdl/blob/main/CHANGELOG.md) - [Commits](rvben/rumdl@6fd01e7...e8c3029) Updates `actions/labeler` from 6.0.1 to 6.1.0 - [Release notes](https://github.com/actions/labeler/releases) - [Commits](actions/labeler@634933e...f27b608) --- updated-dependencies: - dependency-name: rvben/rumdl dependency-version: 0.1.89 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/labeler dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…integrations#3401) Bumps [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance) from 3.2.0 to 4.1.0. - [Release notes](https://github.com/actions/attest-build-provenance/releases) - [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md) - [Commits](actions/attest-build-provenance@96278af...a2bbfa2) --- updated-dependencies: - dependency-name: actions/attest-build-provenance dependency-version: 4.1.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…grations#3404) Bumps [hashicorp/setup-terraform](https://github.com/hashicorp/setup-terraform) from 3.1.2 to 4.0.0. - [Release notes](https://github.com/hashicorp/setup-terraform/releases) - [Changelog](https://github.com/hashicorp/setup-terraform/blob/main/CHANGELOG.md) - [Commits](hashicorp/setup-terraform@v3.1.2...5e8dbf3) --- updated-dependencies: - dependency-name: hashicorp/setup-terraform dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the gomod-security group with 1 update in the / directory: [github.com/go-jose/go-jose/v4](https://github.com/go-jose/go-jose). Updates `github.com/go-jose/go-jose/v4` from 4.1.3 to 4.1.4 - [Release notes](https://github.com/go-jose/go-jose/releases) - [Commits](go-jose/go-jose@v4.1.3...v4.1.4) --- updated-dependencies: - dependency-name: github.com/go-jose/go-jose/v4 dependency-version: 4.1.4 dependency-type: direct:production dependency-group: gomod-security ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Lasse Gaardsholt <lasse.gaardsholt@bestseller.com>
…updates (integrations#3427) Bumps the github-actions group with 3 updates in the / directory: [hashicorp/setup-terraform](https://github.com/hashicorp/setup-terraform), [rvben/rumdl](https://github.com/rvben/rumdl) and [github/codeql-action](https://github.com/github/codeql-action). Updates `hashicorp/setup-terraform` from 4.0.0 to 4.0.1 - [Release notes](https://github.com/hashicorp/setup-terraform/releases) - [Changelog](https://github.com/hashicorp/setup-terraform/blob/main/CHANGELOG.md) - [Commits](hashicorp/setup-terraform@5e8dbf3...dfe3c3f) Updates `rvben/rumdl` from 0.1.90 to 0.1.91 - [Release notes](https://github.com/rvben/rumdl/releases) - [Changelog](https://github.com/rvben/rumdl/blob/main/CHANGELOG.md) - [Commits](rvben/rumdl@9a78b14...3cf0ff7) Updates `github/codeql-action` from 4.35.3 to 4.35.4 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@e46ed2c...68bde55) --- updated-dependencies: - dependency-name: hashicorp/setup-terraform dependency-version: 4.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: rvben/rumdl dependency-version: 0.1.91 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action dependency-version: 4.35.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the gomod group with 1 update in the / directory: [golang.org/x/crypto](https://github.com/golang/crypto). Updates `golang.org/x/crypto` from 0.50.0 to 0.51.0 - [Commits](golang/crypto@v0.50.0...v0.51.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-version: 0.51.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gomod ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update issue templates * Update issue templates * Update .github/ISSUE_TEMPLATE/bug.yml Co-authored-by: Timo Sand <timo.sand@iki.fi> * Update .github/ISSUE_TEMPLATE/bug.yml Co-authored-by: Timo Sand <timo.sand@iki.fi> * Update .github/ISSUE_TEMPLATE/bug.yml Co-authored-by: Timo Sand <timo.sand@iki.fi> * Update bug template * Removed panic logs field * chore: Update templates according to suggestions Signed-off-by: Viacheslav Kudinov <viacheslav@kudinov.tech> --------- Signed-off-by: Viacheslav Kudinov <viacheslav@kudinov.tech> Co-authored-by: Timo Sand <timo.sand@iki.fi>
Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Signed-off-by: Timo Sand <timo.sand@f-secure.com>
…updates (integrations#3439) Bumps the github-actions group with 4 updates in the / directory: [rvben/rumdl](https://github.com/rvben/rumdl), [github/codeql-action](https://github.com/github/codeql-action), [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) and [actions/stale](https://github.com/actions/stale). Updates `rvben/rumdl` from 0.1.91 to 0.1.95 - [Release notes](https://github.com/rvben/rumdl/releases) - [Changelog](https://github.com/rvben/rumdl/blob/main/CHANGELOG.md) - [Commits](rvben/rumdl@3cf0ff7...b2164bb) Updates `github/codeql-action` from 4.35.4 to 4.35.5 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@68bde55...9e0d7b8) Updates `goreleaser/goreleaser-action` from 7.2.1 to 7.2.2 - [Release notes](https://github.com/goreleaser/goreleaser-action/releases) - [Commits](goreleaser/goreleaser-action@1a80836...5daf1e9) Updates `actions/stale` from 10.2.0 to 10.3.0 - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](actions/stale@b5d41d4...eb5cf3a) --- updated-dependencies: - dependency-name: rvben/rumdl dependency-version: 0.1.95 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action dependency-version: 4.35.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: goreleaser/goreleaser-action dependency-version: 7.2.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/stale dependency-version: 10.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
Signed-off-by: Steve Hipwell <steve.hipwell@gmail.com>
* CCR * Move skill around * Prevent read after update * Make review compatible with CCR * Add nit policy * Pin go version for feedback * Address review feedback from @deiga - Correct Go version anchor: 1.24 -> 1.26 (matches go.mod). - Drop ValidateFunc everywhere; ValidateDiagFunc only (ValidateFunc is deprecated and not allowed in this repo). - Rewrite docs.instructions.md to target templates/** instead of the no-longer-existing website/**. Docs under docs/** are auto-generated; edits go in templates/, examples/, or resource Description fields. - Replace remaining website/ references in copilot-instructions.md with docs/ and templates/. - Add repository-rename convention to schema-and-state.instructions.md: attribute must be 'repository' (not ForceNew), plus computed 'repository_id', plus CustomizeDiff: diffRepository. - Add Delete 404 handling: treat as success, not error. - Require *Context CRUD variants and diag.Diagnostics on all new resources. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address @deiga test conventions feedback Add a 'terraform-plugin-testing Conventions' section to .github/instructions/tests.instructions.md covering: - Prefer ConfigStateChecks over the legacy Check / ComposeTestCheckFunc pattern. - Use ValueComparers (compare.ValuesSame / compare.ValuesDiffer) for cross-step value comparisons instead of custom pointer structs. - Don't flag legacy patterns in unmodified tests; only in new or substantially modified ones. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Add Go review instructions from awesome-copilot Incorporates the upstream Go instructions from https://github.com/github/awesome-copilot/blob/main/instructions/go.instructions.md as a path-scoped instructions file (applyTo: **/*.go,**/go.mod,**/go.sum). A preamble subordinates the Go guidance to the repo's existing severity policy (HIGH/MEDIUM only, no LOW or nits) and notes the Go-version anchors in copilot-instructions.md plus the no-read-after-write exception, so CCR doesn't suddenly start surfacing style nits or fight provider-specific conventions. The main copilot-instructions.md now lists every path-scoped file so the set is discoverable. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> * Address review feedback from @stevehipwell and @deiga Path-specific instruction files now cross-link to copilot-instructions.md (and to go.instructions.md from the Go-scoped files), with several content fixes on top. docs.instructions.md - Add a 'How Doc Generation Works' section explaining tfplugindocs, the templates/examples/schema layout, and the default-template fallback. - Add a 'Local Doc Workflow' section calling out make generatedocs, make validatedocs, make checkdocs, and the rumdl targets. - Rewrite the schema-sync section as 'fix forward' guidance: fix descriptions at the schema or template source, not in the generated docs/. - Soften the Imports section: tfplugindocs auto-generates the import section from examples/resources/<name>/import.sh, so reviewers just need to verify that section renders. - Recommend linking to the GitHub REST API reference for permission and scope info to avoid stale documentation. - Note that terraform fmt is the formatting baseline for example HCL. - Add a relative-link example for internal doc cross-references. examples.instructions.md - Distinguish the two kinds of example: single-file tfplugindocs snippets (under examples/{provider,resources,data-sources}/) and root-module examples (everything else). Standard-module-structure rules now apply only to root-module examples. - Call out that tfplugindocs snippets must not declare required_providers or a provider block. schema-and-state.instructions.md, tests.instructions.md - Add cross-references to go.instructions.md. schema-and-state.instructions.md - Replace the ListOptions/NextPage pagination guidance with a recommendation to use the *Iter methods on google/go-github that return iter.Seq2[T, error]. Hand-rolled NextPage loops in existing code are still acceptable, but flag new code that re-implements pagination when an *Iter method exists. go.instructions.md - Add a short intro paragraph above the existing callout that links to copilot-instructions.md and the other path-scoped files. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address CCR feedback on instruction front matter and output rules go.instructions.md - Switch the applyTo glob from comma-separated to brace expansion ('**/{*.go,go.mod,go.sum}'). Brace expansion is universally minimatch-compatible, so this removes any doubt about whether the Go instructions actually apply to .go / go.mod / go.sum files. copilot-instructions.md - Resolve the conflict between 'ALWAYS acknowledge instructions are being used' and 'must say only No blocking findings found and stop'. Reviews with findings open with a dedicated acknowledgment sentence; reviews with no findings collapse the two requirements into one verbatim sentence: 'These provider review instructions are being used. No blocking findings found.' Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Extend docs.instructions.md applyTo to cover docs/** CCR pointed out that docs.instructions.md flags manual edits to docs/** as HIGH but its front matter only applies to templates/**, so the rule won't fire on PRs that actually touch the generated docs. - docs.instructions.md: applyTo now '{templates,docs}/**'; opening paragraph updated to match. - copilot-instructions.md: bullet updated so the instruction map reflects the new coverage. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Correct example layout in docs/examples instructions CCR caught two factual errors in the previous round: - examples/provider/provider.tf does not exist in this repo. The provider landing page (templates/index.md.tmpl) embeds examples/example_*.tf from the root of examples/ instead. - The flat 'no required_providers / no provider block in tfplugindocs snippets' rule contradicts the landing-page snippets, which intentionally include both because the landing page is the first thing users see. docs.instructions.md - Updated the 'Example HCL under examples/' list in 'How Doc Generation Works' to reflect the real layout: example_*.tf at the root for the landing page (with required_providers + provider), and per-resource / per-data-source snippets under examples/resources/<name>/ and examples/data-sources/<name>/ without those blocks. examples.instructions.md - Same correction in 'Two Kinds of Examples'. - Provider Configuration bullet now scopes the 'no required_providers / no provider block' rule to per-resource and per-data-source snippets, with an explicit carve-out for the examples/example_*.tf landing-page snippets. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Clarify schema-and-state vs tests overlap on _test.go files CCR pointed out that schema-and-state.instructions.md applies to 'github/**/*.go', which also matches '_test.go' files, creating an overlap with tests.instructions.md. Minimatch does not support negation globs without an explicit 'negate: true' option (the '!' prefix is ignored by default), so I can't reliably narrow the applyTo to exclude '_test.go'. Instead I spell out the precedence in the file itself: on test files, tests.instructions.md is authoritative and the schema / CRUD / API-safety bullets here are background, to be flagged only when the test actually touches that code (e.g., hand-rolled pagination in an acceptance test). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Align examples instructions with maintainers' preferred convention - Update provider snippets path to examples/provider/**/*.tf to match the rename in integrations#3196, and call out that examples/provider/provider*.tf files can be automated via the .Examples templating capability. - Document the default single-file convention: resource*.tf for per-resource snippets and data-source*.tf for per-data-source snippets, with any extra context in a top-of-file comment. - Note that the example*.tf pattern is only appropriate when the docs template explicitly calls for it. Addresses review feedback from @stevehipwell on PR integrations#3425. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Cover both current and post-integrations#3196 provider example paths CCR flagged that the previous revision pointed only at the examples/provider/**/*.tf layout, which doesn't exist yet (it lands with integrations#3196). This documents both the current examples/example_*.tf layout and the post-integrations#3196 examples/provider/**/*.tf layout so the instructions stay accurate during the transition. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Drop integrations#3196 references now that the new examples layout has landed integrations#3196 has merged, so the examples layout it introduced (examples/provider/**) is the current layout. Collapse the "current vs. post-integrations#3196" wording in the examples instructions into a single description of the live layout. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update .github/instructions/docs.instructions.md Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Steve Hipwell <steve.hipwell@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add three new data sources for managing custom images on GitHub-hosted runners:
github_actions_hosted_runner_custom_imagesGET /orgs/{org}/actions/hosted-runners/images/customgithub_actions_hosted_runner_custom_imageGET /orgs/{org}/actions/hosted-runners/images/custom/{id}github_actions_hosted_runner_custom_image_versionsGET /orgs/{org}/actions/hosted-runners/images/custom/{id}/versionsBlocked On
Current Approach
Uses raw HTTP calls via
client.NewRequest/client.Do(same pattern as the existinggithub_actions_hosted_runnerresource) to avoid a go-github version bump until the upstream PR merges and releases.Once
go-githubreleases with the custom image endpoints, these data sources can be migrated to use the typed SDK methods.What's Included
provider.goNew Types from go-github PR
Related