Skip to content

v0.32.0

Choose a tag to compare

@xgame92 xgame92 released this 12 Nov 11:28
36bdebb

A backup Worker in the same Cloudflare account can now back up every workspace. There is no
migration in this release, and nothing changes until such a Worker binds to it.

New

  • A way in for backups. D1 can be backed up from outside the Worker, but a workspace's Durable
    Object can't: only Track's own code reads its SQLite. The Worker now exports a named entrypoint,
    Backup, for a backup Worker such as Gateweave Backup's. It lists the workspaces and runs a SQLite
    dump's reads in one, inside a transaction it always rolls back, so a backup sees one moment and
    can change nothing. It has no route: only a Worker in the same account with a service binding to
    it can call it. A name that isn't a workspace answers null, so a backup never makes an empty
    one. (#272)

If you run your own

  • To back up your workspaces, bind a backup Worker to the entrypoint
    ("services": [{ "binding": "TRACK", "service": "<your Worker>", "entrypoint": "Backup" }]); see
    Backups in docs/self-hosting.md. The copies it makes hold your workspaces' issues and comments:
    keep them as you keep the database.