{"id":16653643,"url":"https://github.com/norm/bend","last_synced_at":"2025-12-27T10:07:53.597Z","repository":{"id":66550692,"uuid":"40494112","full_name":"norm/bend","owner":"norm","description":"A wrapper around battleschool, the ansible-powered development environment provisioner","archived":false,"fork":false,"pushed_at":"2015-08-11T13:21:59.000Z","size":95,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T17:49:52.561Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/norm.png","metadata":{"files":{"readme":"README.markdown","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}},"created_at":"2015-08-10T16:46:17.000Z","updated_at":"2021-04-04T08:30:40.000Z","dependencies_parsed_at":"2023-02-25T19:36:19.878Z","dependency_job_id":null,"html_url":"https://github.com/norm/bend","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/norm/bend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norm%2Fbend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norm%2Fbend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norm%2Fbend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norm%2Fbend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/norm","download_url":"https://codeload.github.com/norm/bend/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norm%2Fbend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28077395,"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","status":"online","status_checked_at":"2025-12-27T02:00:05.897Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-10-12T09:46:16.504Z","updated_at":"2025-12-27T10:07:53.580Z","avatar_url":"https://github.com/norm.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"bend\n====\n\nA wrapper around [battleschool] to enable sharing configuration setups between\ncomputers and/or people.\n\nI have more than one computer that I would like to set up using battleschool.\nThey need different configurations but I still want to keep the configuration\nin a single place. Hence, this.\n\nYou can see [my configuration] for an example of how to set things up.\n\n[battleschool]: https://github.com/spencergibb/battleschool\n[my configuration]: https://github.com/norm/bend-configuration\n\n## Installation\n\n    # check out the repo, then: (may need sudo)\n    cp bend /usr/local/bin\n\n## Usage\n\n    bend [-v] [--user USER] [--host HOST] [--dir DIR] [HOST] [USER]\n\neg:\n\n    # accept all defaults\n    bend\n\n    # change the hostname (default is `hostname -s`)\n    bend dev_box\n    bend --host dev_box\n    BEND_HOST=dev_box bend\n\n    # change the username (default is $USER)\n    bend --user bob\n    BEND_USER=bob bend\n\n    # change both\n    bend --user bob --host dev_box\n    bend dev_box bob\n    BEND_USER=bob BEND_HOST=dev_box bend\n\n    # change the directory where config files are kept\n    # (default is ~/etc/battleschool)\n    bend --dir ~/.battleschool\n\n    # list what files are used to create the final config\n    bend -v\n\n\n## Configuration\n\nA normal `battleschool` configuration directory contains a file `config.yml`.\nBend will create this file for you by combining (in this order):\n\n* `common.yml`\n* `host/\u003chost\u003e.yml`\n* `user/\u003cuser\u003e.yml`\n\nThis allows you to specify the local playbooks, URLs and git repositories to\nuse on a global, per-host and per-user basis. Each file is optional (but at\nleast one must exist for this to make any sense).\n\nIf any of the following exist, they are assumed to contain extra variables\nused during the `battleschool` run:\n\n* `common.vars.yml`\n* `host/\u003chost\u003e.vars.yml`\n* `user/\u003cuser\u003e.vars.yml`\n\n\n## Why bend?\n\n* it **bends** computers to your will?\n* my laptop is called sinister, and I find it amusing to use the command\n  `bend sinister` to set it up\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorm%2Fbend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnorm%2Fbend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorm%2Fbend/lists"}