{"id":18537250,"url":"https://github.com/nareshnavinash/cloud-setup-ruby","last_synced_at":"2026-01-24T23:31:15.174Z","repository":{"id":101922225,"uuid":"199296040","full_name":"nareshnavinash/Cloud-Setup-Ruby","owner":"nareshnavinash","description":"To run selenium automation in linux servers with headless chrome, ruby, selenium, jenkins, and allure plugin","archived":false,"fork":false,"pushed_at":"2020-01-22T12:56:28.000Z","size":174,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-15T01:39:56.120Z","etag":null,"topics":["cloud-setup","documentation","no-code"],"latest_commit_sha":null,"homepage":"https://nareshnavinash.github.io/Cloud-Setup-Ruby/","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nareshnavinash.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2019-07-28T14:16:41.000Z","updated_at":"2020-02-17T12:58:01.000Z","dependencies_parsed_at":"2023-07-14T00:30:14.146Z","dependency_job_id":null,"html_url":"https://github.com/nareshnavinash/Cloud-Setup-Ruby","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nareshnavinash/Cloud-Setup-Ruby","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nareshnavinash%2FCloud-Setup-Ruby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nareshnavinash%2FCloud-Setup-Ruby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nareshnavinash%2FCloud-Setup-Ruby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nareshnavinash%2FCloud-Setup-Ruby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nareshnavinash","download_url":"https://codeload.github.com/nareshnavinash/Cloud-Setup-Ruby/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nareshnavinash%2FCloud-Setup-Ruby/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28738997,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T22:12:27.248Z","status":"ssl_error","status_checked_at":"2026-01-24T22:12:10.529Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["cloud-setup","documentation","no-code"],"created_at":"2024-11-06T19:37:36.233Z","updated_at":"2026-01-24T23:31:15.147Z","avatar_url":"https://github.com/nareshnavinash.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cloud Automation Setup\nComplete setup to run UI Automation in cloud.\n\n![alt text](Cloud-Setup.png)\n\nTo run web automation suites in the Jenkins, we need to ensure that the following items are preinstalled in the Linux \u0026 Jenkins server.\n\n1. Need to have Lanugage specific requirements or specific docker images.\n2. Need to have the required browsers in which automation suites are going to run. (eg., Chrome, Firefox, etc.,)\n3. Need to have (Selenium) Drivers corresponding to the browsers. (When Selenium 4.0+ is released this drivers is need not to be installed separately, since it will have internal driver manager.)\n4. Each Jenkins slave (where UI automation is running) should have minimum 2GB ram and minimum 2 core processor with 1.2GHZ processor.\n5. Allure plugin to be added in Jenkins (For reporting purpose)\n\n\nInstallation Procedures: (may change over a period of time)\n\n\n## Language specfic requirements\n\n### Ruby:\n\nInstall latest version of ruby in the linux machine from **[here](https://www.ruby-lang.org/en/documentation/installation/)** and then try installing bundler gem\n```\ngem install bundler\n```\nOnce that is done, Install the RVM manager from [here](https://rvm.io/rvm/install)\n\n**(or)**\n\nGet the docker image which is ruby friendly. [Sample docker image](https://hub.docker.com/_/ruby)\n\n\n### Python:\n\nInstall the latest version of python in the linux machine from **[here](https://docs.python-guide.org/starting/install3/linux/)** and then install the pip package.\n\n**(or)**\n\nGet the docker image which is python friendly. [Sample docker image](https://hub.docker.com/_/python)\n\n\n## Browsers:\n\n### Chrome Installation:\nThe following will install latest chrome in linux\n```\nsudo apt-get install google-chrome-stable\n```\n\n### Uninstall Chrome:\n```\nsudo apt-get purge google-chrome-stable\nrm ~/.config/google-chrome/ -rf\n```\n\n### Install Chrome with specific version:\n```\nwget https://repo.aosc.io/debs/pool/stable/main/g/google-chrome_78.0.3904.70-0_amd64.deb # URL to download the deb file\nsudo dpkg -i google-chrome_78.0.3904.70-0_amd64.deb # name of the downloaded deb file\nsudo apt-get -f install # To resolve the installation with dependencies\n```\n\n\n## Browser Drivers:\n\n### Install Chrome driver:\n```\nversion=$(curl -s https://chromedriver.storage.googleapis.com/LATEST_RELEASE)\nwget -qP \"/tmp/\" \"https://chromedriver.storage.googleapis.com/${version}/chromedriver_linux64.zip\"\nsudo unzip -o /tmp/chromedriver_linux64.zip -d /home/ubuntu/.rvm/gems/ruby-2.5.1/wrappers/chromedriver # in which ever location you want\nsudo chmod 755 /usr/bin/chromedriver\nsudo chown root:root /usr/bin/chromedriver\nsudo chmod +x /usr/bin/chromedriver\n```\n\n### Uninstalling chrome driver:\n```\nfind / -name \"chromedriver\"\nsudo rm -rf /usr/bin/chromedriver # remove all the paths listed in the above command\nchromedriver -v # should not give any versions\n```\n\n\n## Allure for jenkins:\n\nhttps://www.wedoqa.com/2017/11/allure-integration-in-jenkins/\n\n\n\n## Plugins for Jenkins\n\nhttps://wiki.jenkins.io/display/JENKINS/Rebuild+Plugin\n\nhttps://jenkins.io/doc/pipeline/steps/allure-jenkins-plugin/\n\n## In the shell prompt in jenkins\n\n### For ruby\n\nAdd the following to use the ruby in shell prompt and then run.\n```\n#!/bin/bash -l\nrvm list\nls\ncd \u003cpath_to_the_project\u003e\ncucumber #or custom commands\n```\n\n### For Python\n\nAdd the following to use the python from the shell prompt and then run.\n```\n#!/usr/bin/python3\npython --version\ncd \u003cpath_to_the_project\u003e\npip3 install -r requirements.txt\nheadless=1 pytest -s -v -n 4\n```\n\n## In Jenkins allure plugin configuration\n\nIn the results path give `**/\u003cpath_to_your_allure_generated_folder\u003e/` path to the allure.\nSet the report path and allure configuration as `allure-report`.\n\n## Jenkins pipline\n\n### For Ruby\nTo integrate with jenkins pipeline use the following code.\n```\npipeline {\n  agent { docker { image 'ruby:2.6.1' } }\n  stages {\n    stage('requirements') {\n      steps {\n        sh 'gem install bundler -v 2.0.1'\n      }\n    }\n    stage('build') {\n      steps {\n        sh 'bundle install'\n      }\n    }\n    stage('test') {\n      steps {\n        sh 'cucumber ...' # or custom methods \n      }   \n    }\n  }\n}\n```\n\n### For Python\n```\npipeline {\n  agent { docker { image 'python:3.7.6' } }\n  stages {\n    stage('requirements') {\n      steps {\n        sh 'pip install -r requirements.txt'\n      }\n    }\n    stage('build') {\n      steps {\n        sh '# python build command'\n      }\n    }\n    stage('test') {\n      steps {\n        sh 'pytest ...' # or custom methods \n      }   \n    }\n  }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnareshnavinash%2Fcloud-setup-ruby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnareshnavinash%2Fcloud-setup-ruby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnareshnavinash%2Fcloud-setup-ruby/lists"}