Skip to content

ci: Enable raspi ODTs #6371

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

Draft
wants to merge 30 commits into
base: main
Choose a base branch
from
Draft

ci: Enable raspi ODTs #6371

wants to merge 30 commits into from

Conversation

oxve
Copy link
Contributor

@oxve oxve commented Jul 10, 2025

Generalize the artifact packing and add the necessary config to enable tests.

Bug: 428987532

@oxve oxve added the on_device Trigger on-device tests label Jul 10, 2025
@oxve oxve requested review from andrewsavage1 and Libzu July 10, 2025 23:00
oxve and others added 25 commits July 10, 2025 23:01
commit c87ffbc
Author: Felipe Mira <[email protected]>
Date:   Wed Jul 9 20:46:39 2025 +0000

    Fix pylint error due to device_type

commit 9d885fa
Author: Felipe Mira <[email protected]>
Date:   Wed Jul 9 20:32:23 2025 +0000

    Not renaming test results + device_family options modification

commit 4ba7e18
Author: Felipe Mira <[email protected]>
Date:   Wed Jul 9 18:55:28 2025 +0000

    Added choiced to --retry_level arg + TODO msg

commit 1a9bc00
Author: Felipe Mira <[email protected]>
Date:   Wed Jul 9 00:45:57 2025 +0000

    Move retry_level to default test_args

commit ccc45ef
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 8 23:43:09 2025 +0000

    Pass retry_level from command line arg

commit 8c34719
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 8 23:24:05 2025 +0000

    change RETRY LEVEL from ERROR to FAIL

commit 6ad2878
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 8 21:58:42 2025 +0000

    pylint fix

commit eb7dfcb
Merge: ce3e77d fd25c96
Author: Felipe Javier Mira Bocca <[email protected]>
Date:   Tue Jul 8 14:23:55 2025 -0700

    Merge branch 'main' into odt_vega_branch

commit ce3e77d
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 8 21:21:08 2025 +0000

    fix for map issue in unit_tests

commit e07d669
Merge: b5f3204 05833a5
Author: Igor Sarkisov <[email protected]>
Date:   Mon Jul 7 16:25:40 2025 -0700

    Merge branch 'main' into odt_vega_branch

commit b5f3204
Author: Felipe Mira <[email protected]>
Date:   Mon Jul 7 22:26:40 2025 +0000

    ODT gateway - address review comments

commit f4546d7
Author: Colin Liang <[email protected]>
Date:   Mon Jul 7 15:04:17 2025 -0700

    Downgrade the log to info level (youtube#6311)

    These logs were added in youtube#4359,
    they should be info level at most.
    Bug: 376348543
    Change-Id: I015b4ca986eec6f00d097925cbcdee3f45e449b8

commit 4c0f581
Author: Colin Liang <[email protected]>
Date:   Mon Jul 7 14:43:34 2025 -0700

    Make ContentViewRenderView 's background color Transparent (youtube#6285)

    1. Revert the changes to set VideoSurfaceView as Black color on
    background when the app starts.
    2. Set ContentViewRenderView 's background to transparent after it is
    created.

    Bug: 427562307
    Bug: 424466921

    Change-Id: I73759f7cfd8f9238386db92c842cc13bb8af1de3

commit 81b7365
Author: Kyujung Youn <[email protected]>
Date:   Mon Jul 7 14:42:38 2025 -0700

    Import check_op.h (e.g SB_CHECK_EQ) to starboard/ (from base/) (youtube#6274)

    This PR copied/modified  base/check_op.[h|cc] to starboard/common

    This file includes macros to help debugging. (i.e. SB_CHECK_EQ,
    SB_CHECK_GT)

    Issue: 422171597

commit 1361f2c
Author: Yavor Goulishev <[email protected]>
Date:   Mon Jul 7 12:53:15 2025 -0700

    Remove the SABI check hack (youtube#6286)

    After performing clean builds I was able to
    confirm that the hack is not needed. Most
    likely the reason I saw the initial failure
    was because of mixing Evergreen and Modular builds.

    Issue: 428765497

commit 5c85dcc
Author: Yavor Goulishev <[email protected]>
Date:   Mon Jul 7 08:08:15 2025 -0700

    Remove raspi2 atexit hack (youtube#6296)

    The wrong pthread.h was used and the ABI didn't match.
    Tried to adjust the BUILD.gn include path order however this
    turned out too complicated. Also the current solution is
    more robust as it doesn't depend on specific search path order.

    Issue: 428768024

commit 144fed4
Author: Dana Dahlstrom <[email protected]>
Date:   Wed Jul 2 00:00:00 2025 -0700

    Remove codespell configuration

    Issue: 294256358
    Issue: 373098675
    Reviewed-on: youtube#6272

commit f82d218
Author: Bo-Rong Chen <[email protected]>
Date:   Thu Jul 3 11:03:58 2025 -0700

    [POSIX] Implement getauxval in Starboard API (youtube#6264)

    This PR introduces the getauxval function to the Starboard API. The API
    leakage detector identified its usage in `//third_party/boringssl/`.

    This PR implements getauxval within Starboard by mapping the standard
    musl `AT_` flags to the platform-specific values. It ensures that the
    required values `AT_HWCAP` and `AT_EXECFN` are supported.

    Following the pattern of the `sysconf` implementation, all other `AT_`
    values from `<sys/auxv.h>` are added as optional and are gated by
    macros.

    The unit tests were generated with assistance from Gemini and refined to
    ensure all tested values are supported on the target platform.

    Issue: 412650854

commit cca30e7
Author: Andrew Savage <[email protected]>
Date:   Thu Jul 3 12:32:10 2025 -0400

    Filter tests with json to add debug config back (youtube#6266)

    Bug: 428956615

commit be4e211
Author: Adam Walls <[email protected]>
Date:   Thu Jul 3 01:08:12 2025 +0000

    Coat: Fix broken builds for cobalt_coat_junit_tests (youtube#6280)

    Currently the `cobalt_coat_junit_tests` do not build successfully. This
    fell through because there is no junit testing for ATV in our infra.

    Removing testRemapBackToEscape because it is no longer needed. In a
    previous commit, `getRemappedKeyEvent` was removed from the
    CobaltActivity class.

    There are still test failures, but this change fixes the build. These
    tests have been disabled for now using junit's @ignore annotation.

    Test: out/android-arm_devel/bin/run_cobalt_coat_junit_tests
    Test: autoninja -C out/android-arm_devel cobalt_coat_junit_tests
    Bug: 429212231

commit 6796d87
Author: Kyujung Youn <[email protected]>
Date:   Wed Jul 2 17:23:11 2025 -0700

    Remove Mutex::DCheckAcquired (youtube#6282)

    - `std::mutex` has no corresponding API for `DCheckAcquired`. Checking
    mutex is aquired is not recommended and not supported(== there is no
    standard way) per [gemini](https://g.co/gemini/share/e6ed85893e09).
    Chromium and Google3 code bases use annotation(e.g.` GUARDED_BY(lock_)`)
    to check correctness of mutex acqiusition instead. Filed b/429232141 for
    it
    - To deprecated `starboard::Mutex`, this PR removed the call sites of
    `DCheckAcquired`

    Issue: 390503926

commit 89c4dec
Author: Hao <[email protected]>
Date:   Wed Jul 2 17:57:31 2025 -0400

    Remove redundant functionalities in cobalt/shell/browser (youtube#6214)

    See tracker: go/cobalt-shell-optimization.

    Things removed:
    Permission Manager, Download Manager, Bluetooth Delegate, Federated
    Permission.

    New size:
    ```
    haozheng@haozheng:~/chromium/src$ ls -lh out/chrobalt-android-arm/obj/cobalt/shell
    total 712K
    drwxr-xr-x 2 haozheng primarygroup 4.0K Jul  2 02:08 content_shell_app
    -rw-r--r-- 1 haozheng primarygroup    0 Jul  2 02:08 content_shell_app_deps.stamp
    -rw-r--r-- 1 haozheng primarygroup    0 Jul  2 00:35 content_shell_app.inputdeps.stamp
    -rw-r--r-- 1 haozheng primarygroup 219K Jul  2 02:07 content_shell_app.ninja
    drwxr-xr-x 2 haozheng primarygroup 4.0K Jul  2 02:08 content_shell_lib
    -rw-r--r-- 1 haozheng primarygroup    0 Jul  2 02:08 content_shell_lib_deps.stamp
    -rw-r--r-- 1 haozheng primarygroup    0 Jul  2 00:35 content_shell_lib.inputdeps.stamp
    -rw-r--r-- 1 haozheng primarygroup 225K Jul  2 02:07 content_shell_lib.ninja
    -rw-r--r-- 1 haozheng primarygroup 5.6K Jul  2 02:08 libcontent_shell_app.a
    -rw-r--r-- 1 haozheng primarygroup 247K Jul  2 02:08 libcontent_shell_lib.a
    ```

    Test: connect to a BT speaker and play a playback locally.

    Bug: 427478103

commit d1a3fcd
Author: Bo-Rong Chen <[email protected]>
Date:   Wed Jul 2 13:19:26 2025 -0700

    [media] Update README.md for StarboardRenderer (youtube#6277)

    Fixed go link and updated StarboardRenderer using single-process-mode.

    Issue: 381257577

commit 61c54a5
Author: Colin Liang <[email protected]>
Date:   Wed Jul 2 11:16:06 2025 -0700

    Refactor Shell into cobalt directory. (youtube#6257)

    Moved java files under chromium 's content_shell package into cobalt
    package.
    Point JNI references using the jni headers generated from the cobalt
    package.

    Tested locally, the app can run.

    Bug: 428772300

    Change-Id: I1487e86a5a148d17528a944abdf8f549f9449977

commit 401b3d3
Author: Andrew Savage <[email protected]>
Date:   Wed Jul 2 13:35:43 2025 -0400

    Add more evergreen-x64 test suites to CI (youtube#6252)

    Bug: 428987532

commit 18089de
Author: johnx <[email protected]>
Date:   Tue Jul 1 21:24:41 2025 -0700

    Remove libtest_trace_processor.so (youtube#6249)

    This dependency is causing us the additional unused so file in apk and
    4MB of binary size.

    Bug: 428954882

commit cc72d90
Author: Adam Walls <[email protected]>
Date:   Tue Jul 1 22:56:34 2025 +0000

    Update CommandLineOverrideHelperTest (youtube#6226)

    After PR/6120, some V8/JS flags were modified, but the test was not.
    These junit tests are at risk to slip until they are enabled in CI/CD
    for ATV. This fixes the discrepancy between the two for now.

    Test: `out/android-arm_devel/bin/run_cobalt_coat_junit_tests`
    Bug: 428729430

commit af1ef2c
Author: John Ocampo <[email protected]>
Date:   Tue Jul 1 22:35:05 2025 +0000

    [POSIX] Add gai_strerror in Starboard API (youtube#6233)

    Add the POSIX symbol gai_strerror to Starboard. gai_strerror is added to
    Starboard with a Starboard wrapper that does input translation for the
    `ecode` argument in gai_strerror.

    Testing for gai_strerror is minimal due to limits of how we can test
    this function. Since the strings this function can return are
    platform-implemented, there is no guarantee for the contents of these
    strings. We can only check if the returned string is non-null.

    Bug: 424002518

commit dc4cc6f
Author: Kyujung Youn <[email protected]>
Date:   Tue Jul 1 15:13:50 2025 -0700

    Use std::lock_guard over scoped_lock for single mutex. (youtube#6201)

    This PR replaces std::scoped_lock with std::lock_guard for single-mutex
    lock acquisitions.

    While std::scoped_lock is a powerful tool for safely acquiring multiple
    locks, std::lock_guard is a more lightweight and efficient RAII wrapper
    for the common case of a single mutex.

    This change can lead to minor performance improvements and makes the
    code's intent clearer by using the simplest tool for the job. No
    functional changes are intended.

    Bug: 390503926

commit 6cce5ec
Author: Kyujung Youn <[email protected]>
Date:   Tue Jul 1 13:59:47 2025 -0700

    [Refactor] Replace starboard::mutex in starboard/raspi (youtube#6029)

    This is to deprecate starboard::mutex

    Bug: 390503926

commit 43899c6
Author: Kyujung Youn <[email protected]>
Date:   Tue Jul 1 13:59:25 2025 -0700

    [Refactor] Replace starboard::mutex in starboard (youtube#6040)

    This is to deprecate starboard::mutex

    Bug: 390503926

    ---------

    Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

commit 678c837
Author: Bo-Rong Chen <[email protected]>
Date:   Tue Jul 1 13:21:36 2025 -0700

    [media] Add doc for StarboardRenderer (youtube#6250)

    Add examples of how to use two-way Mojo IPCs for StarboardRenderer. The
    doc is edited by `Gemini`.

    Issue: 381257577

commit 070ea04
Author: Sherry Zhou <[email protected]>
Date:   Tue Jul 1 12:53:38 2025 -0700

    [POSIX] Add support for process-related POSIX functions (youtube#6234)

    This commit introduces support for several process-related POSIX
    functions, ensuring better compliance and providing necessary
    functionalities for process management.

    The following functions have been added and are now exposed through the
    ELF loader: getpid : Returns the process ID of the calling process.
    geteuid : Returns the effective user ID of the calling process.
    sched_get_priority_max : Returns the maximum priority for a given
    scheduling policy. sched_get_priority_min : Returns the minimum priority
    for a given scheduling policy.

    To ensure the correctness of these implementations, a new test suite has
    been created.

    Additionally, the API leak detector has been updated to recognize these
    new symbols as valid, and the evergreen manifest has been adjusted
    accordingly. ABI wrappers have been implemented to ensure compatibility
    across different layers of the system.

    Bug: 412648662

commit a862bc4
Author: Andrew Savage <[email protected]>
Date:   Tue Jul 1 15:20:30 2025 -0400

    Add runfile gen for evergreen (youtube#6244)

    Bug: 427451468

commit 40063ab
Author: Colin Liang <[email protected]>
Date:   Tue Jul 1 12:12:46 2025 -0700

    Set FLAG_KEEP_SCREEN_ON flag when Media Playback is playing (youtube#6219)

    Bug: 427445723
    Change-Id: I040f65fd818b30369f9cc69d8ca0af486e6e173e

commit 7d4dac5
Author: Colin Liang <[email protected]>
Date:   Tue Jul 1 11:38:45 2025 -0700

    Remove content_shell_apk_java from build.gn (youtube#6237)

    Tested locally, it compiles, Cobalt APK can run.

    Bug: 428777874

    Change-Id: Ice8e75801ca7dcc626dc75fe9701e93450a44db7

commit 79130a2
Author: John Ocampo <[email protected]>
Date:   Tue Jul 1 18:14:17 2025 +0000

    [POSIX] Add pathconf in Starboard API (youtube#6115)

    Add the POSIX symbol pathconf to Starboard. Pathconf is added to
    Starboard with a Starboard wrapper that does input translation for the
    `name` argument in pathconf.

    Testing for pathconf is done through checking whether or not the
    specified name configuration is defined and if that configuration has a
    limit. If the return value of `pathconf` is -1 but errno is 0, we can
    assume that there is no limit for that configuration. If errno is 0 but
    the return value is not -1, we then check to see that the specified
    value is in accordance to the standard's "minimum acceptable value."
    Details on what these values are can be seen here:
    https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html

    Bug: 416342476

commit f01cf43
Author: Hao <[email protected]>
Date:   Tue Jul 1 13:54:45 2025 -0400

    Remove keys remapping and dispatch all key events to IME (youtube#6236)

    It seems like we have to explicitly propagate enter and escape key after
    FrameLayout removal.

    Test: verify that enter and escape keys on keyboard works when using
    scrcpy. b/427545319.
    I'm not sure how much it will help with Talkback enter key bug
    b/427567259, as I cannot reproduce the bug locally.

    Update: this PR will dispatch all key events to IME instead.
    Test that this change does not break b/378590221.
    Chrobalt view hierarchy has changed significantly, and it seems like we
    no longer need to remap the back key for back button to work on remote.

    Bug: 427545319

commit dd02836
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 1 17:30:23 2025 +0000

    feat: ODT gateway E2E testing upgrade - fix conflict

commit 07d88b7
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 1 17:30:23 2025 +0000

    feat: ODT gateway E2E testing upgrade - fix conflict

commit 73f76ea
Author: Felipe Mira <[email protected]>
Date:   Tue Jul 1 17:30:23 2025 +0000

    feat: ODT gateway E2E testing upgrade - b/416339892
This reverts commit a30e28d.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
on_device Trigger on-device tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants