Merge "Remove first-boot.d support"
This commit is contained in:
commit
5b71da8899
25
README.md
25
README.md
@ -364,13 +364,6 @@ Each element can use the following files to define or affect dependencies:
|
||||
file and A and C are included when building an image, then B is not used.
|
||||
|
||||
|
||||
### First-boot files ###
|
||||
|
||||
* first-boot.d: **DEPRECATED** Runs inside the image before
|
||||
rc.local. Scripts from here are good for doing per-instance
|
||||
configuration based on cloud metadata. **This will be removed in a
|
||||
future release of diskimage-builder. The os-refresh-config element in
|
||||
tripleo-image-elements is recommended as a replacement.**
|
||||
|
||||
### Ramdisk Elements ###
|
||||
|
||||
@ -435,23 +428,12 @@ possible approach to this would be to label elements as either a "driver",
|
||||
10-user - common Nova user accts
|
||||
50-my-pack - install packages from my PPA
|
||||
60-nova - install nova and some dependencies
|
||||
first-boot.d/
|
||||
60-nova - do some post-install config for nova
|
||||
|
||||
- In the general case, configuration should probably be handled either by the
|
||||
meta-data service (eg, during first-boot.d) or via normal CM tools
|
||||
meta-data service (eg, o-r-c) or via normal CM tools
|
||||
(eg, salt). That being said, it may occasionally be desirable to create a
|
||||
set of elements which express a distinct configuration of the same software
|
||||
components. For example, if one were to bake a region-specific SSL cert into
|
||||
the images deployed in each region, one might express it like this:
|
||||
|
||||
elements/
|
||||
config-az1/
|
||||
first-boot.d/
|
||||
20-ssl - add the az1 certificate
|
||||
config-az2/
|
||||
first-boot.d/
|
||||
20-ssl - add the az2 certificate
|
||||
components.
|
||||
|
||||
In this way, depending on the hardware and in which availability zone it is
|
||||
to be deployed, an image would be composed of:
|
||||
@ -486,8 +468,7 @@ comma-delimited string. Some examples:
|
||||
* break=before-block-device-size will break before the block device size hooks
|
||||
are called.
|
||||
|
||||
* break=after-first-boot,before-pre-install will break after the first-boot
|
||||
hooks and before the pre-install hooks.
|
||||
* break=before-pre-install will break before the pre-install hooks.
|
||||
|
||||
* break=after-error will break after an error during a in target hookpoint.
|
||||
|
||||
|
@ -160,7 +160,6 @@ do_extra_package_install
|
||||
# Call install scripts to pull in the software users want.
|
||||
run_d_in_target install
|
||||
run_d_in_target post-install
|
||||
prepare_first_boot
|
||||
# ensure we do not have a lost+found directory in the root folder
|
||||
# that could cause copy to fail (it will be created again later
|
||||
# when creating the file system, if it needs such directory)
|
||||
|
@ -1,12 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
set -o pipefail
|
||||
set -o xtrace
|
||||
|
||||
touch /var/log/first-boot.d.log
|
||||
chmod 0600 /var/log/first-boot.d.log
|
||||
|
||||
/usr/local/bin/dib-run-parts /etc/first-boot.d >> /var/log/first-boot.d.log 2>&1
|
||||
rm -fr /etc/first-boot.d
|
||||
# delete itself
|
||||
rm $0
|
@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
if [ -d /etc/first-boot.d ]; then
|
||||
install -m 0755 -o root -g root $(dirname $0)/../dib-first-boot /usr/sbin/
|
||||
fi
|
@ -1,34 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
if [ -d /etc/first-boot.d ]; then
|
||||
rc_local=/etc/rc.d/rc.local
|
||||
|
||||
FILE_EXISTED=
|
||||
if [ -f $rc_local ]; then
|
||||
FILE_EXISTED=1
|
||||
mv $rc_local $rc_local.REAL
|
||||
fi
|
||||
|
||||
dd of=$rc_local <<EOF
|
||||
#!/bin/bash
|
||||
set -e
|
||||
set -o xtrace
|
||||
|
||||
dib-first-boot
|
||||
EOF
|
||||
|
||||
if [ $FILE_EXISTED ]; then
|
||||
echo "mv $rc_local.REAL $rc_local" >> $rc_local
|
||||
else
|
||||
echo "rm \$0" >> $rc_local
|
||||
fi
|
||||
|
||||
echo "exit 0" >> $rc_local
|
||||
|
||||
chmod 755 $rc_local
|
||||
|
||||
# Enable the service
|
||||
systemctl enable rc-local.service
|
||||
fi
|
@ -1,22 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
if [ -d /etc/first-boot.d ]; then
|
||||
rc_local=/etc/rc.local
|
||||
|
||||
mv $rc_local $rc_local.REAL
|
||||
|
||||
dd of=$rc_local <<EOF
|
||||
#!/bin/bash
|
||||
set -e
|
||||
set -o xtrace
|
||||
|
||||
dib-first-boot
|
||||
|
||||
mv $rc_local.REAL $rc_local
|
||||
exit 0
|
||||
EOF
|
||||
|
||||
chmod 755 $rc_local
|
||||
fi
|
@ -60,43 +60,11 @@ function save_image () {
|
||||
finish_image $1
|
||||
}
|
||||
|
||||
function element_pre_check() {
|
||||
local element_dir=$1
|
||||
[ -d $element_dir ] || return 1
|
||||
if [ -d $element_dir/first-boot.d ] ; then
|
||||
first_boot_deprecated_message $element_dir
|
||||
fi
|
||||
}
|
||||
|
||||
_DISPLAYED_FIRST_BOOT_DEPRECATED=0
|
||||
function first_boot_deprecated_message() {
|
||||
local element_dir=$1
|
||||
echo "WARNING: first-boot.d found in $element_dir"
|
||||
if [ $_DISPLAYED_FIRST_BOOT_DEPRECATED -eq 1 ] ; then
|
||||
return
|
||||
fi
|
||||
echo "***********************************************************"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "* WARNING: first-boot.d is DEPRECATED, it will be removed *"
|
||||
echo "* from diskimage-builder in a future release. *"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "* *"
|
||||
echo "***********************************************************"
|
||||
echo Pausing 10 seconds....
|
||||
sleep 10
|
||||
_DISPLAYED_FIRST_BOOT_DEPRECATED=1
|
||||
}
|
||||
|
||||
function generate_hooks () {
|
||||
mkdir -p $TMP_HOOKS_PATH
|
||||
for _ELEMENT in $IMAGE_ELEMENT ; do
|
||||
for dir in ${ELEMENTS_PATH//:/ } ; do
|
||||
element_pre_check $dir/$_ELEMENT || continue
|
||||
[ -d $dir/$_ELEMENT ] || continue
|
||||
cp -t $TMP_HOOKS_PATH -a $dir/$_ELEMENT/* ;
|
||||
break
|
||||
done
|
||||
|
@ -87,14 +87,6 @@ function run_d_in_target () {
|
||||
fi
|
||||
}
|
||||
|
||||
function prepare_first_boot () {
|
||||
check_break before-first-boot run_in_target bash
|
||||
if [ -d ${TMP_HOOKS_PATH}/first-boot.d ] ; then
|
||||
sudo cp -t $TMP_MOUNT_PATH/etc/ -a $TMP_HOOKS_PATH/first-boot.d
|
||||
fi
|
||||
check_break after-first-boot run_in_target bash
|
||||
}
|
||||
|
||||
function finalise_base () {
|
||||
TARGET_ROOT=$TMP_MOUNT_PATH run_d cleanup
|
||||
# If the file has been set immutable, we probably want to keep it
|
||||
|
Loading…
Reference in New Issue
Block a user