Project

Profile

Help

Story #8231

closed

As a plugin writer, I will use Python's tempfile facilities instead of pulpcore.plugin.WorkingDirectory

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

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

100%

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

Description

Motivation

Pulp is duplicated the stdlib's tempfile module with its from pulpcore.plugin.tasking.WorkingDirectory facilities. In an effort to add, not duplicate value we should remove this so that plugins can use the tempfile module directly.

Recap of current functionality

The tasking system (with 3.10 at least) already creates a working directory in /var/lib/pulp/cache/ and changes dir into it. It's namespaced by worker and task name so for example: ``. <--- put example here

Plugin Experience

So plugins already have a working directory. If they need more they can create subdirectories using the tempfile facilities. Those would be nesteded in an area that is already theirs.

Docs for plugin writers

Along with this story a new section should be added to the plugin writers guide called Working Directories. It should include docs that identify:

  • that each task gets a clean, unique working directory, and it's set as the current working directory by the time their task code gets called
  • If plugin writers need additional working directories, they should use the tempfile package to create more. These likely should be subdirectories of the one the tasking system provided for them.
  • An example of creating a sub-dir of the working directory created by the tasking system.

Related issues

Precedes Pulp - Task #8354: Remove deprecated WorkingDirectoyCLOSED - CURRENTRELEASEmdellweg

Actions
Actions #1

Updated by bmbouter almost 4 years ago

  • Description updated (diff)
Actions #2

Updated by ipanova@redhat.com over 3 years ago

  • Sprint/Milestone changed from 3.11.0 to 3.12.0
Actions #3

Updated by mdellweg over 3 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to mdellweg
Actions #4

Updated by pulpbot over 3 years ago

  • Status changed from ASSIGNED to POST
Actions #5

Updated by mdellweg over 3 years ago

  • Sprint/Milestone changed from 3.12.0 to 3.11.0
Actions #6

Updated by mdellweg over 3 years ago

  • Precedes Task #8354: Remove deprecated WorkingDirectoy added

Added by mdellweg over 3 years ago

Revision 7a6a5232 | View on GitHub

Deprecate WorkingDirectory

Additionally document the use of tempfile.TemporaryDirectory.

fixes #8231 https://pulp.plan.io/issues/8231

Actions #7

Updated by mdellweg over 3 years ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100
Actions #8

Updated by ipanova@redhat.com over 3 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE

Also available in: Atom PDF