Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GitHub org ignore archived repos #1833

Merged

Conversation

felixlut
Copy link
Contributor

Resolves #1826


Before the change?

  • The repositories attribute of a github_organization always included all repos in the entire Organziation, including archived ones.

After the change?

  • The repositories attribute of a github_organization can now selectively ignore archived repos for the repositories attribute.

Pull request checklist

  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been reviewed and added / updated if needed (for bug fixes / features)

Does this introduce a breaking change?

No

Please see our docs on breaking changes to help!

  • Yes
  • No

`, randomID, testOrganization, testOrganization)

check := resource.ComposeTestCheckFunc(
resource.TestCheckOutput("should_be_false", "false"),
Copy link
Contributor Author

@felixlut felixlut Aug 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kfcampbell this test is based on the ones I found here, where it appears that TestCheckOutput() handles the conversions of bools and strings, i.e., false --> "false". That code uses terraform-plugin-sdk/v2, while the GitHub provider uses v1. Is there a reason for not using v2 here?

I think I read somewhere in the contribution docs that you guys don't want the developer community to mess with bumping dependencies ourselves, which is why I'm asking 😄

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reason is due to lack of prioritization of #1780, not anything super intentional. I'm fine adding v2 as a dependency since we'll need to cut over to it anyways.

Copy link
Contributor Author

@felixlut felixlut Aug 12, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So how do we move forward here? Should I wait until #1780 is merged, or import and use v2 in data_source_github_organization_test.go only (if that is even possible, haven't dealt much with golang dependencies and vendoring before)? I don't care about getting this in fast, so if it takes another couple of weeks for #1780, I'm fine to wait

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's move forward with your second option. The approach you describe is indeed possible and I think it's unlikely #1780 is going to be merged in the near future.

Copy link
Contributor Author

@felixlut felixlut Aug 27, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I played around a bit with option 2, but I think using both v1 and v2 of the sdk is not compatible, at least not without doing some real weird stuff.

First of you need to use a version of the sdk before v2.10.1 (which released in dec 2021). Using a later version requires a bump of terraform-exec, to a version above v0.16.0, which deprecated the tfinstall package that v1 of the sdk depends on

I just go stuck with the tests using the testAccProviders (defined in github/provider_test.go), which uses v1. They cannot be used for the v2 tests in github/data_source_github_organization_test.go.

I looked into using the terraform-plugin-testing package as well, since that is the recommended solution for testing, but that seems to require v2 as well. I'm not spending anymore time investigating it, I'll wait for #1780. Unless you have some idea of how to test this feature that wont require a bump to v2?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh gross...thanks for doing the legwork on that! I'm 👍 on waiting for now.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you're interested in picking up #1780 and fixing the build errors, please feel free! You should be able to create a new PR off of my branch if you desire.

Copy link
Contributor Author

@felixlut felixlut Sep 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kfcampbell that thought did cross my mind, especially since the time I spent working around it could have been enough to just make it work properly. I learnt a lot about go dependencies at least 😅

I may take a look later

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haha, I'm glad you were able to take something positive out of it! Should you end up deciding to do so, I'd be happy to look at it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the new release this actually works, I've tested it locally.

@felixlut felixlut changed the title GitHub org ignore archived repos [WIP] GitHub org ignore archived repos Feb 18, 2024
@felixlut felixlut marked this pull request as ready for review February 18, 2024 17:37
@felixlut
Copy link
Contributor Author

@kfcampbell with the completion of #1780 this now works locally, along with the test for it

Copy link
Member

@kfcampbell kfcampbell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm glad the SDK bump unblocked this work! Confirming that the added integration test is passing for me.

@kfcampbell kfcampbell merged commit 4ca9b21 into integrations:main Mar 4, 2024
3 checks passed
kireque pushed a commit to kireque/home-ops that referenced this pull request Mar 7, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github](https://registry.terraform.io/providers/integrations/github)
([source](https://togithub.com/integrations/terraform-provider-github))
| required_provider | patch | `6.0.0` -> `6.0.1` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>integrations/terraform-provider-github (github)</summary>

###
[`v6.0.1`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.0.1)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.0...v6.0.1)

#### What's Changed

- build(deps): bump github.com/golangci/golangci-lint from 1.56.1 to
1.56.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2159
- build(deps): bump github.com/hashicorp/terraform-plugin-sdk/v2 from
2.31.0 to 2.32.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2160
- build(deps): bump github.com/hashicorp/terraform-plugin-sdk/v2 from
2.32.0 to 2.33.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2168
- Fix github_external_groups page title by
[@&#8203;tomasmota](https://togithub.com/tomasmota) in
[integrations/terraform-provider-github#2170
- docs: Update example usage to use version 6.0 by
[@&#8203;rnestler](https://togithub.com/rnestler) in
[integrations/terraform-provider-github#2169
- fix: Make allowed_actions_config optional by
[@&#8203;Danielku15](https://togithub.com/Danielku15) in
[integrations/terraform-provider-github#2114
- GitHub org ignore archived repos by
[@&#8203;felixlut](https://togithub.com/felixlut) in
[integrations/terraform-provider-github#1833
- build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2177
- build(deps): bump golang.org/x/crypto from 0.19.0 to 0.21.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2180
- build(deps): bump actions/add-to-project from 0.5.0 to 0.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2175

#### New Contributors

- [@&#8203;tomasmota](https://togithub.com/tomasmota) made their first
contribution in
[integrations/terraform-provider-github#2170
- [@&#8203;rnestler](https://togithub.com/rnestler) made their first
contribution in
[integrations/terraform-provider-github#2169
- [@&#8203;Danielku15](https://togithub.com/Danielku15) made their first
contribution in
[integrations/terraform-provider-github#2114

**Full Changelog**:
integrations/terraform-provider-github@v6.0.0...v6.1.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yMjcuMCIsInVwZGF0ZWRJblZlciI6IjM3LjIyNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: kireque-bot[bot] <143391978+kireque-bot[bot]@users.noreply.github.com>
antnsn added a commit to CMCS-Norway/github-governance that referenced this pull request Mar 14, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github](https://registry.terraform.io/providers/integrations/github)
([source](https://togithub.com/integrations/terraform-provider-github))
| required_provider | minor | `6.0.0-beta` -> `6.1.0` |

---

### Release Notes

<details>
<summary>integrations/terraform-provider-github (github)</summary>

###
[`v6.1.0`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.1.0)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.1...v6.1.0)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

##### What's Changed

- fix: validation rule for `results_per_page` of `github_repositories`
data source by [@&#8203;dschniepp](https://togithub.com/dschniepp) in
[integrations/terraform-provider-github#2185
- fix: Prevent loading of allowed actions if not configured by
[@&#8203;Danielku15](https://togithub.com/Danielku15) in
[integrations/terraform-provider-github#2186
- fix(data_source_github_rest_api): only allow for 404 on err by
[@&#8203;riezebosch](https://togithub.com/riezebosch) in
[integrations/terraform-provider-github#2154
- fix: error if autolink reference not found by
[@&#8203;bradam12](https://togithub.com/bradam12) in
[integrations/terraform-provider-github#2164
- feat: Add `github_actions_enterprise_permissions` by
[@&#8203;ErikElkins](https://togithub.com/ErikElkins) in
[integrations/terraform-provider-github#2155
- docs: configure release notes categories based on labels by
[@&#8203;laughedelic](https://togithub.com/laughedelic) in
[integrations/terraform-provider-github#2184

##### New Contributors

- [@&#8203;dschniepp](https://togithub.com/dschniepp) made their first
contribution in
[integrations/terraform-provider-github#2185
- [@&#8203;riezebosch](https://togithub.com/riezebosch) made their first
contribution in
[integrations/terraform-provider-github#2154
- [@&#8203;bradam12](https://togithub.com/bradam12) made their first
contribution in
[integrations/terraform-provider-github#2164
- [@&#8203;ErikElkins](https://togithub.com/ErikElkins) made their first
contribution in
[integrations/terraform-provider-github#2155
- [@&#8203;laughedelic](https://togithub.com/laughedelic) made their
first contribution in
[integrations/terraform-provider-github#2184

**Full Changelog**:
integrations/terraform-provider-github@v6.0.1...v6.1.0

###
[`v6.0.1`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.0.1)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.0...v6.0.1)

#### What's Changed

- build(deps): bump github.com/golangci/golangci-lint from 1.56.1 to
1.56.2 by [@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2159
- build(deps): bump github.com/hashicorp/terraform-plugin-sdk/v2 from
2.31.0 to 2.32.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2160
- build(deps): bump github.com/hashicorp/terraform-plugin-sdk/v2 from
2.32.0 to 2.33.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2168
- Fix github_external_groups page title by
[@&#8203;tomasmota](https://togithub.com/tomasmota) in
[integrations/terraform-provider-github#2170
- docs: Update example usage to use version 6.0 by
[@&#8203;rnestler](https://togithub.com/rnestler) in
[integrations/terraform-provider-github#2169
- fix: Make allowed_actions_config optional by
[@&#8203;Danielku15](https://togithub.com/Danielku15) in
[integrations/terraform-provider-github#2114
- GitHub org ignore archived repos by
[@&#8203;felixlut](https://togithub.com/felixlut) in
[integrations/terraform-provider-github#1833
- build(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2177
- build(deps): bump golang.org/x/crypto from 0.19.0 to 0.21.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2180
- build(deps): bump actions/add-to-project from 0.5.0 to 0.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2175

#### New Contributors

- [@&#8203;tomasmota](https://togithub.com/tomasmota) made their first
contribution in
[integrations/terraform-provider-github#2170
- [@&#8203;rnestler](https://togithub.com/rnestler) made their first
contribution in
[integrations/terraform-provider-github#2169
- [@&#8203;Danielku15](https://togithub.com/Danielku15) made their first
contribution in
[integrations/terraform-provider-github#2114

**Full Changelog**:
integrations/terraform-provider-github@v6.0.0...v6.1.0

###
[`v6.0.0`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.0.0)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.0-rc2...v6.0.0)

#### v6.0.0

Includes the following changes:

-
[#&#8203;1704](https://togithub.com/integrations/terraform-provider-github/issues/1704)
-
[#&#8203;2045](https://togithub.com/integrations/terraform-provider-github/issues/2045)
-
[#&#8203;1780](https://togithub.com/integrations/terraform-provider-github/issues/1780)
-
[#&#8203;1918](https://togithub.com/integrations/terraform-provider-github/issues/1918)
-
[#&#8203;2133](https://togithub.com/integrations/terraform-provider-github/issues/2133)

As we've upgraded Terraform SDK versions and are checking more errors,
you may see slightly different logging and error messages. Please use
the project's issues to report anything unexpected or buggy!

**Full Changelog**:
integrations/terraform-provider-github@v5.45.0...v6.0.0

###
[`v6.0.0-rc2`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.0.0-rc2)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.0-rc1...v6.0.0-rc2)

#### What's Changed

- fix(resource_github_release): Handle missing release in read by
[@&#8203;arunsathiya](https://togithub.com/arunsathiya) in
[integrations/terraform-provider-github#2115
- docs: update commit_message arg desc for repository_file resource by
[@&#8203;manjinder-mckc](https://togithub.com/manjinder-mckc) in
[integrations/terraform-provider-github#2125
- Set group_id correctly in EMU mapping resource by
[@&#8203;kfcampbell](https://togithub.com/kfcampbell) in
[integrations/terraform-provider-github#2133

#### New Contributors

- [@&#8203;arunsathiya](https://togithub.com/arunsathiya) made their
first contribution in
[integrations/terraform-provider-github#2115

**Full Changelog**:
integrations/terraform-provider-github@v6.0.0-rc1...v6.0.0-rc2

###
[`v6.0.0-rc1`](https://togithub.com/integrations/terraform-provider-github/releases/tag/v6.0.0-rc1)

[Compare
Source](https://togithub.com/integrations/terraform-provider-github/compare/v6.0.0-beta...v6.0.0-rc1)

#### What's Changed

- fix: github_rest_api data source always returns header and body as
null by [@&#8203;srgustafson8](https://togithub.com/srgustafson8) in
[integrations/terraform-provider-github#2110
- build(deps): bump peter-evans/create-or-update-comment from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2121
- build(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[integrations/terraform-provider-github#2120
- Add support for packages IP ranges in github_ip_ranges by
[@&#8203;Nmishin](https://togithub.com/Nmishin) in
[integrations/terraform-provider-github#1958
- Fix restrict pushes on github_branch_protection. Fix branch protection
tests by [@&#8203;georgekaz](https://togithub.com/georgekaz) in
[integrations/terraform-provider-github#2045

#### New Contributors

- [@&#8203;georgekaz](https://togithub.com/georgekaz) made their first
contribution in
[integrations/terraform-provider-github#2045

**Full Changelog**:
integrations/terraform-provider-github@v6.0.0-beta...v6.0.0-rc1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/CMCS-Norway/github-governance).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNDUuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI0NS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
@felixlut felixlut deleted the github-org-ignore_archived_repos branch March 27, 2024 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEAT]: allow filtering of archived repos in github_organization
2 participants