Project

Profile

Help

Story #7005

closed

As a user, I can run a single stably-named Ansible role to install Pulp

Added by mdepaulo@redhat.com almost 4 years ago. Updated almost 4 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
-
Category:
Installer - Moved to GitHub issues
Sprint/Milestone:
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

We should restructure Pulp Installer's Ansible roles:

  • pulp (common components and pulp-api. pulp-api is actually a boolean)
  • pulp_redis (depends: pulp)
  • pulp_database (depends: pulp) (Has option to install db via external role. Always runs migrations.)
  • pulp_content (undeclared dep: pulp)
  • pulp_resource_manager (depends: pulp_redis, undeclared dep: pulp)
  • pulp_workers (depends: pulp_redis, undeclared dep: pulp)
  • pulp_webserver (depends: pulp)
  • pulp_devel (depends: pulp) (optional)

Where users are supposed to run this role list:

    - pulp_database
    - pulp_workers
    - pulp_resource_manager
    - pulp_webserver
    - pulp_content
    - pulp_devel # (optional)

Into the following:

  • pulp_common (common components) (calls prereqs roles)
  • pulp_redis
  • pulp_database (Has option to install db via external role. Always runs migrations.)
  • pulp_api (depends: pulp_common)
  • pulp_content (depends: pulp_common)
  • pulp_resource_manager (depends: pulp_common)
  • pulp_workers (undeclared dep: pulp_common)
  • pulp_webserver (depends: pulp_common)
  • pulp_devel (depends: pulp_common) (optional)
  • pulp_complete: (depends: everything except pulp_devel)

So then users will just run:

* pulp_complete
* pulp_devel # (optional)

Over time, we can consider adding other meta roles with fewer components. Like one for just the pulp's own services themselves.

Users can still emulate the old behavior, but with longer runtime on dynamic include, by running a slightly different list:

    - pulp_redis** # (New)
    - pulp_database
    - pulp_workers
    - pulp_resource_manager
    - pulp_webserver
    - pulp_content
    - pulp_api # (New)
    - pulp_devel # (optional)

Also, if we ever modify the roles again, users can still just run pulp_complete.

The molecule CI will be updated so that the "static" scenarios will install "pulp_complete"m, while the "dynamic" scenarios will specify the several roles.


Related issues

Related to Pulp - Story #7038: As a user, I can specify a single role to install Pulp itselfCLOSED - CURRENTRELEASEmdepaulo@redhat.com

Actions
Related to Pulp - Issue #7255: pulp_installer via RPM does not account for pulp_install_dirCLOSED - CURRENTRELEASEmdepaulo@redhat.comActions
Blocks Pulp - Story #7006: As a user, I can use a single systemd service to restart PulpCLOSED - CURRENTRELEASEfao89

Actions
Blocks Pulp - Refactor #7037: Split the pulp_database role into 2 roles: database vs configCLOSED - CURRENTRELEASEmdepaulo@redhat.com

Actions

Also available in: Atom PDF