Metadata-Version: 2.1
Name: forge-heroku
Version: 0.4.0
Summary: Work library for Forge
Home-page: https://www.forgepackages.com/
License: MIT
Keywords: django,saas,forge,framework
Author: Dave Gaeddert
Author-email: dave.gaeddert@dropseed.dev
Requires-Python: >=3.8,<4.0
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 4
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: click (>=2.0.0)
Requires-Dist: forge-core (<1.0.0)
Requires-Dist: gunicorn (>=20.1.0,<21.0.0)
Requires-Dist: psycopg2-binary (>=2.9.3,<3.0.0)
Project-URL: Documentation, https://www.forgepackages.com/docs/
Project-URL: Repository, https://github.com/forgepackages/forge-heroku
Description-Content-Type: text/markdown

Deploy a Django project to Heroku with minimal configuration.

This package is specifically designed to work with the [Forge Quickstart](https://www.forgepackages.com/docs/forge/quickstart/) and the [Forge Heroku Buildpack](https://github.com/forgepackages/heroku-buildpack-forge).

Installation outside of the Forge Quickstart might work, but is not documented or necessarily recommended.

## Default Procfile

When you use the Forge buildpack,
Heroku will automatically set up a `Procfile` for you.
Here's what it does:

```yaml
web: forge serve
release: forge pre-deploy
```

If you need to customize your `Procfile`, simply add one to your repo!

## Deploy checks

In the Heroku ["release" phase](https://devcenter.heroku.com/articles/release-phase) we run `manage.py check --deploy --fail-level WARNING` as part of `forge pre-deploy`.

[This runs a number of Django system checks](https://docs.djangoproject.com/en/4.1/howto/deployment/checklist/#run-manage-py-check-deploy) (many related to the settings above) and will prevent deploying your app if any checks fail.
You can also [create your own checks](https://docs.djangoproject.com/en/4.1/topics/checks/) that will run during this process.

## Migrations

The `forge pre-deploy` will also run `manage.py migrate` to ensure that your database is up to date.

