mirror of
https://github.com/mealie-recipes/mealie.git
synced 2026-02-15 04:13:11 -05:00
nextcloud migration
This commit is contained in:
@@ -1,12 +1,14 @@
|
||||
from fastapi import APIRouter, HTTPException
|
||||
from models.backup_models import BackupJob
|
||||
from models.migration_models import ChowdownURL
|
||||
from services.migrations.chowdown import chowdown_migrate as chowdow_migrate
|
||||
from services.migrations.nextcloud import migrate as nextcloud_migrate
|
||||
from settings import MIGRATION_DIR
|
||||
from utils.snackbar import SnackResponse
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
# Chowdown
|
||||
@router.post("/api/migration/chowdown/repo/", tags=["Migration"])
|
||||
async def import_chowdown_recipes(repo: ChowdownURL):
|
||||
""" Import Chowsdown Recipes from Repo URL """
|
||||
@@ -23,3 +25,24 @@ async def import_chowdown_recipes(repo: ChowdownURL):
|
||||
"Unable to Migrate Recipes. See Log for Details"
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
# Nextcloud
|
||||
@router.get("/api/migration/nextcloud/available/", tags=["Migration"])
|
||||
async def get_avaiable_nextcloud_imports():
|
||||
""" Returns a list of avaiable directories that can be imported into Mealie """
|
||||
available = []
|
||||
for dir in MIGRATION_DIR.iterdir():
|
||||
if dir.is_dir():
|
||||
available.append(dir.stem)
|
||||
elif dir.suffix == ".zip":
|
||||
available.append(dir.name)
|
||||
|
||||
return available
|
||||
|
||||
|
||||
@router.post("/api/migration/nextcloud/{selection}/import/", tags=["Migration"])
|
||||
async def import_nextcloud_directory(selection: str):
|
||||
""" Imports all the recipes in a given directory """
|
||||
|
||||
return nextcloud_migrate(selection)
|
||||
|
||||
Reference in New Issue
Block a user