{"id":17083584,"url":"https://github.com/gnikonorov/remote_marshall","last_synced_at":"2025-03-23T13:50:50.433Z","repository":{"id":119156584,"uuid":"105392366","full_name":"gnikonorov/remote_marshall","owner":"gnikonorov","description":"Coordinates sending commands via ssh to hosts","archived":false,"fork":false,"pushed_at":"2018-10-21T02:14:34.000Z","size":12,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-28T20:13:27.712Z","etag":null,"topics":["automation","remote-execution","shell","ubuntu"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gnikonorov.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":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-09-30T18:42:12.000Z","updated_at":"2020-08-26T19:52:35.000Z","dependencies_parsed_at":"2023-07-10T01:15:41.778Z","dependency_job_id":null,"html_url":"https://github.com/gnikonorov/remote_marshall","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnikonorov%2Fremote_marshall","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnikonorov%2Fremote_marshall/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnikonorov%2Fremote_marshall/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnikonorov%2Fremote_marshall/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gnikonorov","download_url":"https://codeload.github.com/gnikonorov/remote_marshall/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245111928,"owners_count":20562511,"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":["automation","remote-execution","shell","ubuntu"],"created_at":"2024-10-14T13:02:55.760Z","updated_at":"2025-03-23T13:50:50.400Z","avatar_url":"https://github.com/gnikonorov.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# REMOTE MARSHALL\n\n__Remote marshall is a shell script that is responsible for coordinating commands over ssh to a set of pre-defined hosts.__\n\n## Description\n\nRemote marshall is used to orchestrate ssh commands to a set of user defined hosts. The script will send a requested command to the set of hosts and note any erroring hosts.\n\nAdditionally, a _threshold_ may be set. A threshold is the indication of the minimum number hosts required to pass in order for script run to be considered a success. If threshold is not met for a run of `marshall.sh`, the script will terminate with an exit code of 2 and output an error to `STDOUT`.\n\n## Commands\n\nThe following commands may be run for this script.\n\n1. --add_host\n\n   This command will add a host to the list of _marshalled hosts_. These are hosts that this script will send commands over ssh to.\n\n2. --remove_host\n\n   Remove a host from the list of _marshalled hosts_. This means that this script will no longer send ssh commands to the host.\n\n3. --display_config\n\n   Output a list of hosts that are currently _marshalled hosts_ and also output the set threshold ( if defined ).\n\n4. --is_file\n\n   Treat the provided command as a file name instead, and send its contents.\n\n5. --set_threshold\n\n   Set the threshold that must be met in order for a run of `marshall.sh` to count as a success. This number is interpretted as a percentage, and if less than threshold% hosts report success, the script will exit with status 2.\n\nFor the help menu of this script, please run `./marshall.sh -h`\n\n## Limitations\n\nThis script will not validate that the commands provided to it are executable on the remote hosts. This is left up to the user to verify before invocation of this script.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgnikonorov%2Fremote_marshall","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgnikonorov%2Fremote_marshall","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgnikonorov%2Fremote_marshall/lists"}