in scripts/microupload.py [0:0]
def main(args: List[str]) -> None:
global verbose
opts = docopt(__doc__, argv=args)
verbose = opts['--verbose']
root = opts['PATH']
chdir = opts['--chdir']
if chdir:
os.chdir(chdir)
port = opts['PORT']
print('Connecting to {}'.format(port), file=sys.stderr)
board = Pyboard(port)
files = Files(board)
rel_root = os.path.relpath(root, os.getcwd())
wait_for_board()
if os.path.isdir(root):
to_upload = [os.path.join(rel_root, x)
for x in list_files(root, opts['--exclude'])]
else:
to_upload = [rel_root]
created_cache = set()
for path in progress('Uploading files', to_upload):
local_path = os.path.abspath(path)
remote_path = os.path.normpath(path).replace(os.path.sep, '/')
if verbose:
print('\n{} -> {}'.format(local_path, remote_path),
file=sys.stderr, flush=True)
remote_dir = os.path.dirname(path)
if remote_dir:
make_dirs(files, remote_dir, created_cache)
with open(local_path, 'rb') as fd:
files.put(remote_path, fd.read())
print('Soft reboot', file=sys.stderr, flush=True)
soft_reset(board)