question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Improved documentation (and potentially tooling) around iOS/Android deployment

See original GitHub issue

Hi!

I’ve noticed that a disproportionate amount of questions in the Discord are centered around setting up mobile deployment. Both the current GameCI deployment docs and Fastlane’s own documentation assume strong familiarity with the iOS and Android codesigning and build processes, moreso than e.g. what the unity-builder docs assume about the Unity build pipeline. A lot of game devs hoping to deploy their GameCI-powered builds to iOS and Android don’t have that familiarity. Bridging that knowledge gap could do a lot to reduce dev confusion, and I’d love to help with that.

On a basic level, I think it makes sense to revamp the GameCI mobile deployment docs (iOS and Android on both GitHub and GitLab) to provide a more explicit introduction to Fastlane, walking through how to set it up for a given platform in more detail than the docs currently do. I’m happy to take a stab at a draft of this, provided there’s interest.

Additionally, I have a proof-of-concept project (https://github.com/lazerwalker/boatattack) that uses GH Actions to completely manage the iOS codesigning process, including doing initial certificate generation on a Mac runner without requiring manually operating a physical Mac. I’m in the process of adapting this to something more composable, most likely a set of Actions to generate codesigning certificates and store them in a git repo via match, build and codesign an iOS or Android project generated by Unity, and upload builds to TestFlight/App Store/Google Play. These would be mostly pre-configured “it just works” actions with a few configuration points, with additional direct access to the underlying code so people who want to fork and more heavily customize can do so beyond what you would expect from Actions parameters.

In short, this work aims to abstract away knowledge of Fastlane for happy-path scenarios, the same way the unity-builder action does for Unity’s command-line interface.

I’m wondering if this is something that might potentially be worth including as “part of GameCI” (hosting the Actions in the GameCI GH org, and hosting docs on the main site). Technically, this isn’t Unity specific, it’s just a set of wrappers around Fastlane. But providing this tooling will be particularly valuable to game devs without iOS/Android native dev experience, and I think there’s a great deal of discoverability value in having it live under the GameCI branding umbrella instead of off to the side.

So, I really have two questions:

  1. If I were to put together a draft of updated deploy docs that were more targeted at folks unfamiliar with the iOS/Android codesigning processes or Fastlane, would that be welcome?
  2. Is there tentatively interest in those mobile codesigning- and deployment-focused Actions? I’m obviously not expecting a firm answer when I can’t yet point to concrete code, and there are questions around future maintenance plans, etc, but it would be good to get a general sense if this is something people think would even remotely be a fit for the GameCI org. Especially since any updates to the existing deployment docs would likely differ based on whether or not we have a more streamlined workflow to recommend to newcomers.

Let me know your thoughts!

Issue Analytics

  • State:open
  • Created 2 years ago
  • Reactions:4
  • Comments:10 (8 by maintainers)

github_iconTop GitHub Comments

3reactions
lazerwalkercommented, Mar 2, 2022

Re: linking to a getting started guide, I think what’s tricky is the Fastlane documentation is (reasonably and correctly!) speaking to an audience of iOS and Android devs, which is an assumption we can’t make. I’m proposing that I take a stab at a new “getting started” guide that assumes a Unity dev with no knowledge of Xcode or Android Studio.

I have answers to a lot of those (legitimately hard, important, and open-ended!) questions about how I think a set of happy path Fastlane actions would work, what can and can’t be streamlined, and what the correct abstraction level is. But it seems to me like we’re already at a point where me showing off working actions would be infinitely more productive than going back-and-forth here😅. Will loop back later on that when I have more to show.

2reactions
lazerwalkercommented, May 13, 2022

Cool, to just keep updating in here, I took a stab at combining those two workflows into one, and the act of doing it made me realize it’s a bad idea. It’s totally doable, but combining the two into one workflow means you still need a separate workflow to run once a year (or whatever) in order to regenerate certificates, since the init script fails out if it’s already configured (and modifying that behavior would be doable, but probably inadvisable for a number of reasons).

At this point, I strongly suspect my one remaining action item is taking my two initialization workflows as-is (one that configures a Match repo, one that generates certs) and adding a section or two to the iOS deployment docs that includes those workflow files and explains how to use them.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Issues · game-ci/documentation - GitHub
Contribute to game-ci/documentation development by creating an account on GitHub. ... Improved documentation (and potentially tooling) around iOS/Android ...
Read more >
What's new in Azure Active Directory - Microsoft Learn
Learn what is new with Azure Active Directory; such as the latest release notes, known issues, bug fixes, deprecated functionality, ...
Read more >
Deploying VMware Workspace ONE Tunnel
Explore how to configure and deploy VMware Workspace ONE® Tunnel to enable per-app VPN across iOS, Android, macOS, and Windows.
Read more >
Top 5 Enterprise Document Management Systems in 2021
With an EDMS, businesses can forgo maintaining troves of paper documents while also improving productivity with easy document access and ...
Read more >
How to Build a Mobile App - Amazon Web Services (AWS)
This article is part of a technical content series crafted by AWS Startup Solutions Architects to help guide early stage startups in setting...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found