mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 12:49:01 +02:00

Update d3/nvd3 js files in the process, but hold off on nv.d3.css for now because the latest version breaks the formatting/fading on tooltips. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
159 lines
5.7 KiB
Plaintext
159 lines
5.7 KiB
Plaintext
OE Layer Index web interface
|
|
============================
|
|
|
|
This is a small Django-based web application that provides a way to
|
|
manage an index of OpenEmbedded metadata layers for use on top of
|
|
OE-Core.
|
|
|
|
|
|
Setup
|
|
-----
|
|
|
|
In order to make use of this application you will need:
|
|
|
|
* Django 1.4.x - tested with 1.4.1; newer versions may work, but the
|
|
application has not been tested with 1.5 or newer.
|
|
* For production usage, a web server set up to host Django applications
|
|
(not needed for local-only testing)
|
|
* A database supported by Django (SQLite, MySQL, etc.). Django takes
|
|
care of creating the database itself, you just need to ensure that the
|
|
database server (if not using SQLite) is configured and running.
|
|
* The following third-party Django modules (tested versions listed):
|
|
* django-south (0.7.5)
|
|
* django-registration (0.8)
|
|
* django-reversion (1.6.5)
|
|
* django-reversion-compare (0.3.5)
|
|
* django-simple-captcha (0.3.6)
|
|
* django-nvd3 (0.1.11)
|
|
* On the machine that will run the backend update script (which does not
|
|
have to be the same machine as the web server, however it does still
|
|
have to have Django installed, have the same or similar configuration
|
|
in settings.py and have access to the database used by the web
|
|
application):
|
|
* Python 2.7.3
|
|
* GitPython (python-git) version 0.3.1 or later
|
|
|
|
Setup instructions:
|
|
|
|
1. Edit settings.py to specify a database, EMAIL_HOST, SECRET_KEY and
|
|
other settings specific to your installation. Ensure you set
|
|
LAYER_FETCH_DIR to an absolute path to a location with sufficient
|
|
space for fetching layer repositories.
|
|
|
|
2. Run the following commands within the layerindex-web directory to
|
|
initialise the database:
|
|
|
|
python manage.py syncdb
|
|
python manage.py migrate
|
|
|
|
You should answer "yes" when asked to create an admin account.
|
|
|
|
3. You can test the web application locally by setting DEBUG = True in
|
|
settings.py and running the following:
|
|
|
|
python manage.py runserver
|
|
|
|
Then visit http://127.0.0.1:8000/layerindex/ with your browser. As
|
|
with all Django applications there is an admin interface available
|
|
at http://127.0.0.1:8000/admin/ also. The initial login and password
|
|
will be those you entered in the step above when creating an admin
|
|
account.
|
|
|
|
NOTE: This local server should only be used for testing - for
|
|
production you need to use a proper web server and have DEBUG set
|
|
to False.
|
|
|
|
4. You'll need to add at least the openembedded-core layer to the
|
|
database, or some equivalent that contains conf/bitbake.conf for
|
|
the base system configuration. To add this, follow these steps:
|
|
|
|
4.1. With the server running, go to the main page (see above) and
|
|
click on the "Log in" button on the top right. Use the
|
|
login/password you added in step 2 above.
|
|
|
|
4.2. Click on the "Submit Layer" button in the top right and
|
|
enter the details for the core layer. To use the real
|
|
openembedded-core layer, use these values:
|
|
|
|
Layer name: openembedded-core
|
|
Layer type: Base
|
|
Summary: Core metadata
|
|
Description: Core metadata
|
|
Repository URL: git://git.openembedded.org/openembedded-core
|
|
Repository subdirectory: meta
|
|
|
|
Once you have filled in the required values, click on the
|
|
"Submit Layer" button.
|
|
|
|
NOTE: The name of the layer must be "openembedded-core",
|
|
unless you change CORE_LAYER_NAME in settings.py to match
|
|
whatever alternative name you use here.
|
|
|
|
4.3. The layer has been added but is not yet published. (For the
|
|
public index this provides some protection against spam and
|
|
malformed entries.) To publish it, click on the orange number
|
|
next to your login name at the top right, click on the
|
|
newly added layer entry, and then click on "Publish Layer".
|
|
|
|
5. Set the site name (as displayed in the top bar and page titles) by
|
|
going into the admin interface (http://127.0.0.1:8000/admin/),
|
|
clicking on "Sites" at the bottom, and editing the first entry,
|
|
setting "Display name" to the desired name.
|
|
|
|
6. You may wish to customise some of the page templates to suit your
|
|
installation, in particular:
|
|
* templates/base.html
|
|
* templates/layerindex/about.html
|
|
|
|
|
|
Usage
|
|
-----
|
|
|
|
On a regular basis you need to run the update script:
|
|
|
|
path/to/layerindex/update.py
|
|
|
|
This will fetch all of the layer repositories, analyse their contents
|
|
and update the database with the results. Note that if you set up more
|
|
than just the master branch in the database, you will need to run the
|
|
script once for each branch using -b (or --branch) to specify the
|
|
branch name. Run the script with --help for further information on
|
|
available options.
|
|
|
|
|
|
Maintenance
|
|
-----------
|
|
|
|
The code for this application is maintained by the Yocto Project.
|
|
|
|
The latest version of the code can always be found here:
|
|
|
|
http://git.yoctoproject.org/cgit/cgit.cgi/layerindex-web/
|
|
|
|
Contributions are welcome. Please send patches / pull requests to
|
|
yocto@yoctoproject.org with '[layerindex-web]' in the subject.
|
|
|
|
|
|
License
|
|
-------
|
|
|
|
This application is based upon the Django project template, whose files
|
|
are covered by the BSD license and are copyright (c) Django Software
|
|
Foundation and individual contributors.
|
|
|
|
Bundled Twitter Bootstrap (including Glyphicons) is redistributed under
|
|
the Apache License 2.0.
|
|
|
|
Bundled jQuery is redistributed under the MIT license.
|
|
|
|
Bundled uitablefilter.js is redistributed under the MIT license.
|
|
|
|
Bundled nv.d3.js is redistributed under the Apache License 2.0.
|
|
|
|
Bundled d3.js is redistributed under the BSD License.
|
|
|
|
All other content is copyright (C) 2013 Intel Corporation and licensed
|
|
under the MIT license (unless otherwise noted) - see COPYING.MIT for
|
|
details.
|
|
|