github.com/yasker/longhorn-engine@v0.0.0-20160621014712-6ed6cfca0729/app/backing_qcow.go (about)

     1  // +build qcow
     2  
     3  package app
     4  
     5  import (
     6  	"github.com/rancher/longhorn/qcow"
     7  	"github.com/rancher/longhorn/replica"
     8  )
     9  
    10  func openBackingFile(file string) (*replica.BackingFile, error) {
    11  	if file == "" {
    12  		return nil, nil
    13  	}
    14  
    15  	f, err := qcow.Open(file)
    16  	if err != nil {
    17  		return nil, err
    18  	}
    19  
    20  	size, err := f.Size()
    21  	if err != nil {
    22  		return nil, err
    23  	}
    24  
    25  	return &replica.BackingFile{
    26  		Name:       file,
    27  		Disk:       f,
    28  		Size:       size,
    29  		SectorSize: 512,
    30  	}, nil
    31  }