... | ... |
@@ -29,6 +29,7 @@ set +o pipefail |
29 | 29 |
|
30 | 30 |
# Set up default directories |
31 | 31 |
IRONIC_DIR=$DEST/ironic |
32 |
+IRONIC_PYTHON_AGENT_DIR=$DEST/ironic-python-agent |
|
32 | 33 |
IRONIC_DATA_DIR=$DATA_DIR/ironic |
33 | 34 |
IRONIC_STATE_PATH=/var/lib/ironic |
34 | 35 |
IRONICCLIENT_DIR=$DEST/python-ironicclient |
... | ... |
@@ -559,6 +560,19 @@ function configure_ironic_auxiliary { |
559 | 559 |
ironic_ssh_check $IRONIC_SSH_KEY_DIR/$IRONIC_SSH_KEY_FILENAME $IRONIC_VM_SSH_ADDRESS $IRONIC_VM_SSH_PORT $IRONIC_SSH_USERNAME 10 |
560 | 560 |
} |
561 | 561 |
|
562 |
+function build_ipa_coreos_ramdisk { |
|
563 |
+ echo "Building ironic-python-agent deploy ramdisk" |
|
564 |
+ local kernel_path=$1 |
|
565 |
+ local ramdisk_path=$2 |
|
566 |
+ git_clone $IRONIC_PYTHON_AGENT_REPO $IRONIC_PYTHON_AGENT_DIR $IRONIC_PYTHON_AGENT_BRANCH |
|
567 |
+ cd $IRONIC_PYTHON_AGENT_DIR |
|
568 |
+ imagebuild/coreos/build_coreos_image.sh |
|
569 |
+ cp imagebuild/coreos/UPLOAD/coreos_production_pxe_image-oem.cpio.gz $ramdisk_path |
|
570 |
+ cp imagebuild/coreos/UPLOAD/coreos_production_pxe.vmlinuz $kernel_path |
|
571 |
+ sudo rm -rf UPLOAD |
|
572 |
+ cd - |
|
573 |
+} |
|
574 |
+ |
|
562 | 575 |
# build deploy kernel+ramdisk, then upload them to glance |
563 | 576 |
# this function sets ``IRONIC_DEPLOY_KERNEL_ID``, ``IRONIC_DEPLOY_RAMDISK_ID`` |
564 | 577 |
function upload_baremetal_ironic_deploy { |
... | ... |
@@ -583,8 +597,8 @@ function upload_baremetal_ironic_deploy { |
583 | 583 |
if [ "$IRONIC_BUILD_DEPLOY_RAMDISK" = "True" ]; then |
584 | 584 |
# we can build them only if we're not offline |
585 | 585 |
if [ "$OFFLINE" != "True" ]; then |
586 |
- if [ "$IRONIC_DEPLOY_RAMDISK" == "agent_ssh" ]; then |
|
587 |
- die $LINENO "Ironic-python-agent build is not yet supported" |
|
586 |
+ if [ "$IRONIC_DEPLOY_DRIVER" == "agent_ssh" ]; then |
|
587 |
+ build_ipa_coreos_ramdisk $IRONIC_DEPLOY_KERNEL_PATH $IRONIC_DEPLOY_RAMDISK_PATH |
|
588 | 588 |
else |
589 | 589 |
ramdisk-image-create $IRONIC_DEPLOY_FLAVOR \ |
590 | 590 |
-o $TOP_DIR/files/ir-deploy |
... | ... |
@@ -172,9 +172,11 @@ HORIZON_BRANCH=${HORIZON_BRANCH:-master} |
172 | 172 |
HORIZONAUTH_REPO=${HORIZONAUTH_REPO:-${GIT_BASE}/openstack/django_openstack_auth.git} |
173 | 173 |
HORIZONAUTH_BRANCH=${HORIZONAUTH_BRANCH:-master} |
174 | 174 |
|
175 |
-# baremetal provisionint service |
|
175 |
+# baremetal provisioning service |
|
176 | 176 |
IRONIC_REPO=${IRONIC_REPO:-${GIT_BASE}/openstack/ironic.git} |
177 | 177 |
IRONIC_BRANCH=${IRONIC_BRANCH:-master} |
178 |
+IRONIC_PYTHON_AGENT_REPO=${IRONIC_PYTHON_AGENT_REPO:-${GIT_BASE}/openstack/ironic-python-agent.git} |
|
179 |
+IRONIC_PYTHON_AGENT_BRANCH=${IRONIC_PYTHON_AGENT_BRANCH:-master} |
|
178 | 180 |
|
179 | 181 |
# ironic client |
180 | 182 |
IRONICCLIENT_REPO=${IRONICCLIENT_REPO:-${GIT_BASE}/openstack/python-ironicclient.git} |