mirror of
https://github.com/ArchiveBox/ArchiveBox.git
synced 2026-04-25 17:16:00 +03:00
[GH-ISSUE #1289] Rename archivebox oneshot -> archivebox snapshot & archivebox extract, expose atomic subtasks for future job queue system #3814
Labels
No labels
expected: maybe someday
expected: next release
expected: release after next
expected: unlikely unless contributed
good first ticket
help wanted
pull-request
scope: all users
scope: windows users
size: easy
size: hard
size: medium
size: medium
status: backlog
status: blocked
status: done
status: idea-phase
status: needs followup
status: wip
status: wontfix
touches: API/CLI/Spec
touches: configuration
touches: data/schema/architecture
touches: dependencies/packaging
touches: docs
touches: js
touches: views/replayers/html/css
why: correctness
why: functionality
why: performance
why: security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ArchiveBox#3814
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pirate on GitHub (Dec 15, 2023).
Original GitHub issue: https://github.com/ArchiveBox/ArchiveBox/issues/1289
I want each thing that ArchiveBox does internally to be a subcommand exposed directly to users or callable by the Huey job queue system.
It will also have the side effect of making the process tree nicely represent what ArchiveBox is doing internally, and allow users to kill stuck subtasks independently without stopping the entire "add" import.
The old
oneshotwill be renamed and joined by a new command to run a single extractor method:archivebox snapshotCan be run to snapshot an individual URL into the current directory (runs all extractors by default).
This works the same way as
oneshotdoes now, and I'll aliasoneshotto the new command so we don't break backwards compatibility.archivebox extractThis runs an individual extractor method and outputs into the current directory.
After the refactor,
archivebox addwill work by internally enqueuing a job that runsarchivebox snapshot ...for each imported URL.The snapshot job then in turn enqueues a job for each extractor needed on that URL.
Each extractor job then runs
archivebox extract --method=...internally to write the output into the final archive directory.