The GitHub lister will serve as base for other listers. Some operations need to be factored out and cleaned up for other listers to be able to reuse/inspire themselves of.
- Database schema management
- à la swh.storage: one full SQL file with schema version + incremental updates
- Initialization
- Connection to the main database (origins)
- Connection to the scheduler database (tasks)
- Origin/Task creation (incremental and full operations)
- Mass create tasks and get ids
- Mass create origins and get ids
- Task disabling (full operations)
- Mass disable tasks from ids
We obviously need to make sure those operations exist in the underlying libraries (swh.storage, swh.scheduler)