     get_snapshots: (opts) =>
         opts = defaults opts,
             filter : undefined
+            match  : undefined   # only return results whose name contains match
             cb     : required
         options = {maxResults:500}   # deal with pagers next year
         options.filter = opts.filter if opts.filter?
         dbg = @dbg("get_snapshots")
         dbg("options=#{misc.to_json(options)}")
+        if opts.match?
+            opts.match = opts.match.toLowerCase()
         @_gce.getSnapshots options, (err, snapshots) =>
             dbg("done")
             if err

        @_disk_cache ?= {}
        return (@_disk_cache[key] ?= new Disk(@, opts.name, opts.zone))

    snapshot: (opts) =>
        opts = defaults opts,
            name : required

    detach_disk: (opts) =>
        opts = defaults opts,
            disk : required
            cb   : undefined
        dbg = @dbg("detach_disk")
        if not (opts.disk instanceof Disk)
            dbg("not Disk")
