{"id":25827388,"url":"https://github.com/k3rnels-actions/setup-tool-binary","last_synced_at":"2025-02-28T16:26:05.708Z","repository":{"id":65160424,"uuid":"583951290","full_name":"k3rnels-actions/setup-tool-binary","owner":"k3rnels-actions","description":"A basic GitHub Action to install an arbitrary tool binary into $PATH for use within a workflow.","archived":false,"fork":false,"pushed_at":"2025-02-24T19:25:46.000Z","size":384,"stargazers_count":2,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-24T20:29:27.321Z","etag":null,"topics":["actions","github","github-actions","setup","tool","tool-setup"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/k3rnels-actions.png","metadata":{"files":{"readme":"readme.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2022-12-31T15:56:19.000Z","updated_at":"2024-10-30T18:01:30.000Z","dependencies_parsed_at":"2023-10-14T22:52:04.342Z","dependency_job_id":"26a2209e-75d5-4a0f-8877-a5d9bca15cbf","html_url":"https://github.com/k3rnels-actions/setup-tool-binary","commit_stats":{"total_commits":17,"total_committers":2,"mean_commits":8.5,"dds":"0.47058823529411764","last_synced_commit":"66ec6d5f9b2fcd4b9db35e458b8ae90bf4b815d5"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":"k3rnels-actions/action-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k3rnels-actions%2Fsetup-tool-binary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k3rnels-actions%2Fsetup-tool-binary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k3rnels-actions%2Fsetup-tool-binary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k3rnels-actions%2Fsetup-tool-binary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/k3rnels-actions","download_url":"https://codeload.github.com/k3rnels-actions/setup-tool-binary/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241101851,"owners_count":19909970,"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","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":["actions","github","github-actions","setup","tool","tool-setup"],"created_at":"2025-02-28T16:26:05.118Z","updated_at":"2025-02-28T16:26:05.698Z","avatar_url":"https://github.com/k3rnels-actions.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[[setup-tool-binary]]\n= setup-tool-binary\n:toc: macro\n:toc-title:\n\nimage:https://github.com/k3rnels-actions/setup-tool-binary/actions/workflows/test.yml/badge.svg[Build and Test,link=\"https://github.com/k3rnels-actions/setup-tool-binary/actions/workflows/test.yml\"]\nimage:https://img.shields.io/codefactor/grade/github/k3rnels-actions/setup-tool-binary.svg[CodeFactor, link=\"https://www.codefactor.io/repository/github/k3rnels-actions/setup-tool-binary\"]\nimage:https://img.shields.io/maintenance/yes/2030.svg[Maintenance status, link=\"https://github.com/k3rnels-actions/setup-tool-binary\"]\nimage:https://img.shields.io/github/license/k3rnels-actions/setup-tool-binary.svg[License, link=\"https://github.com/k3rnels-actions/setup-tool-binary/blob/main/LICENSE\"]\nimage:https://img.shields.io/github/v/release/k3rnels-actions/setup-tool-binary.svg[GitHub release (latest by date), link=\"https://github.com/k3rnels-actions/setup-tool-binary/releases\"]\n\n[#introduction]\n== Introduction\n\nThis is a very basic GitHub Action to install an arbitrary tool from a templated url.\nIt utilizes the tool-cache to optimize install times and supports a very basic token replace templating mechanism for the url you want to download your tool from.\n\n[NOTE]\n====\nThis Action took inspiration of several other tool setup Actions, however none of them seemed to be doing what I needed, so this exists now.\n====\n\n[#action-io]\n== Action I/O\n\nThis action does currently not utilize nor support using any form of authorization (i.e. the GitHub Token).\nIf it is a requested feature it may get added.\n\n=== Action Inputs\n\n[cols=\"1,^1,^1,4\"]\n|===\n|Input |Required |TemplateLiteral |Description\n\n| `toolName`\n| `true`\n| `toolName`\n| The name of the tool you want to install via this action.\nIt also populates the `toolName` template literal you may use in the `urlTemplate` and `smokeTestTemplate` that gets expanded to the value set here.\n\n| `toolRepository`\n| `_conditional_`\n| `toolRepository`\n| Conditionally required if you to use the `_toolRepository_` TemplateLiteral within the urlTemplate.\nUseful when installing releases from GitHub as tools (also check link:#usage[Usage] for an example).\n\n| `toolVersion`\n| `true`\n| `toolVersion`\n| The version of the tool you want to install.\nIt also populates the `toolVersion` template literal you may use in the `urlTemplate` that gets expanded to the value set here.\n\n| `urlTemplate`\n| `true`\n| `n/a`\n| The URL template to download your tool of choice from.\nBy default, this is set to a reasonable assumed url pattern for GitHub releases, yet you can overwrite it with your own template. +\nDefaults to: `https://github.com/{{toolRepository}}/{{toolName}}/releases/download/v{{version}}/{{toolName}}-{{version}}-{{platform}}-amd64.tar.gz`\n\n| `smokeTestTemplate`\n| `false`\n| `n/a`\n| In case you want to run a smoke test to validate that your tool was installed properly.\nThis only supports `{{toolName}}` as a template literal (for now).\n\n|===\n\n[NOTE]\n====\nThe following `templateLiterals` are currently supported within the `urlTemplate`:\n\n* `{{toolRepository}}` - only available if you set `toolRepository` in the parameters (throws an error if you use it, and it was not configured).\n* `{{toolName}}` - gets populated with the `toolName`\n* `{{version}}` - gets populated with the `toolVersion`\n* `{{platform}}` - gets populated with the _Node.js_ `process.platform` value (except `win32` which gets translated to `windows`)\n====\n\n[#usage]\n== Usage\n\n.demo.yml\n[source,yaml]\n----\non:\n  # ...\n\njobs:\n  demo:\n    runs-on: ubuntu-latest\n    steps:\n      - name: \"Install gino-keva\"\n        uses: k3rnels-actions/setup-tool-binary@v1\n        with:\n          toolName: 'gino-keva'\n          toolRepository: 'philips-software'\n          toolVersion: '2.0.0'\n          urlTemplate: 'https://github.com/{{toolRepository}}/{{toolName}}/releases/download/v{{toolVersion}}/{{toolName}}'\n          smokeTestTemplate: '{{toolName}} --help'\n      - name: \"Checkout Repo\"\n        uses: actions/checkout@v3\n      # ...\n----\n\n[#contribute]\n== Contribute\n\nAll kinds of contributions are more than welcome! However, if you plan bigger changes please open an issue first to discuss your proposed changes :wink:\n\n[#licence]\n== Licence\n\nimage::https://www.gnu.org/graphics/gplv3-or-later.svg[link=\"https://opensource.org/licenses/GPL-3.0\"]\n\nJust if the badge from `shields.io` and the link:LICENSE[] file do not make it obvious enough, this project is licenced under the link:https://opensource.org/licenses/GPL-3.0[GPLv3] or later.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk3rnels-actions%2Fsetup-tool-binary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fk3rnels-actions%2Fsetup-tool-binary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk3rnels-actions%2Fsetup-tool-binary/lists"}