/fog-proxmox

Fog module for Proxmox VE Platform

Primary LanguageRubyGNU General Public License v3.0GPL-3.0

Foreman

Fog::Proxmox

CI Maintainability Test Coverage Gem Version

This is a FOG (>= 2.1) module gem to support Proxmox VE

It is intended to satisfy this feature, but Proxmox provider only, and above all this Foreman feature.

It is inspired by the great fog-openstack module.

Compatibility versions

Fog-Proxmox Proxmox VE Fog-core ruby
<0.6 <5.3 >=1.45 >=2.3
>=0.6 >=5.3 >=1.45 >=2.3
>=0.8 >=5.4 >=1.45 >=2.3
>=0.9 >=6.0 >=2.1 >=2.3
>=0.10 >=6.0 >=2.1 >=2.5
>=0.14 >=6.2 >=2.1 >=2.5

Installation

Add this line to your application's Gemfile:

gem 'fog-proxmox'

And then execute:

bundle install

Or install it yourself as:

gem install fog-proxmox

Usage

See documentation.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run bundle exec rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Testing

To record your VCR cassettes:

PROXMOX_URL=https://192.168.56.101:8006/api2/json DISABLE_PROXY=true SSL_VERIFY_PEER=false bundle exec rake spec

To replay all your recorded tests:

USE_VCR=true bundle exec rake spec

To replay one group (compute, identity or network) of your recorded tests:

USE_VCR=true bundle exec rake spec:compute

Code formatting:

bundle exec rake rubocop

Auto correcting (safe):

bundle exec rake rubocop:autocorrect

Exclude cops in todo file:

bundle exec rubocop --auto-gen-config

See all available rake tasks:

bundle exec rake --tasks

Contributing

You can reach the contributors. Bug reports and pull requests are welcome on GitHub at Fog-Proxmox. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

Please read how to contribute.

License

The gem is available as open source under the terms of the GPL v3 License.