Skip to content

upload_artifact workflow for self-hosted tests - #107

Open
martinrichtersupervag wants to merge 33 commits into
omg-dds:masterfrom
martinrichtersupervag:feature/universal-upload-workflow
Open

martinrichtersupervag wants to merge 33 commits into
omg-dds:masterfrom
martinrichtersupervag:feature/universal-upload-workflow

Conversation

@martinrichtersupervag

Copy link
Copy Markdown

Summary

This PR enhances the artifact upload workflow (2_upload_artifact.yml) to ensure reliable operation on both GitHub-hosted (ubuntu-latest) and self-hosted runners, as well as across repository forks.

Key Changes

  1. Dynamic Runner Selection: Added runner choice parameter in workflow_dispatch (defaulting to ubuntu-latest, with option for self-hosted).
  2. Fork Compatibility:
    • Explicitly set repo: ${{ github.repository }} for dawidd6/action-download-artifact so forks retrieve their own workflow artifacts.
    • Added pre-flight check for RCLONE_TOKEN and DRIVE_FOLDER_ID secrets with informative error annotations.
  3. Resilient Compression:
    • Checks for zip utility and includes an automatic fallback to Python's built-in python3 -m zipfile so unprivileged self-hosted runners without sudo succeed seamlessly.
  4. File Manipulation & Cleanliness:
    • Clean disk cleanup between runs (rm -rf report_*).
    • Corrected timestamp formatting to prevent double file extensions (interoperability_report_$date.html).
    • Ensured reports are organized in dedicated report_$date folder on Google Drive.
  5. Workflow Cleanup: Removed redundant 1_run_interoperability_tests_local.yml and 2_upload_artifact_local.yml.

martinrichtersupervag and others added 30 commits September 14, 2026 03:02
Forkde to my account - Added repository line to download executables
.github/workflows/run-interop-tests.yml: 
added : repository: "omg-dds/dds-rtps" (before latest: "robinraju" line and "latest: true" line)
solving of ECONRESET during tests
run_tests(opendds, dust_dds) – read ECONNRESET
Replaced Google Drive upload actions with Rclone for artifact uploads.
Removed setup-python step from the workflow.
Updated pip install command to use --break-system-packages option for compatibility.

This branch has not been deployed

No deployments
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.

1 participant