Simple GitHub Action to install and use grpctestify in CI.
What it does:
- installs
grpctestifyfrom GitHub Release binaries (fast path, no Rust toolchain) - adds binary directory to
PATH - optionally runs one command:
run,check, orfmt
name: test
on: [push, pull_request]
jobs:
grpc-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Run grpctestify
uses: gripmock/grpctestify-action@v1
with:
version: 1.4.10
command: run
path: tests/greeter.gctf| Input | Default | Description |
|---|---|---|
version |
latest |
grpctestify version (latest, 1.4.10, v1.4.10) |
github-token |
"" |
Optional token for GitHub API fallback when resolving latest |
install-only |
false |
Only install and export binary path to PATH |
command |
run |
Command to run: run, check, fmt |
path |
"" |
Primary file/directory argument |
paths |
"" |
Additional path arguments, one per line |
Notes:
- For
command: runand no path provided, action uses.by default. - For
command: check/command: fmt, at least one path is required.
| Output | Description |
|---|---|
version |
Resolved grpctestify version |
binary-path |
Full path to downloaded binary |
command-line |
Executed command args (without binary path) |
exit-code |
Process exit code |
Install only:
- name: Install grpctestify
uses: gripmock/grpctestify-action@v1
with:
install-only: true
version: 1.4.10
- name: Use in custom script
run: grpctestify --versionRun check:
- uses: gripmock/grpctestify-action@v1
with:
command: check
path: tests/**/*.gctfRun fmt for multiple files:
- uses: gripmock/grpctestify-action@v1
with:
command: fmt
paths: |
tests/a.gctf
tests/b.gctfWorkflow ./.github/workflows/release-smoke.yml validates:
- install-only mode (
1.4.10andlatest) - integration with
bavix/gripmock-action@v1 grpctestifycommandsrun,check, andfmtovertestdata/greeter/greeter.gctf