Task #6970

Restructure repo to remove extra storage_service directory

Added by Holly Becker about 7 years ago. Updated over 6 years ago.

Status:NewStart date:
Priority:MediumDue date:
Assignee:-% Done:

0%

Category:-
Target version:-
Sponsored:No Requires documentation:

Description

From email:

This may be a crazy idea, but what do you think of eliminating the storage_service directory in the SS?

Instead of

├── debian
├── docs
├── install
├── LICENSE
├── README.rst
├── requirements
├── requirements.txt
├── setup.py
└── storage_service
     ├── administration
     ├── common
     ├── locations
     ├── manage.py
     ├── static
     ├── storage_service
     └── templates

Convert it to:
├── administration
├── common
├── debian
├── docs
├── install
├── LICENSE
├── locations
├── manage.py
├── README.rst
├── requirements
├── requirements.txt
├── setup.py
├── static
├── storage_service
└── templates

I originally put in the 'extra' storage_service directory because 2 scoops of Django suggested it, but I'm not sure I agree with that anymore. They suggest it so that non-code stuff can go in the repo root, like docs, design docs, etc. That doesn't really apply to us since our docs and design stuff is stored outside the repo, and it's not a strong preference even in the book.

Reasons to do this:

  • Fixes problems with py.test to make it a one-line command with no extra setup needed
    • having the repo root different from where manage.py is causes problems and requires that both the repo root and <root>/storage_service be in $PYTHONPATH for py.test to work (and still requires an extra config file)
  • We're probably moving the docs to its own repo with the AM docs, so don't need to separate code from docs anymore, and there isn't much else at the root level
  • Most python projects don't seem to have the extra subdir for code
  • Doesn't seem to cause many problems - debian install file and possibly south need to be updated based on a quick test

Reasons not to:

  • Big change (but only a one time diff)
  • Clutters repo root with both code and packaging
  • Makes it harder to track history of files across the move (though git seems to recognize it as a move)

If we do this, I'd suggest trying to find a time where there are few/no dev branches to minimize the problems rebasing (eg after fedora is moved, since that's our big outstanding change)

Consensus was that making testing easier to automate was enough reason to justify a big one-time change.

History

#1 Updated by Sarah Romkey almost 7 years ago

  • Target version changed from 0.5.0 to 0.6.0

#2 Updated by Justin Simpson almost 7 years ago

  • Target version changed from 0.6.0 to 0.7.0

#3 Updated by Justin Simpson almost 7 years ago

  • Target version changed from 0.7.0 to 0.8.0

#4 Updated by Justin Simpson over 6 years ago

  • Target version deleted (0.8.0)

Also available in: Atom PDF