~cf-charmers/charms/trusty/cf-go-router/trunk

« back to all changes in this revision

Viewing changes to hooks/charmhelpers/contrib/storage/linux/utils.py

  • Committer: Alex Prismakov
  • Date: 2014-04-05 16:51:21 UTC
  • mfrom: (11.1.14 cf-go-router)
  • Revision ID: prismakov@gmail.com-20140405165121-yb1rck7vt1jocvzr
Tags: v001
merge to apply last changes in helpers

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
from os import stat
 
2
from stat import S_ISBLK
 
3
 
 
4
from subprocess import (
 
5
    check_call
 
6
)
 
7
 
 
8
 
 
9
def is_block_device(path):
 
10
    '''
 
11
    Confirm device at path is a valid block device node.
 
12
 
 
13
    :returns: boolean: True if path is a block device, False if not.
 
14
    '''
 
15
    return S_ISBLK(stat(path).st_mode)
 
16
 
 
17
 
 
18
def zap_disk(block_device):
 
19
    '''
 
20
    Clear a block device of partition table. Relies on sgdisk, which is
 
21
    installed as pat of the 'gdisk' package in Ubuntu.
 
22
 
 
23
    :param block_device: str: Full path of block device to clean.
 
24
    '''
 
25
    check_call(['sgdisk', '--zap-all', '--clear',
 
26
                '--mbrtogpt', block_device])