Skip to content

Initial RDK CI support - #5338

Merged
niranjanyardi merged 3 commits into
youtube:25.lts.1+from
andrunko:rdk-ci-support
May 29, 2025
Merged

niranjanyardi merged 3 commits into
youtube:25.lts.1+from
andrunko:rdk-ci-support

Conversation

@andrunko

@andrunko andrunko commented Apr 9, 2025 •

Copy link
Copy Markdown
Collaborator

Add github actions to build RDK evergreen platform
Depends on #5166.

b/406991008

@andrunko andrunko changed the title Initial RDK ci support Initial RDK CI support Apr 9, 2025
@niranjanyardi

Copy link
Copy Markdown
Member

Blocked by open sourcing the BSP

@andrunko
andrunko force-pushed the rdk-ci-support branch 2 times, most recently from b7d07a4 to 3a3614f Compare April 11, 2025 02:45
Comment thread .github/config/rdk-arm.json Resolved
@andrunko
andrunko force-pushed the rdk-ci-support branch 5 times, most recently from a9f7387 to dd56ec4 Compare May 23, 2025 15:00
@andrunko

Copy link
Copy Markdown
Collaborator Author

Some notes on changes:

  • This PR enables only evergreen builds for RDK (modular builds currently not supported)
  • It enables sbversion-14/15/16 for the evergreen-rdk-arm-hardfp config which uses rdk-arm as the evergreen loader, same as the evergreen-arm-hardfp which uses raspi-2 as the evergreen loader
  • I had to add a new CI param to pass some extra targets to build (i.e. loader_app_bin and elf_loader_sandbox_bin) as they are currently not built by default:
    • this is similar to how we pass extra_gn_arguments, but using extra_build_targets instead
  • On device tests are currently disabled as we don't have an RDK device on CI to run the tests yet

@andrunko
andrunko requested a review from niranjanyardi May 23, 2025 16:01
@@ -26,14 +27,18 @@ runs:
else
BUILD_PLATFORM=${COBALT_EVERGREEN_LOADER}
BUILD_TARGET='loader_app_install elf_loader_sandbox_install native_target/crashpad_handler'

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Can you inline ${{ matrix.evergreen_loader_extra_build_targets }} in this line instead?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Yes, I could, I was just trying to follow the same pattern used for extra_gn_arguments in .github/actions/build/action.yaml. That said, would you still prefer inline? Please let me know and I will update accordingly.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

File level nit: pad variable name with spaces in the double curlies:

${{matrix.extra_build_targets}} -> ${{ matrix.extra_build_targets }}

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

That is fine to me, but similar to the previous comment, I was trying to follow the pattern already used in the file where they usually (in most cases) don't pad with spaces (same is valid for other actions (e.g. .github/actions/gn/action.yaml). Please confirm if you'd still want this change and if so whether to update only the lines I'm touching for the changes here or to update the whole file.

@niranjanyardi niranjanyardi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm apart from the open comments by oxv

@niranjanyardi

Copy link
Copy Markdown
Member

@oxve both the changes look like nits to me .

We can ask Andre to work on them in a follow up

@isarkis

isarkis commented May 29, 2025

Copy link
Copy Markdown
Member

gemini /review

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Hi @isarkis, thanks for the request! It looks like you tried to invoke the /gemini review command. Currently, I'm not able to perform a full code review triggered by this command. My capabilities are limited to responding to comments and providing suggestions within those comments. If you have specific questions about the code or want feedback on particular parts, feel free to ask in a comment, and I'll do my best to help!

@niranjanyardi
niranjanyardi merged commit 854aab9 into youtube:25.lts.1+ May 29, 2025

# TODO(b/402053134): fetch and extract the RDK sysroot at $RDK_HOME, once the sysroot is public available
# Get the toolchain package.
RUN cd /tmp \

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@andrunko can we please change this command to reuse the script: starboard/contrib/rdk/src/third_party/starboard/rdk/arm/tools/download_and_install_rdk_bsp.sh

We are using the same scripts for developers to install it locally, we can resue it in the docker container

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