{"id":18544075,"url":"https://github.com/swagdevops/mina-setup_ssh","last_synced_at":"2025-06-23T17:09:58.839Z","repository":{"id":172973436,"uuid":"149997162","full_name":"SwagDevOps/mina-setup_ssh","owner":"SwagDevOps","description":null,"archived":false,"fork":false,"pushed_at":"2018-10-19T16:48:20.000Z","size":95,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-15T05:34:28.595Z","etag":null,"topics":["mina","provisioning","ssh","ssh-keys"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SwagDevOps.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":"2018-09-23T15:25:21.000Z","updated_at":"2018-10-19T16:48:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"606979b9-5348-47cc-9061-be3740b2e36e","html_url":"https://github.com/SwagDevOps/mina-setup_ssh","commit_stats":null,"previous_names":["swagdevops/mina-setup_ssh"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SwagDevOps/mina-setup_ssh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwagDevOps%2Fmina-setup_ssh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwagDevOps%2Fmina-setup_ssh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwagDevOps%2Fmina-setup_ssh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwagDevOps%2Fmina-setup_ssh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SwagDevOps","download_url":"https://codeload.github.com/SwagDevOps/mina-setup_ssh/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwagDevOps%2Fmina-setup_ssh/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261519070,"owners_count":23171228,"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":["mina","provisioning","ssh","ssh-keys"],"created_at":"2024-11-06T20:15:19.681Z","updated_at":"2025-06-23T17:09:53.822Z","avatar_url":"https://github.com/SwagDevOps.png","language":"Ruby","readme":"# Mina Setup SSH\n\n``mina-setup_ssh`` provides SSH provisioning for [``mina``][mina-deploy].\n\n## Requirements\n\n``rsync`` is required (by default) to copy SSH keys during ``setup`` task.\n\n## Configuration\n\nThe following configuration variables are available:\n\n| Key                         | Type                    |\n| --------------------------- | ----------------------- |\n| ``setup_ssh_keys``          | ``Array`` or ``Hash``   |\n| ``setup_ssh_sync_command `` | ``Array`` or ``String`` |\n| ``setup_ssh_load_command``  | ``Array`` or ``String`` |\n\nDepends on the following settings:\n\n* ``user``\n* ``domain``\n\nWhen ``setup_ssh_keys`` is a ``Hash``, keys are used to name\nfiles received by the server. When an ``Array`` file naming is symetric.\n\n## Executable dependencies\n\n| Executable  |                                                 |\n| ----------- | ----------------------------------------------- |\n| ``rsync``   | required (as default) both on client and server |\n| ``ssh-add`` | required on server                              |\n| ``ssh``     | required on client (OpenSSH)                    |\n\n## Sample ``Minafile``\n\n```ruby\n# frozen_string_literal: true\n\nrequire 'mina/rails'\nrequire 'mina/git'\nrequire 'mina/setup_ssh/tasks'\n\nset :application_name, 'foobar'\nset :domain, '172.17.0.2'\nset :user, 'root'\nset :deploy_to, '/var/www/foobar.com'\nset :repository, 'ssh://git@example.com:/var/git/foobar.git'\nset :branch, 'master'\nset :forward_agent, true\n\nset :setup_ssh_keys, {\n  git: '~/.ssh/git_rsa'\n}\n\ntask :remote_environment do\n  invoke :'setup:ssh:load'\nend\n\ntask :setup do\n  invoke :'setup:ssh:sync'\nend\n\ntask :deploy do\n  deploy do\n    invoke :'git:clone'\n    invoke :'deploy:link_shared_paths'\n\n    on :launch do\n      in_path(fetch(:current_path)) do\n        command %{mkdir -p tmp/}\n        command %{touch tmp/restart.txt}\n      end\n    end\n  end\nend\n```\n\n[mina-deploy]: https://github.com/mina-deploy\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswagdevops%2Fmina-setup_ssh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswagdevops%2Fmina-setup_ssh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswagdevops%2Fmina-setup_ssh/lists"}