Skip to content

Conversation

@skmcgrail
Copy link
Member

Description of changes:

Migrate the Android image build to GitHub workflow managed docker image build. I also have added a helper action ./.github/actions/configure-aws-credentials which will handle logging into the OIDC base-role and then will perform a chained assume role with those credentials to the target roleName. So this is the first workflow that is specifically using the OIDC docker image build role that I will also migrate the other workflows to use, and eventually all workflows that need privileged access to pull container images etc.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.

@skmcgrail skmcgrail requested a review from a team as a code owner November 14, 2025 18:32
@skmcgrail skmcgrail changed the title Gh device farm Android Docker Image Build Nov 14, 2025
torben-hansen
torben-hansen previously approved these changes Nov 14, 2025
justsmth
justsmth previously approved these changes Nov 14, 2025
sgmenda-aws
sgmenda-aws previously approved these changes Nov 14, 2025
Comment on lines +38 to +44
# Set Java 17 as default
export JAVA17_ALT=$(update-alternatives --list java | grep java-17 | head -1)
update-alternatives --set java $JAVA17_ALT

# Set Java 17 for SDK manager compatibility
export JAVA_HOME=$(find /usr/lib/jvm -name "*java-17*" -type d | head -1)
export PATH=$JAVA_HOME/bin:$PATH
Copy link
Contributor

Choose a reason for hiding this comment

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

It isn't immediately obvious to me how we selected Java 17. It might be worth linking to the source of this info. I see it here: https://developer.android.com/build/jdks

Copy link
Member Author

Choose a reason for hiding this comment

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

I actually don't have the context on this myself. Our Android build is in some dire need of some TLC. It's a bit lost due to how the diff is shown, but this was just a straight move of this file, and I converted it to use heredoc syntax. Otherwise content is the same as before with the addition of the adjustment to use the new Go install script like the other images we build. I also say the Android build needs some TLC as our Gradle tends to trend out of date, requiring us to use an older JDK, and then we still use old SDKs etc. Tends to become a problem when we go to debug the occasional failure and realize how much it has drifted in terms of Android development environment changes.

@skmcgrail skmcgrail merged commit e9e19f0 into aws:main Nov 14, 2025
387 of 390 checks passed
@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.22%. Comparing base (da3f27c) to head (5099f0b).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2830      +/-   ##
==========================================
- Coverage   78.24%   78.22%   -0.02%     
==========================================
  Files         683      683              
  Lines      117186   117186              
  Branches    16477    16475       -2     
==========================================
- Hits        91688    91673      -15     
- Misses      24613    24629      +16     
+ Partials      885      884       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants