Project

Profile

Help

Task #2908

Build a plugin writer's Vagrant VM and publish on Vagrant cloud on a Pulp account

Added by bmbouter over 2 years ago. Updated 6 months ago.

Status:
CLOSED - WONTFIX
Priority:
Low
Assignee:
Category:
-
Sprint/Milestone:
Start date:
Due date:
% Done:

0%

Platform Release:
Blocks Release:
Backwards Incompatible:
No
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 32

Description

Vagrant cloud is where Vagrant machines can be published. This task is to have the ability to build a Vagrant box that does the following:

1. A clean Vagrant F26 box
2. A non-source checkout of pulpcore installed on it. This will be installed using the published playbooks on galaxy
3. Add a nice welcome screen with motd indicating that they should install a plugin, run its migrations, or consider making a plugin with the Pulp dev guide.

Once done building the box, if it was built successfully, the build code will upload the box to Vagrant.

The user account name on vagrant cloud should be 'pulp' and the name of this Vagrantbox should be 'pulpcore'. This task includes registering the account on Vagrant cloud and responsibly storing the credentials.

We should produce both virtualbox and libvirtd images.

This needs to come with docs on how to use it which should be roughly:

1. install vagrant w/ either virtualbox or libvirtd backends
2. vagrant init pulp
3. vagrant up pulp

Build steps:

1) Add Virtualbox repo file0 to a fedora 25/26 machine

2) # Install Virtualbox and make sure all of it's kernel modules are compiled and installed.
dnf install kernel-devel, dkms
dnf install VirtualBox-5.1

3) Install Packer1

4) Install vagrant

5) # add the f26 virtualbox
vagrant box add fedora/26-cloud-base --provider virtualbox

6) Create a Packer template that uses the image downloaded by vagrant in ~/.vagrant.d/boxes/ and uses an ansible provisioner to provision the box. This2 ansible playbook from should be used.

7) Run packer with the template from 6

[0] http://download.virtualbox.org/virtualbox/rpm/fedora/virtualbox.repo
[1] https://www.packer.io/downloads.html
[2] https://raw.githubusercontent.com/pulp/devel/3.0-dev/ansible/deploy-pulp3.yml


Checklist

History

#1 Updated by bmbouter over 2 years ago

  • Description updated (diff)

#2 Updated by bmbouter over 2 years ago

  • Sprint Candidate changed from No to Yes

#3 Updated by dkliban@redhat.com over 2 years ago

  • Groomed changed from No to Yes

#4 Updated by dkliban@redhat.com over 2 years ago

There is a chance that Jenkins does not support nested virtualization which is required for building Vagrant box images.

#5 Updated by dkliban@redhat.com over 2 years ago

  • Blocks Task #2909: Document the plugin development Vagrant file in the plugin writer's guide added

#6 Updated by amacdona@redhat.com over 2 years ago

  • Blocked by Story #2840: Publish ansible roles to install pulp3 added

#7 Updated by mhrivnak over 2 years ago

  • Priority changed from Normal to Low

#8 Updated by mhrivnak over 2 years ago

  • Sprint/Milestone set to 42

#9 Updated by mhrivnak about 2 years ago

  • Sprint/Milestone changed from 42 to 43

#10 Updated by jortel@redhat.com about 2 years ago

  • Sprint/Milestone changed from 43 to 44

#11 Updated by dalley about 2 years ago

I spent some time researching this and haven't found any information about Jenkins supporting (or not supporting) nested virtualization. I don't think that's the level at which it needs to be supported, though. If it's supported by the CPU and the kernel flags, then it should work... if not we might be out of luck.

https://fedoraproject.org/wiki/How_to_enable_nested_virtualization_in_KVM

(I don't know if Jenkins is on top of KVM or Xen, etc. so maybe the details will differ)

#12 Updated by bmbouter about 2 years ago

  • Subject changed from Add Jenkins job to build a plugin writer's Vagrant VM and publish on Vagrant cloud on a Pulp account to Build a plugin writer's Vagrant VM and publish on Vagrant cloud on a Pulp account

#13 Updated by bmbouter about 2 years ago

  • Description updated (diff)

#14 Updated by dkliban@redhat.com about 2 years ago

  • Description updated (diff)

#15 Updated by dkliban@redhat.com about 2 years ago

  • Description updated (diff)

#16 Updated by mansari about 2 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to mansari

#17 Updated by dkliban@redhat.com about 2 years ago

  • Description updated (diff)

#18 Updated by mhrivnak about 2 years ago

  • Sprint/Milestone changed from 44 to 45

#19 Updated by dkliban@redhat.com about 2 years ago

  • Description updated (diff)

#20 Updated by dkliban@redhat.com about 2 years ago

  • Description updated (diff)

#21 Updated by jortel@redhat.com about 2 years ago

  • Sprint/Milestone changed from 45 to 46

#22 Updated by mhrivnak almost 2 years ago

  • Sprint/Milestone changed from 46 to 47

#23 Updated by dalley almost 2 years ago

  • Project changed from Pulp to Infrastructure

#24 Updated by dalley almost 2 years ago

  • Project changed from Infrastructure to Pulp

#25 Updated by rchan almost 2 years ago

  • Sprint/Milestone changed from 47 to 48

#26 Updated by bmbouter almost 2 years ago

  • Tags deleted (Pulp 3 Plugin Writer Alpha)

Cleaning up Redmine tags

#27 Updated by rchan almost 2 years ago

  • Sprint/Milestone changed from 48 to 52

#28 Updated by rchan almost 2 years ago

  • Sprint/Milestone changed from 52 to 53

#29 Updated by mansari almost 2 years ago

  • Status changed from ASSIGNED to POST

#30 Updated by jortel@redhat.com over 1 year ago

  • Sprint/Milestone changed from 53 to 54

#31 Updated by bmbouter over 1 year ago

  • Sprint set to Sprint 32

#32 Updated by bmbouter over 1 year ago

  • Sprint/Milestone deleted (54)

#33 Updated by dkliban@redhat.com over 1 year ago

  • Status changed from POST to NEW

#34 Updated by dkliban@redhat.com over 1 year ago

  • Blocks deleted (Task #2909: Document the plugin development Vagrant file in the plugin writer's guide)

#35 Updated by dkliban@redhat.com over 1 year ago

  • Blocked by deleted (Story #2840: Publish ansible roles to install pulp3)

#36 Updated by dkliban@redhat.com over 1 year ago

  • Status changed from NEW to CLOSED - WONTFIX

#37 Updated by daviddavis 6 months ago

  • Sprint/Milestone set to 3.0

#38 Updated by bmbouter 6 months ago

  • Tags deleted (Pulp 3)

Please register to edit this issue

Also available in: Atom PDF