Sha256: 36e12bb26a4368b0aabe8c617831e1138354919a6d2b0552944a9bfda8761f99

Contents?: true

Size: 1016 Bytes

Versions: 4

Compression:

Stored size: 1016 Bytes

Contents

require "thor"
require "zfs_mgmt"
require "zfs_mgmt/restic"
require "zfs_mgmt/zfs_mgr"
require "zfs_mgmt/zfs_mgr/restic"

class ZfsMgr < Thor
  desc "zfsget [ZFS]", "execute zfs get for the given properties and types and parse the output into a nested hash"
  method_option :properties, :type => :array, :default => ['name'], :desc => "List of properties passed to zfs get"
  method_option :types,      :type => :array, :default => ['filesystem','volume'], enum: ['filesystem','volume','snapshot'], :desc => "list of types"
  def zfsget(zfs)
    pp ZfsMgmt.zfsget(properties: options[:properties],
                      types: options[:types],
                      zfs: zfs)
  end
  desc "snapshot SUBCOMMAND ...ARGS", "manage snapshots"
  subcommand "snapshot", ZfsMgmt::ZfsMgr::Snapshot
  desc "list SUBCOMMAND ...ARGS", "list filesystems"
  subcommand "list", ZfsMgmt::ZfsMgr::List
  desc "restic SUBCOMMAND ...ARGS", "backup zfs to restic"
  subcommand "restic", ZfsMgmt::ZfsMgr::Restic
end

ZfsMgr.start(ARGV)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
zfs_mgmt-0.3.9 bin/zfsmgr
zfs_mgmt-0.3.8 bin/zfsmgr
zfs_mgmt-0.3.7 bin/zfsmgr
zfs_mgmt-0.3.6 bin/zfsmgr