Execute commands remotely over SSH and WinRM
Clone or download
Jenkins CI
Latest commit d2786f5 Jan 16, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
acceptance (FM-7656) Update puppet_agent module ref Jan 16, 2019
bolt-modules (maint) Ensure targets have puppet-agent feature before service task … Jan 9, 2019
config Remove define_method and use @DaTa getter Dec 20, 2018
developer-docs (BOLT-983) Add plan executor configuration file Dec 17, 2018
exe Remove define_method and use @DaTa getter Dec 20, 2018
lib (GEM) update bolt version to 1.10.0 Jan 16, 2019
libexec (BOLT-1035) Add get_resources function Dec 18, 2018
locales (maint) Add gettext:update_pot Rake task Mar 15, 2018
modules (BOLT-748) Unvendor Puppet Oct 2, 2018
pre-docs (docs) Track output of rake docs task as plan_functions.md Jan 10, 2019
resources (maint) Add simple bash completion (#506) Jul 10, 2018
scripts (maint) Refresh DOCKER_TOKEN to fix docker push to registry Nov 27, 2018
spec Merge pull request #841 from nicklewis/BOLT-1022-hyphens-in-inventory Jan 15, 2019
ux Updated file spec Nov 21, 2017
.dockerignore (BOLT-965) bolt-server Dockerfile to use alpine Nov 8, 2018
.gitignore (BOLT-459) Include reboot plan in Bolt Dec 7, 2018
.rspec (TASKS-14) Add spec helper Aug 11, 2017
.rubocop.yml (maint) Fix rubocop 0.59 issues Sep 10, 2018
.travis.yml (BOLT-1054) Remove collection functions to move to Puppet Dec 21, 2018
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Oct 10, 2017
CONTRIBUTING.md (BOLT-1054) Create a Bolt standard library of plan functions Dec 21, 2018
Dockerfile (BOLT-983) Add plan executor configuration file Dec 17, 2018
Gemfile (maint) Bump Rubocop Dec 6, 2018
LICENSE Initial commit Aug 11, 2017
Puppetfile (FM-7656) Update puppet_agent module ref Jan 16, 2019
README.md (docs) Fix link to bolt server documentation Dec 27, 2018
Rakefile (docs) Track output of rake docs task as plan_functions.md Jan 10, 2019
Vagrantfile (maint) Add setup for running appveyor_agents tests locally Oct 16, 2018
appveyor.yml (BOLT-1054) Remove collection functions to move to Puppet Dec 21, 2018
bolt.gemspec (maint) Do not pin bundler gem to major version 1 Jan 15, 2019
docker-compose.yml (BOLT-916) Download task files from master and support shareable code Oct 17, 2018

README.md

Bolt

Travis Status Appveyor Status Gem Version

Bolt is a Ruby command-line tool for executing commands, scripts, and tasks on remote systems using SSH and WinRM.

  • Executes commands on remote *nix and Windows systems.
  • Distributes and execute scripts, such as Bash, PowerShell, Python.
  • Scales to more than 1000 concurrent connections.
  • Supports industry standard protocols (SSH/SCP, WinRM/PSRP) and authentication methods (password, publickey).

For a step-by-step introduction to Bolt, see our hands-on-lab.

Additionally the Bolt project includes:

  • bolt-server, an experimental HTTP API for executing tasks over SSH and WinRM.
  • bolt-inventory-pdb, a command-line tool for generating an inventory file from a template containing PuppetDB queries.

Installing bolt from a gem is not recommended since core modules will not be available. Please install bolt as a package

Supported platforms

  • Linux, OSX, Windows
  • Ruby 2.3+

For complete usage and installation details, see the Puppet Bolt docs.

For contributing information, including alternate installation methods and running from source code, see CONTRIBUTING.md.

Kudos

Thank you to Marcin Bunsch for allowing Puppet to use the bolt gem name.

Contributing

We welcome error reports and pull requests to Bolt. See CONTRIBUTING.md for how to help.

License

The gem is available as open source under the terms of the Apache 2.0.