InvenTree/docs/start.rst
Oliver Walters 5ee07eae7c Update installation routine and docs
- Single call of "make install" does everything
- Add backup_dir option to yaml config file
2019-08-01 20:07:06 +10:00

2.8 KiB

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> </head>

Getting Started Guide

System Message: ERROR/3 (<stdin>, line 4)

Unknown directive type "toctree".

.. toctree::
   :titlesonly:
   :maxdepth: 2
   :caption: Getting Started
   :hidden:

To install a complete development environment for InvenTree, follow the steps presented below. A production environment will require further work as per the particular application requirements.

A makefile in the root directory provides shortcuts for the installation process, and can also be very useful during development.

Installation

InvenTree is a Python/Django application and relies on the pip package manager. All packages required to develop and test InvenTree can be installed via pip. Package requirements can be found in requirements.txt.

To setup the InvenTree environment, run the command:

make install

which performs the following actions:

  • Installs all required Python packages using pip package manager
  • Generates a SECREY_KEY file required for the django authentication framework
  • Performs initial database installation and migrations
  • Prompts user to create a superuser account

Install Configuration

InvenTree provides a simple default setup which should work out of the box for testing and debug purposes. For installation in production environments, further configuration options are available in the config.yaml configuration file.

The configuration file provides administrators control over various setup options without digging into the Django settings.py script. The default setup uses a sqlite database with DEBUG mode enabled.

For further information on installation configuration, refer to the Configuration section.

Run Development Server

Run python3 InvenTree/manage.py runserver 127.0.0.1:8000 to launch a development server. This will launch the InvenTree web interface at 127.0.0.1:8000. For other options refer to the django docs.

Database Migrations

Whenever a change is made to the underlying database schema, database migrations must be performed. Call make migrate to run any outstanding database migrations.

Development and Testing

Other shorthand functions are provided for the development and testing process:

  • make requirements - Install all required underlying packages using PIP
  • make secret - Generate the SECRET_KEY file for session validation
  • make superuser - Create a superuser account
  • make backup - Backup database tables and media files
  • make test - Run all unit tests
  • make coverage - Run all unit tests and generate code coverage report
  • make style - Check Python codebase against PEP coding standards (using Flake)
  • make documentation - Generate this documentation
</html>