{"id":19533200,"url":"https://github.com/kbarnes3/plush","last_synced_at":"2026-05-04T04:03:50.097Z","repository":{"id":21159342,"uuid":"91856032","full_name":"kbarnes3/Plush","owner":"kbarnes3","description":"Easily generate and use GitHub deploy keys with Fabric","archived":false,"fork":false,"pushed_at":"2025-04-03T20:06:30.000Z","size":349,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"trunk","last_synced_at":"2025-04-03T21:22:39.442Z","etag":null,"topics":["deployment","fabric","oauth"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kbarnes3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","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-05-20T00:57:52.000Z","updated_at":"2025-04-03T20:06:33.000Z","dependencies_parsed_at":"2024-05-01T22:38:36.543Z","dependency_job_id":"a440c783-364d-40c7-900c-b535044f07bf","html_url":"https://github.com/kbarnes3/Plush","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbarnes3%2FPlush","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbarnes3%2FPlush/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbarnes3%2FPlush/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kbarnes3%2FPlush/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kbarnes3","download_url":"https://codeload.github.com/kbarnes3/Plush/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250993577,"owners_count":21519695,"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":["deployment","fabric","oauth"],"created_at":"2024-11-11T02:05:56.997Z","updated_at":"2026-05-04T04:03:45.053Z","avatar_url":"https://github.com/kbarnes3.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Plush\n==============\n\n[![Publish Python 🐍 distribution 📦 to PyPI and TestPyPI](https://github.com/kbarnes3/Plush/actions/workflows/release.yml/badge.svg)](https://github.com/kbarnes3/Plush/actions/workflows/release.yml)\n[![Test 🧪 Plush](https://github.com/kbarnes3/Plush/actions/workflows/test.yml/badge.svg)](https://github.com/kbarnes3/Plush/actions/workflows/test.yml)\n\nA helper library for [Fabric](https://www.fabfile.org) to simplify creating and managing GitHub deploy keys when deploying your GitHub-hosted\nrepository. Currently, Plush is only tested on Ubuntu 24.04 LTS.\n\nPlush aims to make deployments easier by:\n- Using OAuth flows to securely connect to the GitHub API on your behalf\n(while supporting 2 factor auth and never handling your username/password)\n- Generating SSH deploy keys on your target server/computer\n- Registering these deploy keys with your GitHub repo programmatically\n- Configuring your new clone to use the appropriate deploy key while not conflicting with other \nSSH keys used elsewhere on your server\n- ACL'ing these keys so they can be reused by people to fetch/deploy on your behalf\n(and not readable by anyone else on the server)\n- Example PowerShell scripts are provided that give tab completion around fab.exe\n\nTo see this project in action, follow the directions in Setup-Dev-Environment.md. You will need access to an Ubuntu 24.04 machine (ideally a VM).\n\n## Usage\n\nThis project is intended to be used by projects that use or are considering [Fabric](https://www.fabfile.org) for their deployments. Plush versions 1.0 and greater expect Fabric 3.2.2 and greater. In a project that uses Fabric, install Plush by running:\n\n```\npip install plush-fabric\n```\n\nTo get started, see the fabfile.py in this repo for a minimal usage of Plush. For a more complete example, see my [BaseDjangoAngular template](https://github.com/kbarnes3/BaseDjangoAngular).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbarnes3%2Fplush","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkbarnes3%2Fplush","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkbarnes3%2Fplush/lists"}