-- -- This file and its contents are supplied under the terms of the -- Common Development and Distribution License ("CDDL"), version 1.0. -- You may only use this file in accordance with the terms of version -- 1.0 of the CDDL. -- -- A full copy of the text of the CDDL should have accompanied this -- source. A copy of the CDDL is also available via the Internet at -- http://www.illumos.org/license/CDDL. -- -- -- Copyright (c) 2016, 2017 by Delphix. All rights reserved. -- args = ... argv = args["argv"] fs = argv[1] snap = argv[2] function snapshot_recursive(root) assert(zfs.sync.snapshot(root .. "@" .. snap) == 0) for child in zfs.list.children(root) do snapshot_recursive(child) end end snapshot_recursive(fs)