Project

Profile

Help

Task #4234

Switch devel environment to use pulplift

Added by dkliban@redhat.com 10 months ago. Updated 6 months ago.

Status:
MODIFIED
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
Start date:
Due date:
% Done:

0%

Platform Release:
Blocks Release:
Backwards Incompatible:
No
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
Dev Environment, Pulp 3 installer
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 47

Description

A 'pulp3-devel' role needs to be added to the ansibl-pulp3 repository0. This role needs to install all the same packages that are currently installed by the 'dev_tools' role1 in the 'devel' repo. The new role should also add all the same bash aliases and config files as done by 'pulp-user' role2 in the 'devel' repo.

The 'source-install.yml' playbook3 needs to be updated to include the new 'pulp3-devel' role.

The developer setup guide4 needs to be updated to tell the user to use pulplift. The documentation should provide information about how to select which plugins get installed by modifying the source-install.yml playbook.

[0] https://github.com/pulp/ansible-pulp3
[1] https://github.com/pulp/devel/tree/master/ansible/roles/dev_tools/
[2] https://github.com/pulp/devel/tree/master/ansible/roles/pulp-user
[3] https://github.com/pulp/ansible-pulp3/blob/master/source-install.yml
[4] https://docs.pulpproject.org/en/3.0/nightly/contributing/dev-setup/index.html

Associated revisions

Revision 51e455cc View on GitHub
Added by CodeHeeler 9 months ago

Switch devel environment to use pulplift

Added pulp3-devel role to the ansible-pulp3 repo

re #4234
https://pulp.plan.io/issues/4234

Revision 95496049 View on GitHub
Added by CodeHeeler 9 months ago

Update vagrant boxes to use SSHFS

Use SSHFS to mount source code from the host onto the vagrant box.
This is part of the update to create pulp3 devel environment w/ pulplift.

re #4234
https://pulp.plan.io/issues/4234

Revision b8ab4d32 View on GitHub
Added by CodeHeeler 9 months ago

Cleanup unused items for pulplift, added docs reqs

Switching devel environment to use pulplift first focused on hooking up,
now focusing on cleaning up unused changes along the way or unwanted items.
Added doc building requirements

re #4234
https://pulp.plan.io/issues/4234

Revision cc9fa8f0 View on GitHub
Added by CodeHeeler 9 months ago

Updating Developer Setup Guide to use Pulplift

Instructs the developer to setup their environment with Pulplift

re #4234
https://pulp.plan.io/issues/4234

Revision cc9fa8f0 View on GitHub
Added by CodeHeeler 9 months ago

Updating Developer Setup Guide to use Pulplift

Instructs the developer to setup their environment with Pulplift

re #4234
https://pulp.plan.io/issues/4234

History

#1 Updated by dkliban@redhat.com 10 months ago

  • Description updated (diff)

#2 Updated by dkliban@redhat.com 10 months ago

  • Description updated (diff)

#3 Updated by amacdona@redhat.com 10 months ago

This looks great. For whoever takes this role, please have a look at the tools installed, it has become somewhat bloated IMO.

There are some tools that are pretty much required for development, (httpie is used in our documentation, for example). Please just bring over the tools that everyone will use. For bonus points, maybe add a new config value "pulp_devel_extra_packages: []" that will allow each dev to specify whatever they want without slowing down everyone else's installation.

#4 Updated by amacdona@redhat.com 10 months ago

  • Groomed changed from No to Yes
  • Tags Dev Environment, Pulp 3 installer added

#5 Updated by CodeHeeler 10 months ago

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

#6 Updated by rchan 9 months ago

  • Sprint set to Sprint 47

Will contribute to good developer experience and a good deliverable by the next plugin writers workshop in early February.

#7 Updated by bmbouter 9 months ago

I had done a few minutes on this in November and I had these changes:

[bmbouter@localhost ansible-pulp3]$ git diff
diff --git a/roles/pulp3/defaults/main.yml b/roles/pulp3/defaults/main.yml
index a13a30f..7498515 100644
--- a/roles/pulp3/defaults/main.yml
+++ b/roles/pulp3/defaults/main.yml
@@ -6,6 +6,7 @@ pulp_default_admin_password: ''
 pulp_install_dir: '/usr/local/lib/pulp'
 pulp_install_plugins: {}
 pulp_install_wsgi_service: true
+pulp_create_user: true
 pulp_user: pulp
 pulp_var_dir: '/var/lib/pulp'
 pulp_wsgi_enabled: true
diff --git a/roles/pulp3/tasks/install.yml b/roles/pulp3/tasks/install.yml
index 2e59abd..26e89fa 100644
--- a/roles/pulp3/tasks/install.yml
+++ b/roles/pulp3/tasks/install.yml
@@ -28,8 +28,8 @@
       user:
         name: '{{ pulp_user }}'
         shell: '{{ result.stdout.strip() }}'
-        home: '{{ pulp_var_dir }}'
         system: true
+      when: pulp_create_user == true

     - name: Create temp dir for Pulp
       file:
diff --git a/source-install.yml b/source-install.yml
index 307ecb4..038bbb4 100644
--- a/source-install.yml
+++ b/source-install.yml
@@ -3,6 +3,8 @@
   vars:
     pulp_source_dir: "/home/vagrant/devel/pulp" 
     pulp_secret_key: "unsafe_default" 
+    pulp_user: "vagrant" 
+    pulp_create_user: false
     pulp_default_admin_password: password
     pulp_install_plugins:
       # pulp-python:

#8 Updated by kersom 9 months ago

Another suggestion is to install pulp-smash in the dev box, allowing to run functional tests locally before push to CI.

Assuming that a virtualenv called pulp available.

pip install git+https://github.com/PulpQE/pulp-smash.git#egg=pulp-smash

#10 Updated by CodeHeeler 9 months ago

  • Status changed from POST to MODIFIED

#11 Updated by daviddavis 6 months ago

  • Sprint/Milestone set to 3.0

#12 Updated by bmbouter 6 months ago

  • Tags deleted (Pulp 3)

Please register to edit this issue

Also available in: Atom PDF