Project

General

Profile

Pulp 3 Integration » History » Version 26

Ian Ballou, 09/05/2019 01:10 PM

1 1 Justin Sherrill
h1. Pulp 3 Integration
2
3
This page is meant to capture links to various resources around pulp3 integration
4
5
* Initial Integration Document: https://docs.google.com/document/d/1eFM4H9BteA_nTDbUkRJgEiqSttXfAtB9-51a_OuwVJw/edit?usp=sharing
6
* Initial Community Post: https://community.theforeman.org/t/pulp-3-migration/10474
7
* Youtube Videos: https://www.youtube.com/playlist?list=PL59WSIBtIpv7tbjnsEAWNcdiOKAmjjgqE
8
* Tasks List: https://docs.google.com/spreadsheets/d/1PFx-VAEXlivlqDYR9INMW26AUWtuMS_XtEnwhFVP5Rc/edit?usp=sharing
9 17 John Mitsch
* Main Tracker: https://projects.theforeman.org/issues/26987
10 2 Justin Sherrill
11
12
13
h2. Katello Dev environment with pulp 3
14
15 15 Justin Sherrill
* Install a katello dev environment with forklift
16
* checkout this forklift pr if its not merged: https://github.com/theforeman/forklift/pull/980
17
* setup ansible-pulp:
18
<pre>
19
cd forklift
20
git clone https://github.com/pulp/ansible-pulp.git
21
cd ansible-pulp
22
ansible-galaxy install -r requirements.yml -p ./roles
23
</pre>
24 1 Justin Sherrill
25 24 Samir Jha
* within forklift run:
26 26 Ian Ballou
<pre>grep "pulp_group" roles/katello_pulp3/tasks/main.yml </pre>
27 24 Samir Jha
If you don't see pulp_group: pulp
28
<pre>
29
find roles/katello_pulp3/tasks/main.yml -type f -exec sed -i 's/pulp_user: pulp/pulp_user: pulp\n    pulp_group: pulp/g' {} \;
30
</pre>
31
32 15 Justin Sherrill
* within forkflift run:
33
<pre>
34
ansible-playbook ./playbooks/katello_pulp3.yml -l centos7-katello-devel
35
</pre>
36 1 Justin Sherrill
37 15 Justin Sherrill
* Refresh the smart proxy: 
38
39
  1. login to katello/foreman
40
  2. navigate to infrastructure > smart proxies
41
  3. click 'refresh' in the list of actions beside your smart proxy
42
You're now rockin' Pulp3
43 18 Partha Aji
44
45 22 Samir Jha
* *Known Issue:* Can't seem to use pulp3 on the box since pulp-api.service fails to start.
46
<pre>
47
sudo chmod -R 777 /etc/pki/pulp/
48
sudo systemctl restart pulp-api.service
49
</pre>
50 18 Partha Aji
51 23 Samir Jha
h2. Smart Proxy Setup:
52
53
* Install a smart proxy to point to your pulp3_dev box
54
* ssh into the smart proxy
55
* sudo mkdir /etc/httpd/conf.d/05-foreman-ssl.d
56
* sudo vi /etc/httpd/conf/httpd.conf
57
* Add IncludeOptional "/etc/httpd/conf.d/05-foreman-ssl.d/*.conf to the end of the file and save
58
* In forklift > Run ansible-playbook ./playbooks/katello_pulp3.yml -l centos7-proxy-devel
59
60 15 Justin Sherrill
h3. Other Resources
61
62
* pulp3 gap analysis wiki https://projects.theforeman.org/projects/katello/wiki/PulpV3GapAnalysis
63
* pulp3 gap analysis etherpad https://etherpad.net/p/pulp3_container
64
* pulp3 docker roadmap https://pulp.plan.io/projects/pulp/wiki/Pulp_Docker_Roadmap
65
66
67 16 Ian Ballou
h3. Old way to deploy pulp3 on other box
68 2 Justin Sherrill
* <pre>yum install vagrant-sshfs</pre>
69
* Checkout pulplift: https://github.com/pulp/pulplift 
70 6 Justin Sherrill
* Follow pulplift readme instructions, copy the centos7-pulp3-github box definition from vagrant/boxes.d/99-local.yaml.example 
71 2 Justin Sherrill
* vagrant up centos7-pulp3-github
72
* On katello dev env, edit /etc/foreman-proxy/settings.d/pulp3.yml    
73
** add/edit options (replacing dev.pulp3 with ip address or hostname of pulplift box):
74
<pre>
75 12 John Mitsch
:enabled: true
76
:pulp_url: http://dev.pulp3/pulp/
77
</pre> 
78
* restart foreman-proxy:  systemctl restart foreman-proxy
79 13 John Mitsch
* refresh your smart proxy, from the Infrastructure > Smart Proxies page
80 14 John Mitsch
* Confirm that you see 'pulp3' show up in the list of features for that smart proxy
81 25 Justin Sherrill
82
h3. Updating of pulp client binding Gems
83
84
Every two weeks on a Friday, a PR should be open against katello to bump the client gems.  A script is provided https://gist.githubusercontent.com/jlsherrill/836268d9ee9b33fc1fff06e9061db4f4/raw/7a1044725b00c44246fd241e9bed644c5fab6321/generate_pulp3_deps.rb to output the relevant requirements that can be put into katello.gemspec.
85
86
Example PR: https://github.com/Katello/katello/pull/8294
87
88
If there are test failures, investigate and attempt to fix them.  VCR re-recording may be necessary. 
89
90
If there is some expected change, this process can be done more often.
91
92
We will ask for a volunteer the thursday prior to each friday.  Current Schedule:
93
94
Sept 6th
95
Sept 20th
96
Oct  4th
97
Oct 18th