Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title William Hopper updated an issue Puppet / PUP-4543 Document best practices for acceptance tests with puppet 4 Change By: William Hopper Story Points: 3 1 Add Comment This message was sent by Atlassian JIRA (v6.4.13#64028-sha1:b7939e9) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at https://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title Kylo Ginsberg updated an issue Puppet / PUP-4543 Document best practices for acceptance tests with puppet 4 Change By: Kylo Ginsberg Sprint: Client 2015-06-24 Add Comment This message was sent by Atlassian JIRA (v6.3.15#6346-sha1:dbc023d) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title William Hopper updated an issue Puppet / PUP-4543 Document best practices for acceptance tests with puppet 4 Change By: William Hopper Comment: The workflow I ended up using:*1)* Build a {{puppet-agent}} package with Vanagon, setting {{puppet.json}} to point at your development branch*2)* Spin up a few VMpooler VMs (one master and one agent) and install your {{puppet-agent}} package on them.*4)* Install {{puppetserver}} from yum/apt.puppetlabs.net on your master VM*4)* Add the new private {{bindir}} to root / puppet's path, or symlink the binaries into {{/bin}}*5)* Create a new {{preserved-hosts.yaml}} node config in {{puppet/acceptance/config/nodes}} which points to your new VMs*6)* Run beaker directly, pointing it at your {{preserved-hosts.yaml}} file, with the {{preserve-hosts}} option set to {{always}}. The exact invocation looks something like:{noformat}bundle exec beaker --hosts ./config/nodes/hosts_preserved.yaml --no-provision --preserve-hosts always --tests ./tests/{noformat}The {{preserved-hosts.yaml}} file will look something like:{noformat}---HOSTS: cr7ku0fnq4bgtyg.delivery.puppetlabs.net:roles:- masterplatform: el-7-x86_64ruby_arch: x64hypervisor: vcloudtemplate: redhat-7-x86_64 l9f1epnmxur9fym.delivery.puppetlabs.net:roles:- agentplatform: el-7-x86_64ruby_arch: x64hypervisor: vcloudtemplate: redhat-7-x86_64CONFIG: datastore: instance0 resourcepool: delivery/Quality Assurance/FOSS/Dynamic folder: Delivery/Quality Assurance/FOSS/Dynamic pooling_api: http://vmpooler.delivery.puppetlabs.net/{noformat}... where you'll substitute in your master and agent hostnames. After doing this, Beaker will happily run through the tests it's given. This'll work for any agent platform.*Issues I've run into with this approach:*- The environment is not quite realistic in terms of what will actually happen in CI. For example, today I was seeing somerandom DNS issues between my master and agent causing test failures. I also saw some suspicious failures in the module tests with a clean puppet-agent 1.0.1, which obviously aren't failing in real CI. I will investigate this more when we come back to this ticket.- Currently, building a puppet-agent package using {{puppet-agent#master}} with vanagon results in puppetserver being unable to run on the master due to what I *believe* is the Facter-JRuby issue. (Facter.json in puppet-agent points to facter#master).To get around this, I was installing puppet-agent 1.0.1 on my test VMs and manually patching them with changes from my branch, and then continuing the process. This should not be necessary once that issue is fixed in Facter. Add Comment
Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title William Hopper commented on PUP-4543 Re: Document best practices for acceptance tests with puppet 4 So turns out I'm actually slightly crazy and we can still use ci::test::git pointing at your fork and SHA.. NONE of the above should actually be necessary! Add Comment This message was sent by Atlassian JIRA (v6.3.15#6346-sha1:dbc023d) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/d/optout.
Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title William Hopper commented on PUP-4543 Re: Document best practices for acceptance tests with puppet 4 The workflow I ended up using: 1) Build a puppet-agent package with Vanagon, setting puppet.json to point at your development branch 2) Spin up a few VMpooler VMs (one master and one agent) and install your puppet-agent package on them. 4) Install puppetserver from yum/apt.puppetlabs.net on your master VM 4) Add the new private bindir to root / puppet's path, or symlink the binaries into /bin 5) Create a new preserved-hosts.yaml node config in puppet/acceptance/config/nodes which points to your new VMs 6) Run beaker directly, pointing it at your preserved-hosts.yaml file, with the preserve-hosts option set to always. The exact invocation looks something like: bundle exec beaker --hosts ./config/nodes/hosts_preserved.yaml --no-provision --preserve-hosts always --tests ./tests/ The preserved-hosts.yaml file will look something like: --- HOSTS: cr7ku0fnq4bgtyg.delivery.puppetlabs.net: roles: - master platform: el-7-x86_64
Jira (PUP-4543) Document best practices for acceptance tests with puppet 4
Title: Message Title Kylo Ginsberg created an issue Puppet / PUP-4543 Document best practices for acceptance tests with puppet 4 Issue Type: Task Assignee: Unassigned Created: 2015/05/07 10:37 PM Fix Versions: PUP 4.x Priority: Normal Reporter: Kylo Ginsberg In an AIO world https://github.com/puppetlabs/puppet/blob/master/docs/acceptance_tests.md may need updates for developer workflows, especially testing code from a developer branch. It sounds like William Hopper, Eric Thompson, and Josh Cooper may have relevant experience here. I'm giving this 3 story points and putting it out a few sprints so that we can dedicate appropriate attention to it. Also, it may make sense to spawn additional tickets for improvement as part of this task. Add Comment