Пример #1
0
def main():
    if len(sys.argv) != 4:
        sys.stderr.write("usage: %s FSTYPE MOUNT_POINT DEVICE_NAME\n" % os.path.basename(sys.argv[0]))
        sys.exit(-1)

    fsType = sys.argv[1]
    mountPoint = sys.argv[2]
    device = DiskUtils.getDevice(sys.argv[3])

    deviceFormatLockFile = Utils.getDeviceFormatLockFile(device)
    deviceFormatStatusFile = Utils.getDeviceFormatStatusFile(device)
    deviceFormatOutputFile = Utils.getDeviceFormatOutputFile(device)

    if os.path.exists(deviceFormatStatusFile):
        Utils.log("device format status file %s exists" % deviceFormatStatusFile)
        sys.exit(1)

    if os.path.exists(deviceFormatLockFile):
        Utils.log("device format lock file %s exists" % deviceFormatLockFile)
        sys.exit(2)

    try:
        fp = open(deviceFormatLockFile, "w")
        fp.close()
    except OSError, e:
        Utils.log("failed to create lock file %s: %s" % (deviceFormatLockFile, str(e)))
        writeStatus(deviceFormatStatusFile, "Lock file creation failed\n")
        sys.exit(-2)
def main():
    if len(sys.argv) != 4:
        sys.stderr.write("usage: %s FSTYPE MOUNT_POINT DEVICE_NAME\n" %
                         os.path.basename(sys.argv[0]))
        sys.exit(-1)

    fsType = sys.argv[1]
    mountPoint = sys.argv[2]
    device = DiskUtils.getDevice(sys.argv[3])

    deviceFormatLockFile = Utils.getDeviceFormatLockFile(device)
    deviceFormatStatusFile = Utils.getDeviceFormatStatusFile(device)
    deviceFormatOutputFile = Utils.getDeviceFormatOutputFile(device)

    if os.path.exists(deviceFormatStatusFile):
        Utils.log("device format status file %s exists" %
                  deviceFormatStatusFile)
        sys.exit(1)

    if os.path.exists(deviceFormatLockFile):
        Utils.log("device format lock file %s exists" % deviceFormatLockFile)
        sys.exit(2)

    try:
        fp = open(deviceFormatLockFile, "w")
        fp.close()
    except OSError, e:
        Utils.log("failed to create lock file %s: %s" %
                  (deviceFormatLockFile, str(e)))
        writeStatus(deviceFormatStatusFile, "Lock file creation failed\n")
        sys.exit(-2)
Пример #3
0
def main():
    if Utils.runCommand("wget -t 1 -T 1 -q -O /dev/null %s" % Globals.AWS_WEB_SERVICE_URL) == 0:
        sys.stderr.write("format device unsupported\n")
        sys.exit(1)

    if len(sys.argv) != 4:
        sys.stderr.write("usage: %s FSTYPE MOUNT_POINT DEVICE_NAME\n" % os.path.basename(sys.argv[0]))
        sys.exit(-1)

    fsType = sys.argv[1]
    mountPoint = sys.argv[2]
    device = DiskUtils.getDevice(sys.argv[3])
    deviceName = DiskUtils.getDeviceName(sys.argv[3])

    if not os.path.exists(device):
        sys.stderr.write("device %s not found\n" % sys.argv[3])
        sys.exit(2)

    try:
        if not stat.S_ISBLK(os.stat(device).st_mode):
            sys.stderr.write("%s is not a block device\n" % sys.argv[3])
            sys.exit(3)
    except OSError, e:
        Utils.log("unable to get device %s mode: %s" % (device, str(e)))
        sys.stderr.write("unable to get device %s mode\n" % sys.argv[3])
        sys.exit(-2)
Пример #4
0
def main():
    if Utils.runCommand("wget -t 1 -T 1 -q -O /dev/null %s" %
                        Globals.AWS_WEB_SERVICE_URL) == 0:
        sys.stderr.write("format device unsupported\n")
        sys.exit(1)

    if len(sys.argv) != 4:
        sys.stderr.write("usage: %s FSTYPE MOUNT_POINT DEVICE_NAME\n" %
                         os.path.basename(sys.argv[0]))
        sys.exit(-1)

    fsType = sys.argv[1]
    mountPoint = sys.argv[2]
    device = DiskUtils.getDevice(sys.argv[3])
    deviceName = DiskUtils.getDeviceName(sys.argv[3])

    if not os.path.exists(device):
        sys.stderr.write("device %s not found\n" % sys.argv[3])
        sys.exit(2)

    try:
        if not stat.S_ISBLK(os.stat(device).st_mode):
            sys.stderr.write("%s is not a block device\n" % sys.argv[3])
            sys.exit(3)
    except OSError, e:
        Utils.log("unable to get device %s mode: %s" % (device, str(e)))
        sys.stderr.write("unable to get device %s mode\n" % sys.argv[3])
        sys.exit(-2)
Пример #5
0
def main():
    if len(sys.argv) != 2:
        sys.stderr.write("usage: %s DEVICE_NAME\n" % os.path.basename(sys.argv[0]))
        sys.exit(-1)

    device = DiskUtils.getDevice(sys.argv[1])

    deviceFormatLockFile = Utils.getDeviceFormatLockFile(device)
    deviceFormatStatusFile = Utils.getDeviceFormatStatusFile(device)
    deviceFormatOutputFile = Utils.getDeviceFormatOutputFile(device)

    time.sleep(1)
    if not os.path.exists(deviceFormatLockFile):
        if not os.path.exists(deviceFormatStatusFile):
            sys.stderr.write("Device format not initiated\n")
            sys.exit(1)

    if os.path.exists(deviceFormatStatusFile):
        line = Utils.readFile(deviceFormatStatusFile)
        line = line.strip()

        Utils.removeFile(deviceFormatOutputFile)
        Utils.removeFile(deviceFormatStatusFile)

        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", line)
        if line.upper() == "COMPLETED":
            responseDom.appendTagRoute("formatStatus", "COMPLETED")
        else:
            responseDom.appendTagRoute("formatStatus", "NOT_RUNNING")
        print responseDom.toxml()
        sys.exit(0)

    content = Utils.readFile(deviceFormatOutputFile, lines=True)
    if not content:
        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", None)
        responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
        print responseDom.toxml()
        sys.exit(0)

    lines = [line for line in content
             if "Writing inode tables" in line]
    if not lines:
        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", content[-1])
        responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
        print responseDom.toxml()
        sys.exit(0)

    tokens = [token for token in lines[-1].split("\x08") if token]
    if "done" in tokens[-1]:
        values = tokens[-2].split(':')[-1].strip().split('/')
    else:
        values = tokens[-1].split(':')[-1].strip().split('/')

    responseDom.appendTagRoute("device", sys.argv[1])
    responseDom.appendTagRoute("completedBlocks", values[0])
    responseDom.appendTagRoute("totalBlocks", values[1])
    responseDom.appendTagRoute("message", lines[-1])
    responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
    print responseDom.toxml()
    sys.exit(0)
def main():
    if len(sys.argv) != 2:
        sys.stderr.write("usage: %s DEVICE_NAME\n" %
                         os.path.basename(sys.argv[0]))
        sys.exit(-1)

    device = DiskUtils.getDevice(sys.argv[1])

    deviceFormatLockFile = Utils.getDeviceFormatLockFile(device)
    deviceFormatStatusFile = Utils.getDeviceFormatStatusFile(device)
    deviceFormatOutputFile = Utils.getDeviceFormatOutputFile(device)

    time.sleep(1)
    if not os.path.exists(deviceFormatLockFile):
        if not os.path.exists(deviceFormatStatusFile):
            sys.stderr.write("Device format not initiated\n")
            sys.exit(1)

    if os.path.exists(deviceFormatStatusFile):
        line = Utils.readFile(deviceFormatStatusFile)
        line = line.strip()

        Utils.removeFile(deviceFormatOutputFile)
        Utils.removeFile(deviceFormatStatusFile)

        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", line)
        if line.upper() == "COMPLETED":
            responseDom.appendTagRoute("formatStatus", "COMPLETED")
        else:
            responseDom.appendTagRoute("formatStatus", "NOT_RUNNING")
        print responseDom.toxml()
        sys.exit(0)

    content = Utils.readFile(deviceFormatOutputFile, lines=True)
    if not content:
        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", None)
        responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
        print responseDom.toxml()
        sys.exit(0)

    lines = [line for line in content if "Writing inode tables" in line]
    if not lines:
        responseDom = ResponseXml()
        responseDom.appendTagRoute("device", sys.argv[1])
        responseDom.appendTagRoute("completedBlocks", "0")
        responseDom.appendTagRoute("totalBlocks", "0")
        responseDom.appendTagRoute("message", content[-1])
        responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
        print responseDom.toxml()
        sys.exit(0)

    tokens = [token for token in lines[-1].split("\x08") if token]
    if "done" in tokens[-1]:
        values = tokens[-2].split(':')[-1].strip().split('/')
    else:
        values = tokens[-1].split(':')[-1].strip().split('/')

    responseDom.appendTagRoute("device", sys.argv[1])
    responseDom.appendTagRoute("completedBlocks", values[0])
    responseDom.appendTagRoute("totalBlocks", values[1])
    responseDom.appendTagRoute("message", lines[-1])
    responseDom.appendTagRoute("formatStatus", "IN_PROGRESS")
    print responseDom.toxml()
    sys.exit(0)