Skip to content

GitHub App: open beta #12217

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

Open
wants to merge 18 commits into
base: main
Choose a base branch
from
Open

GitHub App: open beta #12217

wants to merge 18 commits into from

Conversation

stsewd
Copy link
Member

@stsewd stsewd commented May 28, 2025

@stsewd stsewd requested a review from a team as a code owner May 28, 2025 18:04
@stsewd stsewd requested a review from humitos May 28, 2025 18:04
@stsewd stsewd requested a review from a team as a code owner May 28, 2025 19:42
@stsewd stsewd requested a review from ericholscher May 28, 2025 19:42
@stsewd stsewd marked this pull request as draft May 28, 2025 19:55
@stsewd stsewd marked this pull request as ready for review May 28, 2025 21:57
@stsewd stsewd mentioned this pull request May 28, 2025
Copy link
Member

@ericholscher ericholscher left a comment

Choose a reason for hiding this comment

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

This looks like a pretty small change to ship it 👍

- `Read the Docs Community <https://github.com/apps/read-the-docs-community/installations/new/>`__
- `Read the Docs Business <https://github.com/apps/read-the-docs-business/installations/new/>`__

Once you have installed the GitHub App, click on the :guilabel:`Projects` tab, and click on :guilabel:`Add project`,
Copy link
Member

Choose a reason for hiding this comment

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

This feels pretty clunky :/ I definitely know we're going to get support on this, and we should make sure we're including this information in the dashboard as well:

Don't see your project listed here? Make sure it's included in the <a>GitHub application</a>

Copy link
Member Author

Choose a reason for hiding this comment

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

We already have this message, wasn't sure where to put that other message related to the GH app...

Screenshot 2025-05-29 at 12-11-03 Add project - Read the Docs Community

Maybe having the two is fine?

Copy link
Member Author

Choose a reason for hiding this comment

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

Copy link
Contributor

Choose a reason for hiding this comment

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

It's not really clear to me what we're trying to solve here, or at least what the aim is on UX.

Is the user expected to have to update their GHA permissions every time they create a project from a new repository?

If so, and this is going to be consistently the case, then we should probably have some better UI for GitHub App users specifically. Basically a more prominent or mandatory block than the "Can't find the repository" block at the bottom, and something explicit and closer to what Eric mentioned above.

If this isn't a standard case, the button at the botton is okay but I'd replace the "Referesh your repositories" button instead of having two buttons for GHA users. Having two buttons is going to result in users clicking both repeatedly trying to figure out which one and which order helps.

Copy link
Member Author

Choose a reason for hiding this comment

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

The buttons solve different issues, one suggest the user to install the app into the repository they want to install, this action needs to be done from GH, the other button resyncs our DB with the repositories the use has access to. When the GH app users shouldn't need to refresh, but it could still be needed.

Copy link
Member Author

Choose a reason for hiding this comment

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

Is the user expected to have to update their GHA permissions every time they create a project from a new repository?

This depends on how the user grants access to repositories to the app, if they select individual projects, then it's needed, if they marked "select all", then there is no need, as GH will install the app on every repository when created.

Copy link
Contributor

Choose a reason for hiding this comment

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

This depends on how the user grants access to repositories to the app,

But not future repositories, correct? We might be somewhere in the middle then, it's going to be common enough that users will get tripped up here but not common enough to make this mandatory, visually.

The buttons solve different issues

I get they have different functions, but my concern is probably more that GHA users shouldn't need to refresh repositories. They definitely shouldn't have to click refresh after clicking to update our GHA permissions. But I thought refresh would be less common with GHA as we have repository create/update events through the webhook now. It's okay if we're not there yet though.

Can follow up more in readthedocs/ext-theme#606 I don't think the docs will change with that PR.

Copy link
Member

@humitos humitos left a comment

Choose a reason for hiding this comment

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

Looks good to me as well.

@stsewd stsewd moved this to Needs review in 📍Roadmap Jun 2, 2025
Copy link
Contributor

@agjohnson agjohnson left a comment

Choose a reason for hiding this comment

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

Seems good so far I think. I noted a number of instances of using "import" to describe project creation, I've been wanting to work towards no using that verb and just describing project creation and repository connection instead.

- `Read the Docs Community <https://github.com/apps/read-the-docs-community/installations/new/>`__
- `Read the Docs Business <https://github.com/apps/read-the-docs-business/installations/new/>`__

Once you have installed the GitHub App, click on the :guilabel:`Projects` tab, and click on :guilabel:`Add project`,
Copy link
Contributor

Choose a reason for hiding this comment

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

It's not really clear to me what we're trying to solve here, or at least what the aim is on UX.

Is the user expected to have to update their GHA permissions every time they create a project from a new repository?

If so, and this is going to be consistently the case, then we should probably have some better UI for GitHub App users specifically. Basically a more prominent or mandatory block than the "Can't find the repository" block at the bottom, and something explicit and closer to what Eric mentioned above.

If this isn't a standard case, the button at the botton is okay but I'd replace the "Referesh your repositories" button instead of having two buttons for GHA users. Having two buttons is going to result in users clicking both repeatedly trying to figure out which one and which order helps.

stsewd and others added 2 commits June 2, 2025 16:29
@humitos
Copy link
Member

humitos commented Jun 17, 2025

This PR seems ready to be merged. There are some ongoing discussions still, but they have their own PRs and/or issues. If there is anything else we need to adapt here, we can do it as we go. Once this code is deployed and users start using this feature, I'm sure we will need to do some quick hotfixes as we find issues. It's not gonna be perfect initially since this work is huge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Needs review
Development

Successfully merging this pull request may close these issues.

GitHub App: remove token after cloning
4 participants