{Build Status] {Gem Version] {Code Climate] {GPL License]
This a plugin for foreman smart-proxy allowing using ssh for the remote execution
Add this line to your smart proxy bundler.d/ssh.rb gemfile:
gem 'smart_proxy_dynflow', :git => 'https://github.com/iNecas/smart_proxy_dynflow.git' gem 'smart_proxy_ssh', :git => 'https://github.com/iNecas/smart_proxy_ssh.git'
Enable the plugins in your smart proxy:
cat > config/settings.d/dynflow.yml <<EOF --- :enabled: true EOF cat > config/settings.d/remote_execution_ssh.yml <<EOF --- :enabled: true EOF
Install the dependencies
$ bundle
To configure this plugin you can use template from settings.d/remote_execution_ssh.yml.example. You must place remote_execution_ssh.yml config file (based on this template) to your smart-proxy config/settings.d/ directory.
Also, you need to have the dynflow
plugin enabled to be able
to
trigger the tasks.
The simplest thing one can do is just to trigger a command:
curl http://my-proxy.example.com:9292/dynflow/tasks \ -X POST -H 'Content-Type: application/json'\ -d '{"action_name": "Proxy::RemoteExecution::Ssh::CommandAction", "action_input": {"task_id" : "1234'$RANDOM'", "script": "/usr/bin/ls", "hostname": "localhost", "effective_user": "root"}}'