{"id":18745767,"url":"https://github.com/moshloop/systools","last_synced_at":"2025-11-23T14:30:23.191Z","repository":{"id":138334260,"uuid":"139410930","full_name":"moshloop/systools","owner":"moshloop","description":null,"archived":false,"fork":false,"pushed_at":"2019-01-03T17:43:37.000Z","size":37,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-28T20:26:27.893Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/moshloop.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":"2018-07-02T08:05:06.000Z","updated_at":"2019-01-03T17:43:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"fc95e0c1-187d-4e76-babf-fabe1229a767","html_url":"https://github.com/moshloop/systools","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshloop%2Fsystools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshloop%2Fsystools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshloop%2Fsystools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moshloop%2Fsystools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moshloop","download_url":"https://codeload.github.com/moshloop/systools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239627234,"owners_count":19670844,"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":[],"created_at":"2024-11-07T16:19:37.381Z","updated_at":"2025-11-23T14:30:23.123Z","avatar_url":"https://github.com/moshloop.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cloud-systools\n\ncloud-systools is a suite of helpers and small CLI's tools designed to make the process of installing and configured cloud based servers and services easier.\n\n## Helpers\n\n| Name                     | Description                                                  | Usage                                              |\n| ------------------------ | ------------------------------------------------------------ | -------------------------------------------------- |\n| if_exists                | Shorthand for `if [ -e $file]`                               | `if_exists file || touch file`                     |\n| extract                  | Extracts multiple format archives                            | `extract a.zip; extract a.tgz`                     |\n| install_git_sync         | Checks out and keeps a git repository synchronized with a local folder. \u003cbr\u003e Links `.hooks/post-merge` -\u003e `.git/hooks/post-merge` if it exists | `install_git_sync {git_repo} {local path}`         |\n| install_rpm              | Installs an RPM from an HTTP location. \u003cbr\u003e Checks if the package is installed by filename, rather than downloading | `install_rpm http://host/big_app.rpm`              |\n| install_service          | Creates a new systemd service                                | `install_service {name} {cmd}`                     |\n| install_service_override | Overrides properties for an existing service                 | `install_service_override {service} {key}={value}` |\n| install_timer            | Creates a new systemd based timer task                       | `install_timer {name} {cmd} [time unit]`           |\n| install_bin              | Downloads a file to `/usr/bin/` and `chmod +x`' it           | `install_bin`                                      |\n| deploy_file              | Downloads and copies a file into a directory in a safe manner | `deploy_file {url} {dir}`                          |\n| extract                  | Extract different type of archives silently                  |                                                    |\n| create_service_account   | Creates a new user and home directory meant for for running services | `create_service_account java`                      |\n| bootstrap_volume         | Partitions, formats and mounts a volume                      | `bootstrap_volume {dev} {mount} {type} [owner]`    |\n| port.py                  | Pings all ports on all A records returned                    | `port.py google.com 80,443`                        |\n| update_secret            | Adds/Updates an entry in **/etc/secrets.json**               | `update_secret DB_PASS random`                     |\n\n### AWS Specific Tools\n\n| Name                    | Description                                                  | Usage                                             |\n| ----------------------- | ------------------------------------------------------------ | ------------------------------------------------- |\n| aws_list_hosts          | Lists all hosts in an AWS account in a format suitable for `/etc/hosts` | `aws_list_hosts \u003e /etc/hosts`                     |\n| aws_list_instances      | List all instances in a simplified JSON format               | `aws_list_instances | jq '.[] | [.name,.ip]'`     |\n| aws_list_targets        | List all instances registered with an ELB                    | `aws_list_targets {elb name}`                     |\n| aws_register_target     | Register an instance with an ELB                             | `aws_register_target {elb} {instance-id}`         |\n| aws_deregister_target   | De-register an instance with an ELB                          | `aws_deregister_target {elb} {instance-id}`       |\n| aws_environment_updater | Updates **/etc/environment** with the IP's of instance groups and | `install_timer /usr/bin/aws_environment_updater ` |\n| aws_secret_updater      | Updates **/etc/secrets.json** with SSM secrets               | `install_timer /usr/bin/aws_secret_updater`       |\n| install_aws_codecommit  | Configures git credentials to use AWS                        | `install_aws_codecommit [profile]`                |\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoshloop%2Fsystools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoshloop%2Fsystools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoshloop%2Fsystools/lists"}