Metadata-Version: 2.1
Name: django-uws
Version: 0.2.dev355575
Summary: Django implementation of the IVOA UWS pattern.
Home-page: https://git.astron.nl/astron-sdc/django-uws
License: Apache License 2.0
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 3
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Astronomy
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE

# Django Universal Worker Service

Django implementation of the IVOA UWS pattern.

The Universal Worker Service (UWS) pattern defines how to manage asynchronous execution of jobs on a service. Any application of the pattern defines a family of related services with a common service contract. Possible uses of the pattern are also described.

Url: https://www.ivoa.net/documents/UWS/
DOI: 10.5479/ADS/bib/2016ivoa.spec.1024H

## Quick start
1. add `uws` to your `INSTALLED_APPS` setting likes this:
```python
    INSTALLED_APPS = [
        ...
        'uws',
        ...
    ]
```

2. Include the uws URLconf in your project urls.py like this:
```python
    ...
    path('uws/', include('uws.urls')),  # 'uws/' can be replaced by the name of your service
    ...
```

3. Run `python manage.py migrate uws` to create the UWS models.
    Optionally: `python manage.py migrate uws --database uws` by specifying
```python
    DATABASE_ROUTERS = [
    ...
    "uws.database_router.UWSDatabaseRouter",
    ...
    ]
```
    and a `uws` entry in your `DATABASES` setting


4. **TODO:** Add Celery configuration
    Create a `celery.py` file in the `<project>` folder:
```python
import os

from celery import Celery

# Set the default Django settings module for the 'celery' program.
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.default_settings")

app = Celery("project") # Change to something related to your Service

app.config_from_object("django.conf:settings", namespace="CELERY")

app.autodiscover_tasks()

```



## Worker


## Contributing

For developer access to this repository, please send a message on the [ESAP channel on Rocket Chat](https://chat.escape2020.de/channel/esap).
