
The persistence layer can now store which worker failed which task, as preparation for a blocklisting system. Such a system should be able to determine whether there are still any workers left to do the work.
16 lines
289 B
Go
16 lines
289 B
Go
package persistence
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
func (db *DB) migrate() error {
|
|
err := db.gormDB.AutoMigrate(&Job{}, &Task{}, &TaskFailure{}, &Worker{})
|
|
if err != nil {
|
|
return fmt.Errorf("failed to automigrate database: %v", err)
|
|
}
|
|
return nil
|
|
}
|