This project provides so many API endpoints to manage Weni Platform marketplace.
- Python ^3.8
- Poetry ^1.0
To run this project, we will need Poetry installed on your machine.
After installing poetry, install all dependencies using (on project root path):
$ poetry installTo enter on Poetry virtual environment, we use:
$ poetry shellIn this project we use environment variables to make most of the configurations.
To speed up the project installation process we use a script to generate our .env file, it can be found in contrib/gen_env.py. To use type:
$ python contrib/gen_env.pyReady, an .env file should be appars on root of project, and from it we can configure our environment variables.
OBS: The use of this script is recommended in development environment only.
To get the database up and running, docker-compose can be handy:
$ docker-compose up -d databaseRun the necessary migrations with:
$ python manage.py migrateTo run the application, you can use:
$ python manage.py runserver 8001| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| DEBUG | Bool | False | True | If True, debug actions are made and shown in stdout. |
| SECRET_KEY | String | True | None | Django's required SECRET_KEY. |
| ALLOWED_HOSTS | List | False | None | Django's ALLOWED_HOSTS variable |
| DATABASE_URL | String | True | None | Postgres database URL. |
| LANGUAGE_CODE | String | False | "en-us" | Language code used in i18n. |
| TIME_ZONE | String | False | "America/Maceio" | Application time zone. |
| MEDIA_ROOT | String | False | "media/" | The default medias folder if S3 is not provided. |
| USE_S3 | Bool | False | False | Boolean that defines if S3 should be used. |
| AWS_ACCESS_KEY_ID | String | False | None | Amazon S3 bucket Access Key. |
| AWS_SECRET_ACCESS_KEY | String | False | None | Amazon S3 bucket Secret Key. |
| AWS_STORAGE_BUCKET_NAME | String | False | None | Amazon S3 bucket name. |
| USE_OIDC | Bool | False | False | Boolean that defines if OIDC should be used. |
| OIDC_RP_CLIENT_ID | String | False | None | OpenID Connect client ID provided by your OP. |
| OIDC_RP_CLIENT_SECRET | String | False | None | OpenID Connect client secret provided by your OP |
| OIDC_OP_AUTHORIZATION_ENDPOINT | String | False | None | URL of your OpenID Connect provider authorization endpoint. |
| OIDC_OP_TOKEN_ENDPOINT | String | False | None | URL of your OpenID Connect provider token endpoint |
| OIDC_OP_USER_ENDPOINT | String | False | None | URL of your OpenID Connect provider userinfo endpoint |
| OIDC_OP_JWKS_ENDPOINT | String | False | None | URL of the OIDC OP jwks endpoint |
| OIDC_RP_SIGN_ALGO | String | False | HS256 | Sets the algorithm the IdP uses to sign ID tokens. |
| OIDC_DRF_AUTH_BACKEND | String | False | None | Sets the default rest framework integration of OIDC with Django |
| OIDC_RP_SCOPES | String | False | openid email | The OpenID Connect scopes to request during login. |
| CORS_ALLOWED_ORIGINS | List | False | [ ] | Allowed Origins at CORS configuration. |
| CONNECT_GRPC_SERVER_URL | String | False | None | URL of gRPC Connect client. |
| CONNECT_CERTIFICATE_GRPC_CRT | String | False | None | Certificate of gRPC Connect client. |
| SOCKET_BASE_URL | String | False | None | Base URL of a Weni Web Chat Socket application |
| FLOWS_HOST_URL | String | False | None | Base URL of a Weni Flows application. |
| CELERY_BROKER_URL | String | False | redis://localhost:6379 | Default broker URL. |
| CELERY_RESULT_BACKEND | String | False | redis://localhost:6379 | The backend used to store task results |
| USE_SENTRY | Bool | False | False | Boolean that defines if Sentry should be initialized. |
| SENTRY_DSN | String | False | None | Sentry's DSN URL. |
| USE_GRPC | Bool | False | False | Boolean that defines if GRPC should be used. |