{"id":28435122,"url":"https://github.com/hostinger/fireactions","last_synced_at":"2026-02-06T00:11:42.295Z","repository":{"id":261200144,"uuid":"696675299","full_name":"hostinger/fireactions","owner":"hostinger","description":"BYOM (Bring Your Own Metal) and run self-hosted GitHub runners in ephemeral, fast and secure Firecracker based virtual machines.","archived":false,"fork":false,"pushed_at":"2026-01-28T11:15:47.000Z","size":22143,"stargazers_count":124,"open_issues_count":10,"forks_count":11,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-01-29T02:04:20.020Z","etag":null,"topics":["fireactions","github","github-actions","github-runners","tools"],"latest_commit_sha":null,"homepage":"https://fireactions.io","language":"Go","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/hostinger.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","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":"2023-09-26T08:13:41.000Z","updated_at":"2026-01-28T11:15:25.000Z","dependencies_parsed_at":"2024-11-05T09:23:10.871Z","dependency_job_id":"3ee9bb4c-dd3a-485a-a913-35479c8d7269","html_url":"https://github.com/hostinger/fireactions","commit_stats":null,"previous_names":["hostinger/fireactions"],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/hostinger/fireactions","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Ffireactions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Ffireactions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Ffireactions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Ffireactions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hostinger","download_url":"https://codeload.github.com/hostinger/fireactions/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostinger%2Ffireactions/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29140052,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T23:14:48.546Z","status":"ssl_error","status_checked_at":"2026-02-05T23:14:35.724Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["fireactions","github","github-actions","github-runners","tools"],"created_at":"2025-06-05T20:06:38.534Z","updated_at":"2026-02-06T00:11:42.267Z","avatar_url":"https://github.com/hostinger.png","language":"Go","readme":"[![Go Report Card](https://goreportcard.com/badge/github.com/hostinger/fireactions)](https://goreportcard.com/report/github.com/hostinger/fireactions)\n\n![Banner](docs/img/banner_violet.png)\n\nFireactions is an orchestrator for GitHub runners. BYOM (Bring Your Own Metal) and run self-hosted GitHub runners in ephemeral, fast and secure [Firecracker](https://firecracker-microvm.github.io/) based virtual machines.\n\n\u003e [!IMPORTANT]\n\u003e There's been multiple improvements with a lot of breaking changes. The current stable version is **v2.0.0**. Please use this version for production environments.\n\n\u003c!--\nhttps://excalidraw.com/#json=GrJMj6LLYt39mgC0me7Di,C65TV9FhicnxNKgPeRhi3A\nsequenceDiagram\n    autonumber\n    participant Fireactions\n    participant Configuration file (YAML)\n    participant Pool(s)\n    participant Firecracker VM with GitHub runner\n    participant GitHub\n\n    Fireactions-\u003e\u003eConfiguration file (YAML): Load pools\n    Fireactions-\u003e\u003ePool(s): Start pool(s)\n    loop Ensure min amount of GitHub runners every 1s\n        Pool(s)-\u003e\u003eGitHub: Create JIT GitHub runner token\n        Pool(s)-\u003e\u003eFirecracker VM with GitHub runner: Start Firecracker VM\n        Firecracker VM with GitHub runner-\u003e\u003eGitHub: Run GitHub workflow job\n        Firecracker VM with GitHub runner-\u003e\u003ePool(s): Exit (on workflow job finish)\n    end\n    GitHub-\u003e\u003eFireactions: Scale pool on workflow_job event\n--\u003e\n![Architecture](docs/img/architecture.png)\n\nSeveral key features:\n\n- **Scalable**\n\n  Pool based scaling approach. Fireactions always ensures the minimum amount of GitHub runners in the pool.\n\n- **Ephemeral**\n\n  Each virtual machine is created from scratch and destroyed after the job is finished, no state is preserved between jobs, just like with GitHub hosted runners.\n\n- **Customizable**\n\n  Define job labels and customize virtual machine resources to fit Your needs.\n\n## Quickstart\n\n```bash\n$ fireactions --help\nBYOM (Bring Your Own Metal) and run self-hosted GitHub runners in ephemeral, fast and secure Firecracker based virtual machines.\n\nUsage:\n  fireactions [command]\n\nMain application commands:\n  server      Starts the server\n  agent       Starts the agent and GitHub Actions runner inside the VM\n\nPool management commands:\n  pools       Manage pools\n\nMachine management commands:\n  ps          List all running machines across all pools\n  login       SSH into a running VM as root user\n  logs        Stream logs from the fireactions-agent service inside a machine\n\nImage management commands:\n  image       Manage images\n\nAdditional Commands:\n  version     Show version information\n  help        Help about any command\n  completion  Generate the autocompletion script for the specified shell\n\nFlags:\n  -h, --help      help for fireactions\n  -v, --version   version for fireactions\n\nUse \"fireactions [command] --help\" for more information about a command.\n```\n\nSee the [User Guide](https://fireactions.io/latest/) for installation and configuration instructions.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to contribute to Fireactions.\n\n## License\n\nSee [LICENSE](LICENSE)\n","funding_links":[],"categories":["Projects"],"sub_categories":["Security"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhostinger%2Ffireactions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhostinger%2Ffireactions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhostinger%2Ffireactions/lists"}