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

Update google-credentials.md to match new flow for Google Play API Key generation #1218

Merged
merged 9 commits into from
Oct 21, 2023

Conversation

Lutzifer
Copy link
Contributor

@Lutzifer Lutzifer commented Oct 17, 2023

Description

Google changed a lot of the flow to add the service account user, so I documented the new flow the best I can.

I have not been able to verify this completely (the google account of the customer is still waiting for verification from Googles side) but

fastlane run validate_play_store_json_key json_key:service.json

succeeds.

Links

Resolves fastlane/fastlane#20721
Resolves #1217
Resolves #1166

Copy link
Member

@rogerluan rogerluan left a comment

Choose a reason for hiding this comment

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

Thanks for taking the time to update these docs @Lutzifer !

We're debating whether we want to include a link to Google's Getting Started docs and removing this from our responsibility, but at the same time I feel like having our own docs makes it much easier and clearer to readers how to do things the proper way, tailored for supply.

I left some comments on how I think we can improve wording and perhaps formatting. And I invite @AliSoftware to chime in here 🤗

Thanks once again for this PR! 🙏

docs/includes/google-credentials.md Outdated Show resolved Hide resolved
docs/includes/google-credentials.md Outdated Show resolved Hide resolved
docs/includes/google-credentials.md Outdated Show resolved Hide resolved
docs/includes/google-credentials.md Outdated Show resolved Hide resolved
docs/includes/google-credentials.md Outdated Show resolved Hide resolved
docs/includes/google-credentials.md Outdated Show resolved Hide resolved
1. Provide a `Service account name` and click **Create**
1. Verify that you are on the correct Google Cloud Platform Project by looking for the **Developer Account ID** from earlier within the light gray text in the second input, preceding `.iam.gserviceaccount.com`. If not, open the picker in the top navigation bar, and find the one with the **ID** that contains it
1. Provide a `Service account name` (e.g. fastlane-supply) and click **Create**
1. Copy the generated E-Mail address that is noted below the ServiceAccount-ID field for later use
1. Click **Select a role**, then find and select **Service Account User**, and proceed
Copy link
Member

Choose a reason for hiding this comment

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

We have reports (#1166) stating that this user doesn't need any role, apparently. I wasn't able to confirm this personally yet, but I think a friend of mine also observed this (although he can't tell for sure). Can anyone confirm whether we can create an account in Google Cloud Console without any role, and then configure the Service Account User all the permission it needs via Google Play Console? 👀 that would be waaay better

@Lutzifer
Copy link
Contributor Author

We're debating whether we want to include a link to Google's Getting Started docs and removing this from our responsibility, but at the same time I feel like having our own docs makes it much easier and clearer to readers how to do things the proper way, tailored for supply.

I tried to do it using only the google docs and it... didn't work out. It was mostly the "Put an email address for your service account in the email address field" which sounded like "enter any email for this" and not "copy it from earlier"

Lutzifer and others added 2 commits October 18, 2023 09:15
Co-authored-by: Roger Oba <rogerluan.oba@gmail.com>
Copy link
Member

@rogerluan rogerluan left a comment

Choose a reason for hiding this comment

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

Indenting based on which page the user's in is much much better! Thanks!

This is good to go IMO 🚀

I agree with your point by the way, about Google's documentation being poor. It's overly simplistic, thus not specific or detailed enough, often leading to issues or misunderstandings like the one you just mentioned. I lean more towards adding a line at the end of the instructions as a fallback/troubleshooting notice, such as

Note: if you face issues when following these instructions, you might want to refer to the official documentation by Google: https://developers.google.com/android-publisher/getting_started

WDYT of this approach? IMO it's the best of both worlds: we take the user by the hand and guide them through success, but also offer a fallback option if they encounter issues in the future. That is, assuming Google doesn't break that URL whenever they update their process and docs next year 🙃🙃🙃

@rogerluan rogerluan changed the title Update google-credentials.md to match new invitation flow Update google-credentials.md to match new flow for Google Play API Key generation Oct 18, 2023
@rogerluan rogerluan changed the title Update google-credentials.md to match new flow for Google Play API Key generation Update google-credentials.md to match new flow for Google Play API Key generation Oct 18, 2023
@Lutzifer
Copy link
Contributor Author

Indenting based on which page the user's in is much much better! Thanks!

This is good to go IMO 🚀

I agree with your point by the way, about Google's documentation being poor. It's overly simplistic, thus not specific or detailed enough, often leading to issues or misunderstandings like the one you just mentioned. I lean more towards adding a line at the end of the instructions as a fallback/troubleshooting notice, such as

Note: if you face issues when following these instructions, you might want to refer to the official documentation by Google: https://developers.google.com/android-publisher/getting_started

WDYT of this approach? IMO it's the best of both worlds: we take the user by the hand and guide them through success, but also offer a fallback option if they encounter issues in the future. That is, assuming Google doesn't break that URL whenever they update their process and docs next year 🙃🙃🙃

yep, adding this info is a good idea I think, go ahead!

@rogerluan
Copy link
Member

rogerluan commented Oct 19, 2023

Just waiting to get a 3rd opinion from @AliSoftware 🤗

Copy link
Contributor

@AliSoftware AliSoftware left a comment

Choose a reason for hiding this comment

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

Approving in terms of formatting (kudos for improving the steps indentation structure) and us keeping our own dedicated instructions in our repo instead of just linking to the docs.

I am unable to test the individual steps myself (let alone being able to check if the user doesn't need any role or not) because I don't have the necessary access/permissions on our work's Google Play account to try them out (that account is managed by our systems team).

So I'm just trust that the new instructions are correct and that someone tested them and only approving the form.

@rogerluan
Copy link
Member

Ahh good reminder @AliSoftware ! I did test this and it doesn't need any permissions in Google Cloud Console indeed!! 🤩

I'll make some adjustments to this PR if you don't mind @Lutzifer 🤗

@Lutzifer
Copy link
Contributor Author

Good to know we do not need the roles, thx for testing. Change whatever you want 🙂

Copy link
Member

@rogerluan rogerluan left a comment

Choose a reason for hiding this comment

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

There! I think I finally nailed the formatting of the image now so that the image is kept within the right indentation 😅

Wanna take a look at the final outcome @Lutzifer and lmk what you think of the wording and overall changes I made? :)

If everything checks out, this is ready to be merged 🚀

@rogerluan
Copy link
Member

@Lutzifer
Copy link
Contributor Author

Lutzifer commented Oct 20, 2023 via email

@rogerluan rogerluan merged commit 253aa71 into fastlane:master Oct 21, 2023
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants