User Tools

Site Tools


devel:blueprints:unified_source

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
devel:blueprints:unified_source [2009/07/16 12:52]
klette created
devel:blueprints:unified_source [2010/07/18 15:18]
morten add link back to the lp blueprint
Line 1: Line 1:
 +[[https://​blueprints.launchpad.net/​nav/​+spec/​unified-source-tree|Blueprint at launchpad]]
 ===== Unified Source layout ===== ===== Unified Source layout =====
  
Line 60: Line 61:
 ==== New source layout proposal ==== ==== New source layout proposal ====
  
-The new layout is based upon how most django based projects are organized.+The proposed ​new layout is based upon how most django based projects are organized.
  
 <​code>​ <​code>​
Line 67: Line 68:
 |   |-- system1.py |   |-- system1.py
 |   `-- system2.py |   `-- system2.py
-|-- conf+|-- etc
 |   |-- nav.conf |   |-- nav.conf
 |   |-- system1.conf |   |-- system1.conf
 |   `-- system2.conf |   `-- system2.conf
 |-- doc |-- doc
-|   ​|-- ​INSTALL +|   ​|-- ​getting-started.txt 
-|   ​|-- ​LICENSE +|   ​|-- ​system1-setup.txt 
-|   ​`-- ​README +|   ​`-- ​system2-setup.txt 
-|-- other+|-- java
 |   `-- java_app1 |   `-- java_app1
-|-- source+|-- media 
 +|   |-- images 
 +|   |-- js 
 +|   `-- style 
 +|-- python
 |   `-- nav |   `-- nav
 |       |-- __init__.py |       |-- __init__.py
Line 87: Line 92:
 |       ​| ​  `-- __init__.py |       ​| ​  `-- __init__.py
 |       `-- system4 |       `-- system4
-      |   `-- __init__.py+          ​`-- __init__.py
 |-- sql |-- sql
 |   |-- nav-3.5.sql |   |-- nav-3.5.sql
Line 104: Line 109:
 </​code>​ </​code>​
  
-  * The ''​bin''​ directory holds all deamons and similar "​binaries" ​that should ​be installed into an executable ​path +  * The ''​bin''​ directory holds all scripts ​that are to be used as executable ​commands, or "​binaries",​ if you will. 
-  * The ''​conf''​ directory holds all configuration files. ​All deamons should accept a ''​-c''​ commandline argument for specifying configfiles +  * The ''​etc''​ directory holds all configuration files.  
-  * The ''​doc''​ directory holds our documentation +  * The ''​doc''​ directory holds documentation ​outside of the scope of the generic README/​INSTALL/​CHANGES/​HACKING in the top level. ​ 
-  * The ''​other''​ directory holds all system that are not coded in python +  * The ''​java''​ directory holds the legacy java subsystems and other java code. 
-  * The ''​sql''​ directory holds our sql-files +  * The ''​sql''​ directory holds our SQL schema baselines, initial data and upgrade scripts. 
-  * The ''​templates''​ directory holds all templates organized into the system they belong to +  * The ''​templates''​ directory holds all Django ​templates organized into the system they belong to 
-  * The ''​tests''​ directory holds our tests organized by the system they are testing.+  * The ''​tests''​ directory holds our tests
 +  * The ''​media''​ directory holds most of the static media files to be served by a web server (stylesheets,​ graphics, javascript).
  
 This allows us to easily reach all other systems in nav without touching the system-wide installed files. Tests can be neatly organized and run on the development code This allows us to easily reach all other systems in nav without touching the system-wide installed files. Tests can be neatly organized and run on the development code
Line 117: Line 123:
 This change does require quite some work though. All Makefiles must be changed, and systems dependand on relative paths to their configfile must be updated. This change does require quite some work though. All Makefiles must be changed, and systems dependand on relative paths to their configfile must be updated.
 I do think it will be worth the job in the long run though. I do think it will be worth the job in the long run though.
- 
- 
devel/blueprints/unified_source.txt · Last modified: 2010/07/18 15:18 by morten