{"id":13413934,"url":"https://github.com/aerokube/ggr","last_synced_at":"2025-03-14T20:30:47.681Z","repository":{"id":9223797,"uuid":"61305371","full_name":"aerokube/ggr","owner":"aerokube","description":"A lightweight load balancer used to create big Selenium clusters","archived":false,"fork":false,"pushed_at":"2024-04-20T10:32:43.000Z","size":868,"stargazers_count":312,"open_issues_count":11,"forks_count":73,"subscribers_count":24,"default_branch":"master","last_synced_at":"2024-07-31T20:53:10.550Z","etag":null,"topics":["ggr","grid-router","selenium"],"latest_commit_sha":null,"homepage":"https://aerokube.com/ggr/latest/","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/aerokube.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.adoc","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":"2016-06-16T15:33:24.000Z","updated_at":"2024-04-23T21:05:01.000Z","dependencies_parsed_at":"2023-10-13T16:50:03.961Z","dependency_job_id":"23c64377-3165-4f6b-9ffa-a9854bebafc1","html_url":"https://github.com/aerokube/ggr","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aerokube%2Fggr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aerokube%2Fggr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aerokube%2Fggr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aerokube%2Fggr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aerokube","download_url":"https://codeload.github.com/aerokube/ggr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243642007,"owners_count":20323948,"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":["ggr","grid-router","selenium"],"created_at":"2024-07-30T20:01:53.063Z","updated_at":"2025-03-14T20:30:47.675Z","avatar_url":"https://github.com/aerokube.png","language":"Go","funding_links":[],"categories":["Testing","测试","测试相关`测试库和测试数据集生成库`","Mock","Selenium and browser control tools","Resources","测试相关"],"sub_categories":["HTTP Clients","Advanced Console UIs","交流","Selenium and browser control tools","HTTP客户端","查询语","Selenium and browser control tools.","Mock","Containers"],"readme":"# Go Grid Router\n[![Build Status](https://github.com/aerokube/ggr/workflows/build/badge.svg)](https://github.com/aerokube/ggr/actions?query=workflow%3Abuild)\n[![Coverage](https://codecov.io/github/aerokube/ggr/coverage.svg)](https://codecov.io/gh/aerokube/ggr)\n[![GoReport](https://goreportcard.com/badge/github.com/aerokube/ggr)](https://goreportcard.com/report/github.com/aerokube/ggr)\n[![Release](https://img.shields.io/github/release/aerokube/ggr.svg)](https://github.com/aerokube/ggr/releases/latest)\n[![Docker Pulls](https://img.shields.io/docker/pulls/aerokube/ggr.svg)](https://hub.docker.com/r/aerokube/ggr)\n\n**UNMAINTAINED**. Consider https://aerokube.com/moon/latest as alternative.\n\nGo Grid Router (aka Ggr) is a lightweight active load balancer used to create scalable and highly-available [Selenium](http://seleniumhq.org/) clusters.\n![Ggr Animation](docs/img/ggr-animation.gif)\n\n## Articles\n\n* [Selenium testing: a new hope (part I)](https://hackernoon.com/selenium-testing-a-new-hope-7fa87a501ee9)\n* [Selenium testing: a new hope (part II)](https://hackernoon.com/selenium-testing-a-new-hope-a00649cdb100)\n\n## Quick Start Guide\nTo use Go Grid Router do the following:\n1) Install [Docker](http://docker.com/) to host\n2) Create configuration directory:\n```\n$ mkdir -p /etc/grid-router/quota\n```\n3) Create ```users.htpasswd``` file:\n```\n$ htpasswd -bc /etc/grid-router/users.htpasswd test test-password\n```\n4) Start Selenium standalone server on port 4445:\n```\n$ java -jar selenium-server-standalone.jar -port 4445\n```\nYou can also start [Selenoid](https://github.com/aerokube/selenoid) instead.\n\n5) Create quota file (use correct browser name and version):\n```\n$ cat /etc/grid-router/quota/test.xml\n\u003cqa:browsers xmlns:qa=\"urn:config.gridrouter.qatools.ru\"\u003e\n\u003cbrowser name=\"firefox\" defaultVersion=\"59.0\"\u003e\n    \u003cversion number=\"59.0\"\u003e\n        \u003cregion name=\"1\"\u003e\n            \u003chost name=\"localhost\" port=\"4445\" count=\"1\"/\u003e\n        \u003c/region\u003e\n    \u003c/version\u003e\n\u003c/browser\u003e\n\u003c/qa:browsers\u003e\n```\n***Note***: file name should correspond to username you added to htpasswd file. For user ```test``` we added on previous steps you should create ```test.xml```.\n\n6) Start Ggr container:\n```\n# docker run -d --name ggr -v /etc/grid-router/:/etc/grid-router:ro --net host aerokube/ggr:latest-release\n```\n7) Access Ggr on port 4444 in the same way you do for Selenium Hub but using the following url:\n```\nhttp://test:test-password@localhost:4444/wd/hub\n```\n\n## Complete Guide \u0026 Build Instructions\n\nComplete reference guide (including build instructions) can be found at: http://aerokube.com/ggr/latest/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faerokube%2Fggr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faerokube%2Fggr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faerokube%2Fggr/lists"}