Project

Profile

Help

Task #4961

closed

[Epic] Improve Integration and Testing with Nginx and Apache

Added by bmbouter almost 5 years ago. Updated over 3 years ago.

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

100%

Estimated time:
(Total: 0:00 h)
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

Problems

1. Currently pulp-smash tests assume nginx is in use. This assumption will make some tests difficult such as rewriting nginx configs for specific tests. Also testing how Pulp performs in various deployment types is harder when you have to go through an additional webserver.

2. We don't run the tests through Apache and Nginx on Travis. We should mirror the testing strategy we use for postgreSQL and MariaDB, which is that Travis has those different deployment types in its matrix.

3. The installer nginx and apache doesn't offer the pulp-api service. We need to figure out some way to have users who do want to use nginx and apache get both services.

4. The ansible installer user can't choose what interface the gunicorn services will bind to, this should be consistently configurable for both pulp-api and pulp-content-app

Solutions

1. Switch the ansible installer for pulp-api and pulp-content-app to bind to 127.0.0.1:24817 and 127.0.0.1:24816 respectively.

2. Allow ^ to be configurable via ansible variables so users can set one or both to 0.0.0.0:24816 and 0.0.0.0:24817 for example.

3. Switch pulp-smash to expect Pulp to be available directly at ports 24816 and 24817. When installing using the Ansible installer configure the gunicorn services to be available directly at those ports. Pulp smash will deal will pulp-api and pulp-content-app directly, not through nginx.

4. Fix the nginx and apache configs so that they properly reverse proxy both the pulp-api and pulp-content-app to users.

5. Extend the Travis test matrix to include running pulp-smash against gunicorn directly, through nginx as deployed by the Ansible installer, and through Apache as deployed by the ansible installer.

6. Add/Improve documentation on the various types of deployment options.


Sub-issues 5 (0 open5 closed)

Task #4963: Make pulp-api and pulp-content-app both listen on 127.0.0.1 by defaultCLOSED - CURRENTRELEASEbmbouter

Actions
Task #4964: Add variable to specify bind port for pulp-api and pulp-content-appCLOSED - CURRENTRELEASEbmbouter

Actions
Test #4965: pulp-smash should test pulp-api and pulp-content-app directly, and not through nginx or apacheCLOSED - COMPLETEkersomActions
Task #4966: Nginx needs to expose both pulp-api and pulp-content-appCLOSED - CURRENTRELEASEbmbouter

Actions
Task #4967: Apache needs to expose both pulp-api and pulp-content-appCLOSED - COMPLETE

Actions

Related issues

Related to Ansible Plugin - Test #4915: Test install a collection hosted by Pulp using mazerCLOSED - COMPLETEkersomActions

Also available in: Atom PDF