A plugin enabling Foreman to detect machines on the network and make the show up as Hosts.
The installation is split into four parts. General prerequisites and installing Foreman, Smart Proxy and Smart Proxy Dynflow Core plugins
- Install nmap
- This assumes the following directory structure
$PROJECT_ROOT
+- foreman
+- foreman_probing
+- smart-proxy-probing
+- smart_proxy_dynflow
`- smart-proxy
- Clone this repository
- Tell Foreman to load the gem
# In Foreman's checkout
cat <<-END > bundler.d/foreman_probing.rb
gem 'foreman_probing', :path => '../foreman_probing'
END
- Run
bundle install
- Run the migrations and seeds
bundle exec rake db:migrate
bundle exec rake db:seed
- Clone the
smart-proxy-probing
repository - Enable the plugin
# In smart-proxy checkout
cat <<-END > config/settings.d/probing.yml
---
:enabled: true
END
cat <<-END > bundler.d/smart-proxy-probing.rb
gem 'smart-proxy-probing', :path => '../smart-proxy-probing'
END
- Run
bundle install
- Clone this repository
- Enable the plugin
# in smart_proxy_dynflow
cat <<-END > bundler.d/foreman_probing_core.rb
gem 'foreman_probing_core', :path => '../foreman_probing'
END
- Navigate to Monitor > Network scans
- Click Run Scan
- Fill out the form
- Run the scan
- Wait for it to finish
- Observe Hosts created for the scanned machines
- Use Remote Execution or Ansible to manage the hosts
- (optional) Use Remote Execution or Ansible to deploy agents (Puppet, Katello, Chef, Salt minion...)
Some of the roles need foreman_url
parameter to be set. It would be probably best to set this parameter as global and be done with it.
Fork and send a Pull Request. Thanks!
Copyright (c) 2017 Adam Ruzicka
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.