[minor] reload a plugin doc

This commit is contained in:
Anand Doshi 2013-11-28 18:14:35 +05:30
parent e251d75b61
commit 27504792cc
5 changed files with 24 additions and 16 deletions

View file

@ -453,9 +453,9 @@ def reset_perms(doctype):
clear_perms(doctype)
reload_doc(conn.get_value("DocType", doctype, "module"), "DocType", doctype, force=True)
def reload_doc(module, dt=None, dn=None, force=False):
def reload_doc(module, dt=None, dn=None, plugin=None, force=False):
import webnotes.modules
return webnotes.modules.reload_doc(module, dt, dn, force)
return webnotes.modules.reload_doc(module, dt, dn, plugin=plugin, force=force)
def rename_doc(doctype, old, new, debug=0, force=False, merge=False):
from webnotes.model.rename_doc import rename_doc

View file

@ -42,7 +42,7 @@ def walk_and_sync(start_path, force=0, sync_everything = False, verbose=False):
doctype = path.split(os.sep)[-2]
name = path.split(os.sep)[-1]
if import_file(module_name, doctype, name, force) and verbose:
if import_file(module_name, doctype, name, force=force) and verbose:
print module_name + ' | ' + doctype + ' | ' + name
webnotes.conn.commit()

View file

@ -37,9 +37,9 @@ def get_doc_path(module, doctype, name):
dt, dn = scrub_dt_dn(doctype, name)
return os.path.join(get_module_path(module), dt, dn)
def reload_doc(module, dt=None, dn=None, force=True):
def reload_doc(module, dt=None, dn=None, plugin=None, force=True):
from webnotes.modules.import_file import import_files
return import_files(module, dt, dn, force)
return import_files(module, dt, dn, plugin=plugin, force=force)
def export_doc(doctype, name, module=None, plugin=None):
"""write out a doc"""

View file

@ -5,23 +5,28 @@ from __future__ import unicode_literals
import webnotes, os
from webnotes.modules import scrub, get_module_path, scrub_dt_dn
import webnotes.plugins
def import_files(module, dt=None, dn=None, force=False):
def import_files(module, dt=None, dn=None, plugin=None, force=False):
if type(module) is list:
out = []
for m in module:
out.append(import_file(m[0], m[1], m[2], force))
out.append(import_file(m[0], m[1], m[2], plugin=plugin, force=force))
return out
else:
return import_file(module, dt, dn, force)
return import_file(module, dt, dn, plugin=plugin, force=force)
def import_file(module, dt, dn, force=False):
def import_file(module, dt, dn, plugin=None, force=False):
"""Sync a file from txt if modifed, return false if not updated"""
webnotes.flags.in_import = True
dt, dn = scrub_dt_dn(dt, dn)
path = os.path.join(get_module_path(module),
os.path.join(dt, dn, dn + '.txt'))
if plugin:
path = webnotes.plugins.get_path(module, dt, dn, plugin, extn="txt")
else:
path = os.path.join(get_module_path(module),
os.path.join(dt, dn, dn + '.txt'))
ret = import_file_by_path(path, force)
webnotes.flags.in_import = False
return ret
@ -32,7 +37,7 @@ def import_file_by_path(path, force=False):
with open(path, 'r') as f:
doclist = peval_doclist(f.read())
if doclist:
doc = doclist[0]

9
wnf.py
View file

@ -69,9 +69,11 @@ def setup_parser():
parser.add_argument("-f", "--force", default=False, action="store_true",
help="Force execution where applicable (look for [-f] in help)")
parser.add_argument("--quiet", default=True, action="store_false", dest="verbose",
help="Show verbose output where applicable")
help="Don't show verbose output where applicable")
parser.add_argument("--site", nargs="?", metavar="SITE-NAME or all",
help="Run for a particular site")
parser.add_argument("--plugin", nargs="?", metavar="PLUGIN-NAME",
help="Run for a particular plugin")
return parser.parse_args()
@ -334,9 +336,10 @@ def update_all_sites(remote=None, branch=None, verbose=True):
latest(site=site, verbose=verbose)
@cmd
def reload_doc(module, doctype, docname, site=None, force=False):
def reload_doc(module, doctype, docname, plugin=None, site=None, force=False):
webnotes.connect(site=site)
webnotes.reload_doc(module, doctype, docname, force=force)
webnotes.reload_doc(module, doctype, docname, plugin=plugin, force=force)
webnotes.conn.commit()
webnotes.destroy()
@cmd