Project

Profile

Help

Task #4961

[Epic] Improve Integration and Testing with Nginx and Apache

Added by bmbouter 5 months ago. Updated 3 months ago.

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

57%

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

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.


Subtasks

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

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

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-appMODIFIEDbmbouter

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

Actions
Task #4968: Extend Travis matrix for pulpcore and pulpcore-plugin to test nginx and apache testsNEW

Actions
Task #4969: Improve documentation on the nginx and apache deployment offered by the InstallerNEW

Actions

Related issues

Related to Ansible Plugin - Test #4915: Test install a collection hosted by Pulp using mazer CLOSED - COMPLETE Actions

History

#1 Updated by kersom 5 months ago

  • Related to Test #4915: Test install a collection hosted by Pulp using mazer added

Please register to edit this issue

Also available in: Atom PDF