Skip to content

Update/Add Soak Test Workflows: Linux Remote + Pico2 + Soak Summary#5387

Open
moisesmata wants to merge 30 commits into
nasa:develfrom
moisesmata:RPI-split-testing
Open

Update/Add Soak Test Workflows: Linux Remote + Pico2 + Soak Summary#5387
moisesmata wants to merge 30 commits into
nasa:develfrom
moisesmata:RPI-split-testing

Conversation

@moisesmata

@moisesmata moisesmata commented Jul 10, 2026

Copy link
Copy Markdown
Contributor
Related Issue(s) N/A
Has Unit Tests (y/n) N/A
Documentation Included (y/n) Y
Generative AI was used in this contribution (y/n) Y

Change Description

Adds Raspberry Pi Pico 2 soak test workflow and new soak-summary action.

Rationale

  • Expand soak test to Pico 2 platform
  • Provide workflows for soak test summaries with trend analysis

Key Changes

  • Workflows for Pico2 soak testing
  • soak-summary workflow generates test reports with timeline/telemetry/event analysis
  • Swapped linux platform to linux remote, this runs fsw on an isolated RPI 5

Testing/Review Recommendations

Verify Pico 2 workflow runs successfully and soak-summary output is readable.

Future Work

Start working on a new reference deployment to apply this soak testing infrastructure too.

AI Usage

Yes

Used AI for refactoring and documentation (see policy).

moisesmata and others added 29 commits June 23, 2026 16:31
Retarget the build and post-build target-repository checkout in the
pico2 soak-setup workflow at moisesmata/fprime-zephyr-reference on
branch fix/cdc-acm-fifo-bump so soak CI picks up the enlarged CDC ACM
UART FIFO overlay (tx 16384, rx 4096) and the moisesmata/fprime-zephyr
fork it depends on. Without the FIFO bump, the Linux runner overflows
the device-side CDC ring buffer during the boot burst, producing the
0x44 idle-pattern flood and checksum failures seen in the launch stage.
Copilot AI review requested due to automatic review settings July 10, 2026 00:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@moisesmata moisesmata changed the title Update/Add Soak Test Workflows: Pico2 + Soak Summary Update/Add Soak Test Workflows: Linux Remote + Pico2 + Soak Summary Jul 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Coverage report — base devel

Overall (line): 82.07% → 82.08% (+0.01)
Regression threshold: 0.50% (line).

Regressions

(none over threshold)

Modules changed

Module Line Δ Function Δ Branch Δ
Os/Generic/Types 92.03 -0.36 92.86 +0.00 74.29 +0.00
Fw/DataStructures 98.30 -0.18 96.95 -0.19 83.03 -0.18

Modules without UTs

CFDP/Checksum/GTest, Drv/ByteStreamDriverModel, Drv/Interfaces, Drv/LinuxGpioDriver, Drv/LinuxI2cDriver, Drv/LinuxSpiDriver, Drv/LinuxUartDriver, Drv/Ports, Drv/Ports/DataTypes, FppTestProject/FppTest/interfaces, FppTestProject/FppTest/topology/async, FppTestProject/FppTest/topology/components/Comp, FppTestProject/FppTest/topology/components/Framework, FppTestProject/FppTest/topology/components/Receiver, FppTestProject/FppTest/topology/components/Sender, FppTestProject/FppTest/topology/guarded, FppTestProject/FppTest/topology/ports, FppTestProject/FppTest/topology/sync, FppTestProject/FppTest/topology/top_ports, FppTestProject/FppTest/topology/types, Fw/Cmd, Fw/Com, Fw/Comp, Fw/FilePacket/GTest, Fw/Fpy, Fw/Interfaces, Fw/Obj, Fw/Port, Fw/Ports/CompletionStatus, Fw/Ports/Ready, Fw/Ports/Signal, Fw/Ports/SuccessCondition, Fw/Prm, Fw/SerializableFile/test/TestSerializable, Fw/Sm, Fw/Test, Fw/Types/GTest, Os/Models, Svc/Cycle, Svc/DpPorts, Svc/Fatal, Svc/FatalHandler, Svc/FileDownlinkPorts, Svc/FprimeProtocol, Svc/Interfaces, Svc/PassiveConsoleTextLogger, Svc/Ping, Svc/PolyIf, Svc/Ports/CommsPorts, Svc/Ports/FilePorts, Svc/Ports/OsTimeEpoch, Svc/Ports/TlmPacketizerPorts, Svc/Ports/VersionPorts, Svc/Sched, Svc/Seq, Svc/Subtopologies/CdhCore, Svc/Subtopologies/ComCcsds, Svc/Subtopologies/ComFprime, Svc/Subtopologies/ComLoggerTee, Svc/Subtopologies/DataProducts, Svc/Subtopologies/DpCompression, Svc/Subtopologies/FileHandling, Svc/Types/TlmPacketizerTypes, Svc/WatchDog, TestDeploymentsProject/Ref/PingReceiver, TestDeploymentsProject/Ref/RecvBuffApp, TestDeploymentsProject/Ref/SendBuffApp, TestDeploymentsProject/Ref/Top, TestDeploymentsProject/Ref/TypeDemo, cmake/test/data/TestDeployment/TestBuildAutocoder, cmake/test/data/TestDeployment/TestChainedAutocoder, cmake/test/data/TestDeployment/TestHeaderAutocoder, cmake/test/data/TestDeployment/TestTargetAutocoder, cmake/test/data/test-fprime-library/TestLibrary/TestComponent, cmake/test/data/test-fprime-library2/TestLibrary2/TestComponent


on:
release:
types: [published]

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

When we make a new release, the new soak setup kills the previously running one, is that correct?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Yes, on the linux based soaks, it stops both the fsw and gds services -- on the pico it stops the gds service and flashes the new fsw using the reusable project ci

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.

4 participants