Move finalizing the id_ssh_key_file based on how other settings are
currently defined to a separate private function and extend the tests to
accept defining additional expects/allows within the table.
This should apply a consistent set of rules where if the user explicitly
supplies the key, it will attempt to resolve it based on the expected
ssh directory, and will always retain the explicit setting even if it
doesn't exist. Where connect_via_ssh is enabled, it will attempt to
detect if the default key exists, otherwise it will disable the setting.
If the user does not want automatic guesses, they can explicitly disable
by setting it to `nil`.
Fixes: #1228
Migrate to github actions as travis has switched to a process that will
require requesting minutes regularly for open source projects, and
current development is slow enough that this additional overhead is too
much.
Correct the generation of the line coverage following the example at
coverallsapp/github-action#29. Remove dependency on coveralls
gem as no longer needed if using the action.
Patch older versions of simplecov to contain a branch_coverage?
method to ensure working with simplecov-lcov.
Filter out spec helpers and test code from coverage reports.
This will prevent future changes reporting reduction in coverage
even when only adding additional tests.
Adds support for exposing the correct version via export-subst for
git-archive constructed tarballs to make it easier to consume directly
from source.
Will check in the following order of preference:
- version file
- format string containing "Tag:"
- clone remote to describe commit
Switch to looking up the version from a file with a fall back to get
it directly from git tags if the file isn't available.
The version file is automatically generated by a task of building of the
gem and included in the package release to prevent reading from git.
Should allow the release process to be automated from pushing of a git
tag.
In 5158b0e733, `git ls-files` was added to list the _files_ and _test_files_. This will never work for any process that uses a source tarball, like Debian packages and I think gems. Using `git ls-files` requires _git_ is installed on the build machine and requires that the _.git/_ dir is present in the source.
Example fixes:
* jfelchner/ruby-progressbar#54
* rubygems/rubygems#2064
* wpscanteam/CMSScanner#64
Add some basic spec tests for the WaitTillUp action class to lay some
foundations. Utilize vagrant-spec pinned to a known working commit for
tests to pass consistently until they provide releases.
Requires updating some of the rspec libraries and includes
sharedcontext.rb from the jantman/vagrant-r10k project on github.
As per #158, vagrant-libvirt depends on ruby-libvirt transitively
through fog. Since fog/fog#2706 was resolved, fog now requires
ruby-libvirt ~> 0.5.0, therefore vagrant-libvirt should allow both 0.4.x
and 0.5.x. Furthermore, according to semantic versioning, we currently
have no good reason to reject anything newer below 1.x. If such a
restriction is required in the future (e.g. < 0.7.0) then it is likely
that fog's .gemspec will take care of that on our behalf anyway.
Closes#158.