diff options
| author | Dmitry Tantsur <dtantsur@protonmail.com> | 2021-05-18 14:11:04 +0200 |
|---|---|---|
| committer | Dmitry Tantsur <dtantsur@protonmail.com> | 2021-05-18 14:45:13 +0200 |
| commit | 606e50031240e3f5bc29aa04e77e2c2f718667ee (patch) | |
| tree | b0afc62f0902172dd16222ae5f1e083022fd9622 /ironic_python_agent/shell | |
| parent | d1844c61b1a419dc39aca41c9266fb65eaff78e4 (diff) | |
| download | ironic-python-agent-606e50031240e3f5bc29aa04e77e2c2f718667ee.tar.gz | |
Rewrite write_image.sh in Python
Change-Id: I0caa65561948f4e0934943a7a0d3a209701b5a59
Diffstat (limited to 'ironic_python_agent/shell')
| -rwxr-xr-x | ironic_python_agent/shell/write_image.sh | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/ironic_python_agent/shell/write_image.sh b/ironic_python_agent/shell/write_image.sh deleted file mode 100755 index 61e9d0b9..00000000 --- a/ironic_python_agent/shell/write_image.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash - -# Copyright 2013 Rackspace, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set -e - -log() { - echo "`basename $0`: $@" -} - -usage() { - [[ -z "$1" ]] || echo -e "USAGE ERROR: $@\n" - echo "`basename $0`: IMAGEFILE DEVICE" - echo " - This script images DEVICE with IMAGEFILE" - exit 1 -} - -IMAGEFILE="$1" -DEVICE="$2" - -[[ -f $IMAGEFILE ]] || usage "$IMAGEFILE (IMAGEFILE) is not a file" -[[ -b $DEVICE ]] || usage "$DEVICE (DEVICE) is not a block device" - -# In production this will be replaced with secure erasing the drives -# For now we need to ensure there aren't any old (GPT) partitions on the drive -log "Erasing existing GPT and MBR data structures from ${DEVICE}" - -# NOTE(gfidente): GPT uses 33*512 sectors, this is an attempt to avoid bug: -# https://bugs.launchpad.net/ironic-python-agent/+bug/1737556 -DEVICE_SECTORS_COUNT=`blockdev --getsz $DEVICE` -dd bs=512 if=/dev/zero of=$DEVICE count=33 -dd bs=512 if=/dev/zero of=$DEVICE count=33 seek=$((${DEVICE_SECTORS_COUNT} - 33)) -sgdisk -Z $DEVICE -udevadm settle - -log "Imaging $IMAGEFILE to $DEVICE" - -# limit the memory usage for qemu-img to 2 GiB -ulimit -v 2097152 -qemu-img convert -t directsync -O host_device -W $IMAGEFILE $DEVICE -sync - -log "${DEVICE} imaged successfully!" |
