diff --git a/frappe/commands/site.py b/frappe/commands/site.py index e76f0c23d0..27fd289f47 100644 --- a/frappe/commands/site.py +++ b/frappe/commands/site.py @@ -675,19 +675,12 @@ def migrate(context, skip_failing=False, skip_search_index=False): @click.command("migrate-to") -@click.argument("frappe_provider") @pass_context -def migrate_to(context, frappe_provider): +def migrate_to(context): "Migrates site to the specified provider" from frappe.integrations.frappe_providers import migrate_to - for site in context.sites: - frappe.init(site=site) - frappe.connect() - migrate_to(site, frappe_provider) - frappe.destroy() - if not context.sites: - raise SiteNotSpecifiedError + migrate_to(context) @click.command("run-patch") diff --git a/frappe/integrations/frappe_providers/__init__.py b/frappe/integrations/frappe_providers/__init__.py index 630c2c08b4..b1f0c41798 100644 --- a/frappe/integrations/frappe_providers/__init__.py +++ b/frappe/integrations/frappe_providers/__init__.py @@ -1,13 +1,8 @@ # imports - standard imports -import sys - # imports - module imports + from frappe.integrations.frappe_providers.frappecloud import frappecloud_migrator -def migrate_to(local_site, frappe_provider): - if frappe_provider in ("frappe.cloud", "frappecloud.com"): - return frappecloud_migrator(local_site) - else: - print(f"{frappe_provider} is not supported yet") - sys.exit(1) +def migrate_to(): + return frappecloud_migrator() diff --git a/frappe/integrations/frappe_providers/frappecloud.py b/frappe/integrations/frappe_providers/frappecloud.py index f276004427..499f05e920 100644 --- a/frappe/integrations/frappe_providers/frappecloud.py +++ b/frappe/integrations/frappe_providers/frappecloud.py @@ -5,10 +5,9 @@ import frappe from frappe.core.utils import html2text -def frappecloud_migrator(local_site): +def get_remote_script(remote_site): print("Retrieving Site Migrator...") - remote_site = frappe.conf.frappecloud_url or "frappecloud.com" - request_url = f"https://{remote_site}/api/method/press.api.script" + request_url = f"http://{remote_site}/api/method/press.api.script" request = requests.get(request_url) if request.status_code / 100 != 2: @@ -19,8 +18,12 @@ def frappecloud_migrator(local_site): ) return - script_contents = request.json()["message"] + return request.json()["message"] + +def frappecloud_migrator(): + remote_site_name = "frappecloud.com" + script_contents = get_remote_script(remote_site=remote_site_name) import os import sys import tempfile @@ -29,4 +32,4 @@ def frappecloud_migrator(local_site): script = tempfile.NamedTemporaryFile(mode="w") script.write(script_contents) print(f"Site Migrator stored at {script.name}") - os.execv(py, [py, script.name, local_site]) + os.execv(py, [py, script.name])