Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions docs/additional-resources/self-hosted-runner-setup.md
Copy link
Contributor

Choose a reason for hiding this comment

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

Hey @ineskhou and @hrfarmer. I realize this has already been merged in, but I am a little unclear on what issue is being solved here. You shouldn't have to clone the repo in order to setup an integration test runner, the CI system should be doing that for you when it runs ci.yaml.

Are you guys running into the shadow .west in the parent directory problem? If so I think the fix would actually be to make sure wherever you setup the actions runner is encapsulated in at least one layer of folder structure away from any other Zephyr environments so there aren't conflicts.

For example on the deathstar from home I created a proves-ci/runner folder and then put the runner in there. So if and when the repo creates the .west in the parent directory there is little chance it propagates issues to other repos.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There was no west directory created automatically, which causes a “no west” error when running integration tests for the first time. It seems that when we moved the Zephyr-related steps into the Make process, the runner setup started missing a few initialization steps.

When I last set up a runner on this same computer, it worked without needing any extra steps, but yesterday it didn’t work out of the box. The runner is typically located two folders above any West repository, plus the two directories created during setup. However, running make in the folder where everything is automatically cloned resolves the issue.

We decided to update the instructions to have users run make right after encountering the integration test failure, since that made the process clearer.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

For ref without running make
Screenshot 2025-11-12 at 11 04 39 AM

Original file line number Diff line number Diff line change
Expand Up @@ -136,9 +136,19 @@ reboot

- When configuring the runner in `config.sh`, ensure that when prompted, you enter `proves` as the runner group, and that you add `integration` as a label, otherwise the runner won't fit the criteria to be used for the workflow.

5. **Connect the PROVES hardware**: Ensure that the PROVES hardware is connected to the machine via USB.

6. **Run the self-hosted runner**: Start the runner using the provided script.
5. **Install dependencies**: Clone the repository & set up west dependencies beforehand to ensure tests will work correctly.

- Assuming default paths/settings for the runner:
- ```sh
cd ~/actions-runner/_work
mkdir proves-core-reference && cd proves-core-reference
git clone https://github.com/open-source-space-foundation/proves-core-reference
cd proves-core-reference
make
```
6. **Connect the PROVES hardware**: Ensure that the PROVES hardware is connected to the machine via USB.

7. **Run the self-hosted runner**: Start the runner using the provided script.

```sh
./run.sh
Expand Down