{"id":50679225,"url":"https://github.com/gerph/riscos-build-service-action","last_synced_at":"2026-06-08T17:32:13.902Z","repository":{"id":350962514,"uuid":"1208944630","full_name":"gerph/riscos-build-service-action","owner":"gerph","description":"GitHub action to build on the RISC OS build service.","archived":false,"fork":false,"pushed_at":"2026-04-13T00:45:55.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-13T02:22:45.060Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gerph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-13T00:05:59.000Z","updated_at":"2026-04-13T00:45:59.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/gerph/riscos-build-service-action","commit_stats":null,"previous_names":["gerph/riscos-build-service-action"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/gerph/riscos-build-service-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos-build-service-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos-build-service-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos-build-service-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos-build-service-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gerph","download_url":"https://codeload.github.com/gerph/riscos-build-service-action/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos-build-service-action/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34073777,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-08T17:32:13.389Z","updated_at":"2026-06-08T17:32:13.888Z","avatar_url":"https://github.com/gerph.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# RISC OS Build Service GitHub Action\n\nA GitHub composite action that calls the [RISC OS Build Service](https://build.riscos.online/)\nto build RISC OS projects without requiring a local RISC OS environment.\n\nThis means that you can very easily build RISC OS projects\nwithout having to deal with the communication with the\nbuild service, or toolchain issues.\n\n## What it does\n\nYour repository can contain code to build RISC OS components, or to run RISC OS binaries. This action\nruns the binaries, and returns the results (output and\narchived files) back to you.\n\n### How it does it\n\nThis action wraps the `riscos-build-online` client tool, allowing you to:\n\n- Send your repository files to the RISC OS Build Service\n- Execute build commands defined in a `.robuild.yaml` file\n- Retrieve the built output as an artifact\n- Configure the architecture (32-bit or 64-bit), timeout, and other build parameters\n\n## Prerequisites\n\nYour repository must contain a `.robuild.yaml` file that describes what should be built on\nRISC OS. See the [RISC OS Build documentation](https://build.riscos.online/robuildyaml.html) for the\nfile format.\n\n## Usage\n\nAdd the action to a workflow step, referencing this repository and the desired version:\n\n```yaml\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v6\n\n        uses: gerph/riscos-build-service-action@v1\n        with:\n          architecture: aarch32\n          timeout: 120\n          output: /tmp/built\n```\n\n### Inputs\n\n| Input | Description | Default |\n|---|---|---|\n| `architecture` | Architecture for the build: `aarch32` or `aarch64` | `aarch32` |\n| `timeout` | Build timeout in seconds (max 600) | `10` |\n| `colour` | Enable coloured output: `yes` or `no` | `yes` |\n| `files` | Space-separated file patterns to send to the service (glob wildcards supported) | `*` |\n| `quiet` | Output verbosity: `no` (full), `yes` (quiet non-failure), `silent` (minimal) | `no` |\n| `directory` | Working directory for collecting files | `.` |\n| `output` | Output file location (or prefix for extracted files) | `output` |\n| `capture-filename` | Filename to write the captured build output (stdout/stderr) to, or empty to write to the console | *(empty)* |\n| `release-name` | Name of the release archive (e.g. `MyModule-1.00`). Overrides `output`. If empty, the name is derived from `VersionNum` when `release` is `yes` | *(empty)* |\n| `release` | When `yes`, automatically determine the release name from `VersionNum` (as `ComponentName-Version`) and upload the resulting artifact | `no` |\n| `tool-version` | Version of `riscos-build-online` to use | `0.07` |\n\n### Outputs\n\n| Output | Description |\n|---|---|\n| `output_filename` | Full path of the output file created by the build, or empty if none. When `release-name` or `release` is used, this is the versioned name |\n| `output_filetype` | RISC OS filetype extension of the output (e.g. `a91`, `feb`, `ff8`) |\n| `capture_filename` | Filename created for captured console output, or empty |\n| `project_version` | Version number extracted from `VersionNum`, or the short git SHA if not found |\n\n## Example\n\nA typical workflow that builds a project and uploads the result as a GitHub Actions artifact:\n\n```yaml\nname: RISC OS CI\n\non: [push, pull_request]\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v6\n\n      - name: Build on RISC OS\n        id: robuild\n        uses: gerph/riscos-build-service-action@v1\n        with:\n          architecture: aarch32\n          timeout: 120\n          output: /tmp/built\n          capture-filename: build.log\n\n      - name: Upload artifact\n        uses: actions/upload-artifact@v4\n        with:\n          name: riscos-output\n          path: ${{ steps.robuild.outputs.output_filename }}\n\n      - name: Upload build log\n        if: always()\n        uses: actions/upload-artifact@v4\n        with:\n          name: build-log\n          path: ${{ steps.robuild.outputs.capture_filename }}\n```\n\n### Release workflow\n\nWhen you have a `VersionNum` file in your repository, the action can automatically version\nthe output and upload it as a release artifact:\n\n```yaml\n      - name: Build and release on RISC OS\n        id: robuild\n        uses: gerph/riscos-build-service-action@v1\n        with:\n          architecture: aarch32\n          timeout: 120\n          release: yes\n          # release-name: MyModule-1.00   # optional: override the auto-detected name\n\n      # The action automatically uploads the versioned artifact when release: yes\n      # The uploaded artifact will be named after the release (e.g. MyModule-1.00)\n```\n\nThe release name is derived from the `Module_ComponentName` and `Module_MajorVersion` values\nin the `VersionNum` file (e.g. `WimpTemplates-0.02`). If `VersionNum` is not found, the short\ngit SHA is used as the version instead.\n\n## .robuild.yaml\n\nThe build service uses a `.robuild.yaml` file in your repository to determine what commands\nto run. A minimal example:\n\n```yaml\njobs:\n  build:\n    script:\n      - riscos-amu\n    artifacts:\n      - path: aif32\n```\n\nRefer to the [RISC OS Build documentation](https://build.riscos.online/robuildyaml.html) for the\nfull specification.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerph%2Friscos-build-service-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgerph%2Friscos-build-service-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerph%2Friscos-build-service-action/lists"}