-
-
Notifications
You must be signed in to change notification settings - Fork 390
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
Add a basic how-to for building apps in GitHub CI #1980
Conversation
ece0619
to
320939d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 to the general direction of this. Yes, it's only covers the fairly obvious stuff, but that's an important first step. If we end up developing a re-usable action, then these instructions get simpler; but in the meantime, having something answers a moderately common question.
* So, for a pull request (PR), this is the code being submitted in the PR | ||
* After the PR is merged, this it is the code in your default branch | ||
|
||
* Install Python 3.12 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should probably clarify that this example workflow uses 3.12, but you can use any support Python version.
The same set of steps are used for each platform via a `matrix strategy | ||
<https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/running-variations-of-jobs-in-a-workflow>`__. | ||
This will create a separate job for each target platform with specific | ||
configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could be explicit here about adding other platforms - "this sample packages for macOS, ...; if you wanted to add an Ubuntu 22.04 build, add another matrix entry " etc
${{ matrix.briefcase-args }} | ||
|
||
- name: Upload App | ||
if: matrix.target != 'iOS' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should clarify why this is with a comment.
docs/how-to/ci.rst
Outdated
* Build the test version of the app | ||
* Run the test suite | ||
* Package the release version of the app for the platform | ||
* Upload the distributable artifact created for the platform |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Configuring signing etc is ultimately an important step; we might want to (a) add a comment here that artefacts will be unsigned/adhoc-signed, and/or (b) put in a placeholder "how to configure signing" section heading with a link to the manual signing HOWTO instructions.
changes/xxx.doc.rst
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This can be 400.doc.rst; this is a direct response to the "document CI processes", even if it doesn't completely resolve that issue
Beefed this guide up a bit with your recommendations. |
one more fix inbound; gonna move setting up KVM to |
All right; all edits done now :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great!
Changes
Notes
Refs #400.
PR Checklist: