KEMBAR78
Feat: Allow setting security_and_analysis settings in gh repo edit by ChandranshuRao14 · Pull Request #10139 · cli/cli · GitHub
Skip to content

Conversation

@ChandranshuRao14
Copy link
Contributor

Fixes #10091

I took a stab at implementing changes to security_and_analysis properties in gh repo edit. My Go is a bit rusty, but I did my best to match the project's style. Would love any feedback on how to make this better!

A few notes:

  • security_and_analysis properties don't seem to be available in the GraphQL API which is used by interactive mode in gh repo edit. For that reason, I didn't include the ability to change these properties in interactive mode for now.

  • --enable-secret-scanning-push-protection cannot be enabled unless --enable-secret-scanning is enabled, but the API doesn't throw an error for this, the UI will simply not reflect the change. I didn't add a check for this in gh repo edit for now.

  • From this comment on the issue:

TBD: Need to determine what an informative error looks like based on the response from the API, and whether we can do anything valuable.

If a user doesn't have admin permissions:
HTTP 404: Not Found (https://api.github.com/repos/<owner>/<repo>)

If features are not supported:
HTTP 422: Secret scanning is not available for this repository.(https://api.github.com/repos/<owner>/<repo>)

@ChandranshuRao14 ChandranshuRao14 requested a review from a team as a code owner December 24, 2024 19:28
@cliAutomation cliAutomation added the external pull request originating outside of the CLI core team label Dec 24, 2024
Copy link
Contributor

@jtmcg jtmcg left a comment

Choose a reason for hiding this comment

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

Really good start, here! I was confused about why this looks so different from the other edit fields when I first dived into this, but after digging into the docs I understand why you wrote it the way you did 🙌

I've left a few comments about some slight changes to logical grouping and testing that I think we can leverage to make this easier to parse and understand. I hope I did a good job explaining my thoughts, but I'm happy to write some code to demonstrate what I mean if that would be helpful.

Copy link
Contributor

@jtmcg jtmcg left a comment

Choose a reason for hiding this comment

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

Changes are great! One more change and test required, I think. Thanks for the timely edits on this

@ChandranshuRao14 ChandranshuRao14 requested a review from jtmcg January 3, 2025 20:17
Copy link
Contributor

@jtmcg jtmcg left a comment

Choose a reason for hiding this comment

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

🔥 :shipit: Nice work, @ChandranshuRao14! I appreciate all the back and forth. This was a fun one, for sure 🙌

@jtmcg jtmcg enabled auto-merge January 4, 2025 00:13
@jtmcg jtmcg merged commit 2ec473f into cli:trunk Jan 4, 2025
@ChandranshuRao14 ChandranshuRao14 deleted the feat/repo-edit-security-analysis branch January 4, 2025 05:33
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Jan 8, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [cli/cli](https://github.com/cli/cli) | minor | `v2.64.0` -> `v2.65.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>cli/cli (cli/cli)</summary>

### [`v2.65.0`](https://github.com/cli/cli/releases/tag/v2.65.0): GitHub CLI 2.65.0

[Compare Source](cli/cli@v2.64.0...v2.65.0)

#### What's Changed

-   Document the base repo resolution functions by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10110
-   Update releasing.md by [@&#8203;andyfeller](https://github.com/andyfeller) in cli/cli#10116
-   Document how to set gh-merge-base by [@&#8203;heaths](https://github.com/heaths) in cli/cli#10112
-   Upgrade golang.org/x/net to v0.33.0 by [@&#8203;jtmcg](https://github.com/jtmcg) in cli/cli#10135
-   add pending status for workflow runs by [@&#8203;dziamidchyk](https://github.com/dziamidchyk) in cli/cli#10143
-   Remove release discussion posts and clean up related block in deployment yml by [@&#8203;shauryatiwari1](https://github.com/shauryatiwari1) in cli/cli#10145
-   docs(repo): make explicit which branch is used when creating a repo by [@&#8203;nobe4](https://github.com/nobe4) in cli/cli#10163
-   feat: Add support for listing autolink references by [@&#8203;hoffm](https://github.com/hoffm) in cli/cli#10124
-   Add mention of classic token in gh auth login docs by [@&#8203;jtmcg](https://github.com/jtmcg) in cli/cli#10164
-   Feat: Allow setting security_and_analysis settings in gh repo edit by [@&#8203;ChandranshuRao14](https://github.com/ChandranshuRao14) in cli/cli#10139
-   Upgrade generated workflows by [@&#8203;jsoref](https://github.com/jsoref) in cli/cli#10181
-   Myriad fixes to provide clarity on determining tracking ref in MR create by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10187
-   Handle missing upstream configs for `gh pr create`  by [@&#8203;cmbrose](https://github.com/cmbrose) in cli/cli#10177
-   fix(repo fork): add non-TTY output when fork is newly created by [@&#8203;aryanbhosale](https://github.com/aryanbhosale) in cli/cli#10158
-   Bump cli/go-gh for indirect security vulnerability by [@&#8203;andyfeller](https://github.com/andyfeller) in cli/cli#10190

#### New Contributors

-   [@&#8203;dziamidchyk](https://github.com/dziamidchyk) made their first contribution in cli/cli#10143
-   [@&#8203;shauryatiwari1](https://github.com/shauryatiwari1) made their first contribution in cli/cli#10145
-   [@&#8203;hoffm](https://github.com/hoffm) made their first contribution in cli/cli#10124
-   [@&#8203;ChandranshuRao14](https://github.com/ChandranshuRao14) made their first contribution in cli/cli#10139

**Full Changelog**: cli/cli@v2.64.0...v2.65.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 MR becomes conflicted, or you tick the rebase/retry checkbox.

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

---

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

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS45MS4yIiwidXBkYXRlZEluVmVyIjoiMzkuOTEuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external pull request originating outside of the CLI core team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow setting security_and_analysis settings in gh repo edit

3 participants