mirror of
				https://github.com/inventree/inventree-docs.git
				synced 2025-10-31 04:45:38 +00:00 
			
		
		
		
	Download the latest configuration template file when building
- So we don't have to manually copy it all the time!
This commit is contained in:
		| @@ -14,6 +14,7 @@ database: | ||||
|  | ||||
|   # --- Available options: --- | ||||
|   # ENGINE: Database engine. Selection from: | ||||
|   #         - sqlite3 | ||||
|   #         - mysql | ||||
|   #         - postgresql | ||||
|   # NAME: Database name | ||||
| @@ -22,6 +23,10 @@ database: | ||||
|   # HOST: Database host address (if required) | ||||
|   # PORT: Database host port (if required) | ||||
|  | ||||
|   # --- Example Configuration - sqlite3 --- | ||||
|   # ENGINE: sqlite3 | ||||
|   # NAME: '/home/inventree/database.sqlite3' | ||||
|  | ||||
|   # --- Example Configuration - MySQL --- | ||||
|   #ENGINE: mysql | ||||
|   #NAME: inventree | ||||
| @@ -63,6 +68,19 @@ currencies: | ||||
|  | ||||
| # Email backend configuration | ||||
| # Ref: https://docs.djangoproject.com/en/dev/topics/email/ | ||||
| # Available options: | ||||
| # host: Email server host address | ||||
| # port: Email port | ||||
| # username: Account username | ||||
| # password: Account password | ||||
| # prefix: Email subject prefix | ||||
| # tls: Enable TLS support | ||||
| # ssl: Enable SSL support | ||||
|  | ||||
| # Alternatively, these options can all be set using environment variables, | ||||
| # with the INVENTREE_EMAIL_ prefix: | ||||
| # e.g. INVENTREE_EMAIL_HOST / INVENTREE_EMAIL_PORT / INVENTREE_EMAIL_USERNAME | ||||
| # Refer to the InvenTree documentation for more information | ||||
|  | ||||
| email: | ||||
|   # backend: 'django.core.mail.backends.smtp.EmailBackend' | ||||
| @@ -78,11 +96,33 @@ email: | ||||
| # Use the environment variable INVENTREE_DEBUG | ||||
| debug: True | ||||
|  | ||||
| # Set debug_toolbar to True to enable a debugging toolbar for InvenTree | ||||
| # Note: This will only be displayed if DEBUG mode is enabled,  | ||||
| #       and only if InvenTree is accessed from a local IP (127.0.0.1) | ||||
| debug_toolbar: False | ||||
|  | ||||
| # Configure the system logging level | ||||
| # Use environment variable INVENTREE_LOG_LEVEL | ||||
| # Options: DEBUG / INFO / WARNING / ERROR / CRITICAL | ||||
| log_level: WARNING | ||||
|  | ||||
| # Allowed hosts (see ALLOWED_HOSTS in Django settings documentation) | ||||
| # A list of strings representing the host/domain names that this Django site can serve. | ||||
| # Default behaviour is to allow all hosts (THIS IS NOT SECURE!) | ||||
| allowed_hosts: | ||||
|   - '*' | ||||
|  | ||||
| # Cross Origin Resource Sharing (CORS) settings (see https://github.com/ottoyiu/django-cors-headers) | ||||
| # Following parameters are  | ||||
| cors: | ||||
|   # CORS_ORIGIN_ALLOW_ALL - If True, the whitelist will not be used and all origins will be accepted. | ||||
|   allow_all: True | ||||
|  | ||||
|   # CORS_ORIGIN_WHITELIST - A list of origins that are authorized to make cross-site HTTP requests. Defaults to [] | ||||
|   # whitelist: | ||||
|   # - https://example.com | ||||
|   # - https://sub.example.com | ||||
|  | ||||
| # MEDIA_ROOT is the local filesystem location for storing uploaded files | ||||
| # By default, it is stored under /home/inventree/data/media | ||||
| # Use environment variable INVENTREE_MEDIA_ROOT | ||||
| @@ -92,3 +132,47 @@ media_root: '/home/inventree/data/media' | ||||
| # By default, it is stored under /home/inventree/data/static | ||||
| # Use environment variable INVENTREE_STATIC_ROOT | ||||
| static_root: '/home/inventree/data/static' | ||||
|  | ||||
| # Optional URL schemes to allow in URL fields | ||||
| # By default, only the following schemes are allowed: ['http', 'https', 'ftp', 'ftps'] | ||||
| # Uncomment the lines below to allow extra schemes | ||||
| #extra_url_schemes: | ||||
| #  - mailto | ||||
| #  - git | ||||
| #  - ssh | ||||
|  | ||||
| # Login configuration | ||||
| # How long do confirmation mail last? | ||||
| # Use environment variable INVENTREE_LOGIN_CONFIRM_DAYS | ||||
| #login_confirm_days: 3 | ||||
| # How many wrong login attempts are permitted? | ||||
| # Use environment variable INVENTREE_LOGIN_ATTEMPTS | ||||
| #login_attempts: 5 | ||||
|  | ||||
| # Permit custom authentication backends | ||||
| #authentication_backends: | ||||
| #  - 'django.contrib.auth.backends.ModelBackend' | ||||
|  | ||||
| #  Custom middleware, sometimes needed alongside an authentication backend change. | ||||
| #middleware: | ||||
| #  - 'django.middleware.security.SecurityMiddleware' | ||||
| #  - 'django.contrib.sessions.middleware.SessionMiddleware' | ||||
| #  - 'django.middleware.locale.LocaleMiddleware' | ||||
| #  - 'django.middleware.common.CommonMiddleware' | ||||
| #  - 'django.middleware.csrf.CsrfViewMiddleware' | ||||
| #  - 'corsheaders.middleware.CorsMiddleware' | ||||
| #  - 'django.contrib.auth.middleware.AuthenticationMiddleware' | ||||
| #  - 'django.contrib.messages.middleware.MessageMiddleware' | ||||
| #  - 'django.middleware.clickjacking.XFrameOptionsMiddleware' | ||||
| #  - 'InvenTree.middleware.AuthRequiredMiddleware' | ||||
|  | ||||
| # Add SSO login-backends | ||||
| # social_backends: | ||||
| #  - 'allauth.socialaccount.providers.keycloak' | ||||
|  | ||||
| # Add specific settings | ||||
| # social_providers: | ||||
| #   keycloak: | ||||
| #     KEYCLOAK_URL: 'https://keycloak.custom/auth' | ||||
| #     KEYCLOAK_REALM: 'master' | ||||
|  | ||||
|   | ||||
| @@ -47,5 +47,4 @@ invoke worker | ||||
| ``` | ||||
|  | ||||
| !!! info "Supervisor" | ||||
|  | ||||
| A better option is to manage the background worker process using a process manager such as supervisor. Refer to the [production server guide](./start/production.md). | ||||
|     A better option is to manage the background worker process using a process manager such as supervisor. Refer to the [production server guide](./start/production.md). | ||||
|   | ||||
							
								
								
									
										16
									
								
								main.py
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								main.py
									
									
									
									
									
								
							| @@ -1,8 +1,24 @@ | ||||
| import os | ||||
| from posixpath import dirname | ||||
|  | ||||
| from urllib import request | ||||
|  | ||||
|  | ||||
| def define_env(env): | ||||
|  | ||||
|     # Ensure that the config template is always up to date | ||||
|     CFG_URL = "https://raw.githubusercontent.com/inventree/InvenTree/master/InvenTree/config_template.yaml" | ||||
|  | ||||
|     response = request.urlopen(CFG_URL) | ||||
|     print(f"Reading config template from GitHub: Response {response.status}") | ||||
|      | ||||
|     if response.status == 200: | ||||
|         data = response.read() | ||||
|  | ||||
|         if len(data) > 0: | ||||
|             with open("_includes/config.yaml", "w") as f: | ||||
|                 f.write(str(data.decode())) | ||||
|  | ||||
|     @env.macro | ||||
|     def listimages(subdir): | ||||
|         """ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user