mirror of
https://github.com/ArchiveBox/ArchiveBox.git
synced 2025-05-13 06:34:25 -04:00
check for data folder when running most subcommands
This commit is contained in:
parent
bb10171f99
commit
f0f516e853
9 changed files with 44 additions and 6 deletions
|
@ -5,10 +5,12 @@ __package__ = 'archivebox.cli'
|
|||
__command__ = 'archivebox'
|
||||
__description__ = 'ArchiveBox: The self-hosted internet archive.'
|
||||
|
||||
import os
|
||||
import sys
|
||||
import argparse
|
||||
|
||||
from . import list_subcommands, run_subcommand
|
||||
from ..legacy.config import OUTPUT_DIR
|
||||
|
||||
|
||||
def parse_args(args=None):
|
||||
|
@ -78,7 +80,12 @@ def print_import_tutorial():
|
|||
|
||||
def main(args=None):
|
||||
subcommand, subcommand_args = parse_args(args)
|
||||
existing_index = os.path.exists(os.path.join(OUTPUT_DIR, 'index.json'))
|
||||
|
||||
if subcommand is None:
|
||||
if existing_index:
|
||||
run_subcommand('help', subcommand_args)
|
||||
else:
|
||||
print_import_tutorial()
|
||||
raise SystemExit(0)
|
||||
|
||||
|
|
|
@ -16,6 +16,8 @@ from ..legacy.main import update_archive_data
|
|||
|
||||
|
||||
def main(args=None, stdin=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
@ -55,7 +57,6 @@ def main(args=None, stdin=None):
|
|||
command = parser.parse_args(args)
|
||||
|
||||
check_dependencies()
|
||||
check_data_folder()
|
||||
|
||||
### Handle ingesting urls piped in through stdin
|
||||
# (.e.g if user does cat example_urls.txt | archivebox add)
|
||||
|
|
|
@ -7,11 +7,14 @@ __description__ = 'Print out some info and statistics about the archive collecti
|
|||
import sys
|
||||
import argparse
|
||||
|
||||
from ..legacy.main import info
|
||||
from ..legacy.config import check_data_folder
|
||||
from ..legacy.util import reject_stdin
|
||||
from ..legacy.main import info
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -9,10 +9,13 @@ import argparse
|
|||
|
||||
|
||||
from ..legacy.util import reject_stdin, to_json, to_csv
|
||||
from ..legacy.config import check_data_folder
|
||||
from ..legacy.main import list_archive_data
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -8,11 +8,14 @@ import sys
|
|||
import argparse
|
||||
|
||||
|
||||
from ..legacy.main import remove_archive_links
|
||||
from ..legacy.config import check_data_folder
|
||||
from ..legacy.util import reject_stdin
|
||||
from ..legacy.main import remove_archive_links
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -20,6 +20,7 @@ from ..legacy.config import (
|
|||
USER,
|
||||
ANSI,
|
||||
stderr,
|
||||
check_data_folder,
|
||||
)
|
||||
|
||||
|
||||
|
@ -27,6 +28,8 @@ CRON_COMMENT = 'archivebox_schedule'
|
|||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -7,11 +7,13 @@ __description__ = 'Run the ArchiveBox HTTP server'
|
|||
import sys
|
||||
import argparse
|
||||
|
||||
from ..legacy.config import setup_django, OUTPUT_DIR
|
||||
from ..legacy.config import setup_django, OUTPUT_DIR, ANSI, check_data_folder
|
||||
from ..legacy.util import reject_stdin
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
@ -26,11 +28,22 @@ def main(args=None):
|
|||
default=None,
|
||||
help='Arguments to pass to Django runserver'
|
||||
)
|
||||
parser.add_argument(
|
||||
'--reload',
|
||||
action='store_true',
|
||||
help='Enable auto-reloading when code or templates change',
|
||||
)
|
||||
command = parser.parse_args(args)
|
||||
reject_stdin(__command__)
|
||||
|
||||
setup_django(OUTPUT_DIR)
|
||||
from django.core.management import call_command
|
||||
|
||||
|
||||
print('{green}[+] Starting ArchiveBox webserver...{reset}'.format(**ANSI))
|
||||
if not command.reload:
|
||||
command.runserver_args.append('--noreload')
|
||||
|
||||
call_command("runserver", *command.runserver_args)
|
||||
|
||||
|
||||
|
|
|
@ -7,11 +7,13 @@ __description__ = 'Enter an interactive ArchiveBox Django shell'
|
|||
import sys
|
||||
import argparse
|
||||
|
||||
from ..legacy.config import setup_django, OUTPUT_DIR
|
||||
from ..legacy.config import setup_django, OUTPUT_DIR, check_data_folder
|
||||
from ..legacy.util import reject_stdin
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -8,11 +8,14 @@ import sys
|
|||
import argparse
|
||||
|
||||
|
||||
from ..legacy.config import check_data_folder
|
||||
from ..legacy.util import reject_stdin
|
||||
from ..legacy.main import update_archive_data
|
||||
|
||||
|
||||
def main(args=None):
|
||||
check_data_folder()
|
||||
|
||||
args = sys.argv[1:] if args is None else args
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue