Testing
Go to file
Jelle van der Waa 530c4ab4b5 Describe the setup steps for a debug SMTP server
An test setup SMTP server can be used to test actions which require a
mail to be sent, for example user creation.
2017-05-01 22:54:04 +02:00
devel reporead: Check if package exists in other repo before adopting 2017-01-02 15:05:37 +01:00
main Allow linking to the PGP server over HTTPS 2015-12-31 03:26:35 +02:00
mirrors Fix empty mirror list when mirror status is used 2017-02-22 16:18:27 +01:00
news news/views: Send e-mail to arch-announce on news creation 2017-03-20 17:11:02 -03:00
packages Add missing migration from ad0bddb209 2016-07-31 05:57:15 +00:00
public Add information and ipxe images for the new netboot system 2016-06-03 22:28:27 +02:00
releng Use x86_64 instead of dual postfix for ISO image names 2017-04-02 08:48:47 +02:00
retro Remove now unnecessary empty models.py files 2014-09-11 18:35:36 -05:00
sitestatic Merge pull request #6 from brain0/working 2017-03-07 01:03:25 -05:00
templates Use code tags instead of backticks 2017-04-17 22:07:38 +02:00
todolists Tweak display of todolist descriptions 2015-06-05 08:28:30 -05:00
visualize Master signing keys page improvements 2014-11-07 09:27:56 -06:00
.gitattributes Add gitattributes file 2010-09-30 12:51:36 -05:00
.gitignore Load key before importing newrelic 2013-01-13 20:26:52 -06:00
.travis.yml Add travisci file 2017-05-01 21:57:43 +02:00
archweb.wsgi remove unused newrelic 2017-04-17 21:56:52 +02:00
AUTHORS Update missing names on AUTHORS 2016-07-31 17:01:43 +00:00
feeds.py Add last modified date to releases 2014-10-26 22:26:25 -05:00
HACKING update documentation 2008-10-10 18:38:08 -04:00
LICENSE Initial import for public release... 2007-11-03 03:45:10 -04:00
local_settings.py.example Remove old suggested recommended settings 2014-10-21 17:32:09 -05:00
manage.py Bump requirements to Django 1.4 and add new manage.py 2012-03-23 19:54:40 -05:00
README Move markdown formatted readme to README.md 2013-11-25 21:54:15 -06:00
README.md Describe the setup steps for a debug SMTP server 2017-05-01 22:54:04 +02:00
requirements_prod.txt Bump several requirements 2015-06-18 16:33:31 -05:00
requirements.txt Version bump of the Django version to 1.7.11 2016-04-22 01:37:40 -03:00
settings.py settings: pass when local_settings can't be imported 2017-05-01 21:57:36 +02:00
sitemaps.py Revert "Force minimum last modified date for package files pages in sitemap" 2015-06-05 08:32:52 -05:00
urls.py Slight tweaks to login and logout pages 2015-01-13 18:24:56 -06:00

Archweb README

To get a pretty version of this document, run

$ markdown README > README.html

License

See LICENSE file.

Authors

See AUTHORS file.

Dependencies

  • python2
  • python2-virtualenv

Python dependencies

More detail in requirements.txt and requirements_prod.txt; it is best to use virtualenv and pip to handle these. But if you insist on (Arch Linux) packages, you will probably want the following:

  • django
  • python2-psycopg2
  • python2-markdown
  • python2-memcached

Testing Installation

  1. Run virtualenv2.

     cd /path/to/archweb && virtualenv2 ./env/
    
  2. Activate the virtualenv.

     source ./env/bin/activate
    
  3. Install dependencies through pip.

     pip install -r requirements.txt
    
  4. Copy local_settings.py.example to local_settings.py and modify. Make sure to uncomment the appropriate database section (either sqlite or PostgreSQL).

  5. Sync the database to create it.

     ./manage.py syncdb
    
  6. Migrate changes.

     ./manage.py migrate
    
  7. Load the fixtures to prepopulate some data. If you don't want some of the provided data, adjust the file glob accordingly.

     ./manage.py loaddata main/fixtures/*.json
     ./manage.py loaddata devel/fixtures/*.json
     ./manage.py loaddata mirrors/fixtures/*.json
     ./manage.py loaddata releng/fixtures/*.json
    
  8. Use the following commands to start a service instance

     ./manage.py runserver
    
  9. To optionally populate the database with real data:

     wget http://mirrors.kernel.org/archlinux/core/os/i686/core.db.tar.gz
     ./manage.py reporead i686 core.db.tar.gz
     ./manage.py syncisos
    

Alter architecture and repo to get x86_64 and packages from other repos if needed.

Testing SMTP server

To be able to create an account on your test environment an SMTP server is required. A simple debugging SMTP server can be setup using Python.

    python2 -m smtpd -n -c DebuggingServer localhost:1025

In local_settings.py change the EMAIL_HOST to 'localhost' and the EMAIL_PORT to 1025.

Production Installation

Ask someone who knows, or you are going to be in trouble.

vim: set syntax=markdown et: