{"id":29905530,"url":"https://github.com/project-tsurugi/tsurugi-annotations-action","last_synced_at":"2026-04-19T07:31:45.568Z","repository":{"id":197956238,"uuid":"266954521","full_name":"project-tsurugi/tsurugi-annotations-action","owner":"project-tsurugi","description":"GitHub Action to generate check-run annotations from outputs of static analysis tools and testing frameworks.","archived":false,"fork":false,"pushed_at":"2024-01-31T09:35:12.000Z","size":728,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-02-01T09:33:14.490Z","etag":null,"topics":["checkstyle","clang-tidy","ctest","doxygen","github-actions","github-checks","junit","spotbugs"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/project-tsurugi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-05-26T05:42:06.000Z","updated_at":"2024-02-01T09:33:14.491Z","dependencies_parsed_at":null,"dependency_job_id":"58cd6c4e-5713-46ee-8687-57e2cfbb77cf","html_url":"https://github.com/project-tsurugi/tsurugi-annotations-action","commit_stats":null,"previous_names":["project-tsurugi/tsurugi-annotations-action"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/project-tsurugi/tsurugi-annotations-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/project-tsurugi%2Ftsurugi-annotations-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/project-tsurugi%2Ftsurugi-annotations-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/project-tsurugi%2Ftsurugi-annotations-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/project-tsurugi%2Ftsurugi-annotations-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/project-tsurugi","download_url":"https://codeload.github.com/project-tsurugi/tsurugi-annotations-action/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/project-tsurugi%2Ftsurugi-annotations-action/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268282397,"owners_count":24225164,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"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":["checkstyle","clang-tidy","ctest","doxygen","github-actions","github-checks","junit","spotbugs"],"created_at":"2025-08-01T19:14:12.720Z","updated_at":"2026-04-19T07:31:45.562Z","avatar_url":"https://github.com/project-tsurugi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tsurugi-annotations-action\n\nThis GitHub action generates check-run annotations from outputs of static analysis tools and testing frameworks.\n\nIt is mainly focused on CI inside project-tsurugi projects, but can be used for other projects as well.\n\n## Prerequisites\n\n- Grant permissions for the GITHUB_TOKEN\n  - scope: checks\n  - access: write\n\n```yaml\n\njobs:\n  Build:\n    permissions:\n        checks: write\n...\n```\n\n## Usage\n\nSimple usage\n```yaml\n    steps:\n      - name: Verify\n        uses: project-tsurugi/tsurugi-annotations-action@v2\n```\n\nWith configurations\n```yaml\n    steps:\n\n      - name: Verify\n        uses: project-tsurugi/tsurugi-annotations-action@v2\n        if: always()\n        with:\n          junit_input: 'java/cost-accounting-benchmark/build/test-results/**/TEST-*.xml'\n          junit_test_src_dir: 'java/cost-accounting-benchmark/src/test/java'\n          spotbugs_input: 'java/cost-accounting-benchmark/build/reports/spotbugs/main/*.xml'\n```\n\n## Output\n- Generate Check Run If there are warnings output by supporting tools/frameworks.\n  - example: https://github.com/project-tsurugi/sharksfin/runs/17161949649\n- Generate Job Summary if warnings present.\n  - example: https://github.com/project-tsurugi/sharksfin/actions/runs/6320027242/attempts/1#summary-17161928275\n\n## Supporting tools/frameworks\n\n- [Clang-Tidy](https://clang.llvm.org/extra/clang-tidy/)\n- [CTest](https://cmake.org/cmake/help/latest/manual/ctest.1.html)\n- [Doxygen](https://www.doxygen.nl/)\n- [Junit](https://junit.org/)\n- [SpotBugs](https://spotbugs.github.io/)\n- [Checkstyle](https://checkstyle.sourceforge.io/)\n\n## Configurations (Actions input)\n\n| Name               | Type    | Default                | Description                        |\n|--------------------|---------|-------------|------------------------------------|\n| `github_token`     | string  | `${{ github.token }}`  | Use this if you wish to use a different GitHub token than the one provided by the workflow. |\n| `strict`           | bool    | `true`      | If annotation exists, set action to fail. |\n| `clang_tidy_input` | string    | `build/clang-tidy.log`      | input file of generating Clang-Tidy annotation. |\n| `ctest_input`      | string    | `build/**/*_gtest_result.xml`      | input file of generating CTest annotation. |\n| `doxygen_input`    | string    | `build/doxygen-error.log`      | input file of generating Doxygen annotation. |\n| `junit_input`      | string    | `build/test-results/**/TEST-*.xml`      | input file of generating JUnit annotation. |\n| `spotbugs_input`   | string    | `build/reports/spotbugs/main/*.xml`     | input file of generating SpotBugs annotation. |\n| `checkstyle_input` | string    | `build/reports/checkstyle/main.xml`     | input file of generating SpotBugs annotation. |\n| `junit_test_src_dir` | string    | `src/test/java`     | test source root directory. |\n| `matrix` | bool    | `false`     | matrix context. |\n| `checker` | string  | empty string (Search for all supporting tool outputs) | enabled checker list (comma separated string) |\n\n## License\n\n[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fproject-tsurugi%2Ftsurugi-annotations-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fproject-tsurugi%2Ftsurugi-annotations-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fproject-tsurugi%2Ftsurugi-annotations-action/lists"}