Commit Graph

22 Commits

Author SHA1 Message Date
Tobias Urdin 39b95bd8ae Use openstack_spec_helper from zuul checkout
Change-Id: I4ada5516c72fd951b72f01ff1525fe540ad7bcab
2020-08-30 22:57:25 +02:00
ZhongShengping 4188dafec4 Move to opendev
Change-Id: I772e688b232681e18cd93b8b0dbf00e2107259dc
2019-04-21 14:44:48 +08:00
ZhongShengping 4a659494db Load puppet-openstack_spec_helper locally during tests
Change-Id: I6739f928b043fe5ef9a47ea9aa42e15042b50e88
Co-Authored-By: Mohammed Naser <mnaser@vexxhost.com>
2018-02-12 10:53:36 +08:00
Alex Schultz 5dbc743db5 Update tox configuration
Update the tox configuration to pull in the openstack
upper-constraints.txt when running releasenotes. This will
fix the releasenotes job that is currently failing due to
a new version of sphinx. Additionally this change includes
updates from puppet-modulesync-configs.

Change-Id: If4df45fb726fdb4278f13488abe47324238493a9
2017-05-17 08:25:52 -06:00
Emilien Macchi b611f8e84f Gemfile: rely on puppet-openstack_spec_helper for dependencies
Rely on puppet-openstack_spec_helper gemspec file for managing Gems
dependencies.

Change-Id: I15f228823db041ef44e17b24ffcd518b21272a48
2016-03-29 21:36:23 -04:00
Emilien Macchi 113e335bf6 drop mock dependency
mock is not used anywhere in the module, let's drop it.
This patch will help to hit this bug:
https://launchpad.net/bugs/1492636

Change-Id: Ie2495846e8a0c2115de5689d3ed3b6751fc781e4
2016-01-22 09:47:02 -05:00
Alex Schultz 3c9b622396 Add rspec-puppet-facts to the spec_helper
This change adds the rspec-puppet-facts gem to the spec helper so that
we can centralize the management of the base operating systems that we
support. rspec-puppet-facts allows us to simplify our unit tests and
provides a more complete list of Operating Systems and their associated
facts for the unit tests.  With this change we can now loop over and
test CentOS, Debian, Fedora, RedHat, and Ubuntu by simply providing a
list of supported os to rspec-puppet-facts.

Additionally this change includes a central object for managing our
supported os list for rspec-puppet-facts and providing our default facts
like os_service_default. This central object should replace the usage of
@default_facts within the unit tests for each module.

Change-Id: Ib3e13535309c14edd8b639b3c05950bb543544f2
2016-01-14 20:55:33 +03:00
Emilien Macchi 06e150fa18 Try to use zuul-cloner to prepare fixtures
In OpenStack Infra, we would like to run Puppet unit tests that
sometimes depends on other Puppet OpenStack modules.
Example: a patch in puppet-openstacklib that needs to be tested in puppet-nova.

This patch modifies the Rakefile to:
* clean spec_prep and spec_clean Rake tasks
* use openstack/puppet-openstack-integration/install_modules_unit.sh script
  to clone modules.
* do not use .fixtures.yaml file to clone modules and rely on
  zuul-cloner or git.
* Add openstack/ in gitignore so we never commit the
  puppet-openstack-integration repository (can happen when spec_clean
  did not run but you want to submit the patch anyway)
* Allow to run a custom Puppetfile if PUPPETFILE env is exported. It
  will allow people to test the module with the dependencies they like,
  feature we had with .fixtures.yaml.

Also add 'r10k' to Gemfile.

That way, we will be able to use zuul dependencies and run tests accross
modules like we do with functional testing.

Change-Id: I7b5af3ea6b21009a505a8b6c49086d339eaa43e5
2015-10-08 14:56:03 -07:00
Cody Herriges aba03fb675 Initial msync run for all Puppet OpenStack modules
This patch is the initial modulesync run, it impacts:

* gitignore: just a sync between projects
* gemfile:
  - update and allow to setup facter version and gem source
  - split beaker gems with a dedicated group
  - switch to rspec-puppet 2.2.0
* rakefile:
  - use the new syntax for lint configuration
  - add a acceptance target
* acceptance:
  - sync nodesets
* spec: added rspec coverage report

Change-Id: Ie10f1467374a9c254515172f5ddc53f2e628c602
2015-08-06 20:34:34 +02:00
Emilien Macchi ee92a781ec Use beaker-puppet_install_helper to install puppet
When running with BEAKER_provision=no, the following happens:

In Trusty: beaker is running dpkg with '--force' option so even
if Puppet is already installed, the return code will be 0.
In CentOS: beaker is running 'rpm -ivh' the second time and since
the package is already here, the return code will be 1.

Using the new puppet install helper will abort installing puppet
if BEAKER_provision is no, so tests will continue as normal.

Change-Id: Id9c974e53cf29561ba4e94df5b82efff24293ad0
Co-Authored-By: Colleen Murphy <colleen@gazlene.net>
2015-06-30 16:53:57 -04:00
Colleen Murphy d3d9a29df1 Unpin beaker-rspec
The latest version of beaker tries to manage sshd_config[1] in order to
pass through environment variables. JJB also tries to manage
sshd_config by adding Match blocks to securely allow root SSH[2]. When
beaker tries to append the PermitUserEnvironment line after the Match
blocks, SSH fails to open port 22 and beaker can't SSH in to the
node[3]. This patch unpins beaker-rspec and adds set_env: false to the
nodepool nodesets so that the set_env method is never called and does
not try to mess with the sshd_config.

[1] https://github.com/puppetlabs/beaker/blob/master/lib/beaker/host_prebuilt_steps.rb#L528
[2] http://git.openstack.org/cgit/openstack-infra/project-config/tree/jenkins/jobs/puppet-module-jobs.yaml#n42
[3] http://logs.openstack.org/61/185161/1/check/gate-puppet-nova-puppet-beaker-rspec-dsvm-centos7/cd81608/console.html.gz#_2015-05-22_22_05_46_933
[4] https://github.com/puppetlabs/beaker/blob/master/lib/beaker/host_prebuilt_steps.rb#L502

Change-Id: Icac3bf7d5fd5dc3b4e24d6d30f76e3378a1f5820
2015-06-08 13:44:42 -07:00
Emilien Macchi b975b22d97 Bring Redhat support to acceptance tests
OpenStack Infra has jobs to run this on both Ubuntu Trusty and CentOS7.

* Add minitest to Gemfile (dependency to run beaker on centos - see
  http://projects.theforeman.org/issues/2650 for details)
* separate nodepool files to have trusty & centos7 support in OS infra
* spec: add case for repo configuration and support
  RH systems.

Change-Id: I9189efd25a8a6894b9b0be4da45bbdd49b487913
Closes-bug: #1444736
2015-05-14 13:58:49 -04:00
Emilien Macchi 99614aa4db Beaker tests
Implement basic structure for beaker tests.
Closes-bug: #1444736

Change-Id: Ic3d029e9c2a9870f9c40c755b1bdc4b3bc6259a8
2015-05-06 16:24:14 -04:00
Emilien Macchi e7b5313d61 Bump rspec-puppet to 2.1.0
rspec-puppet 2.1.0 includes Puppet 4.0 support [1].

[1] https://github.com/rodjek/rspec-puppet/commits/v2.1.0

Change-Id: I93fb678381336042825723d726c66c6cf4c3d145
2015-04-22 23:51:07 -04:00
Gael Chamoulaud cb436e722e spec: updates for rspec-puppet 2.x and rspec 3.x
This patch aim to update our specs test in order to work with the rspec-puppet
release 2.0.0, in the mean time, we update rspec syntax order to be prepared
for rspec 3.x move.

In details:
* Upgrade and pin rspec-puppet from 1.0.1 to 2.0.0
* Convert 'should' keyword to 'is_expected.to' (prepare rspec 3.x)
* Fix spec tests for rspec-puppet 2.0.0
* Clean Gemfile (remove over-specificication of runtime deps of
  puppetlabs_spec_helper)

Change-Id: I405830cd95c9f0635418b91ff081c43d77234e39
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-04-14 11:38:34 +02:00
Gael Chamoulaud 0f1a965e43 Add Puppet 4.x lint checks
This changes the puppet-lint requirement to 1.1.x, so that we can use
puppet-lint plugins. Most of these plugins are for 4.x compat, but some
just catch common errors.

Change-Id: I5d8988653943631d5d2179702de1220263b67850
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-03-17 15:52:16 +01:00
Sebastien Badia 1c31420b4a spec: pin rspec-puppet to 1.0.1
rspec-puppet (2.0.0) was released yesterday[1], this new version broke
puppet-openstack unit tests (undefined method `resource')[2] as talked on
and in a second time to update your specs to 2.0.0 and rspec 3.x`)

[1] 8459e14807
[2] http://logs.openstack.org/45/105245/6/check/gate-puppet-nova-puppet-unit-3.3/3682541/console.html

Change-Id: Ic4dd93b3dbb8b22cd31e93e0c18ba7356a79d7b6
Partial-bug: #1417604
2015-02-03 15:32:20 +01:00
Clayton O'Neill 32d7609606 Normalize Gemfile & pin tests to rspec < 2.99
Pin to rspec < 2.99 until rspec-puppet officially supports rspec 3.x.
This is to avoid warnings due to deprecated matchers in the
rspec-puppet gem.

This change is also intended to normalize the Gemfile for all stackforge
puppet modules.  This should facilitate pinning gem versions when
releasing new stable branches, since the same diff can be used for all
repos.

Change-Id: I98e5832f89a95e42c8cbbf24121d6cc709c94d81
Partial-Bug: #1326034
2014-06-20 09:15:06 -04:00
Chris Hoge cd421ec7ef Fixed gate by Updating Gemfile to pin Rake to 10.1.1
The latest Rake update requires Ruby >= 1.9. Bundler in the
current gate uses 1.8.x. This update fixes the gate by pinning
Rake to the last known working version.

Change-Id: I3815dac7f6e804142d87890b386c91fce5324443
2014-03-24 15:33:14 -07:00
Mathieu Gagné f0dadb4555 Replace deprecated :rubygems source
Fix deprecation warnings thrown by bundler:

  The source :rubygems is deprecated because HTTP requests are insecure.
  Please change your source to 'https://rubygems.org' if possible,
  or 'http://rubygems.org' if not.

Fixes: bug #1175767
Change-Id: I1292dfca9b910c487a9bfd41366745e8b1684b64
2013-06-10 15:30:35 -04:00
Mathieu Gagné 6bf22ce150 Add puppet-lint to Gemfile
Change-Id: I5a30344402af11f27550ea57bcf07daed4c7ace9
2013-05-21 19:38:39 -04:00
William Van Hevelingen ce5270f239 Add ruby19 and puppet3 to travis matrix 2013-02-09 02:31:13 -08:00