Merge ~ffledgling/cloud-init:doc-fix into cloud-init:master

Proposed by Anhad Jai Singh
Status: Merged
Merged at revision: 39fb5a0240597112af8162c6c3365288450a7a77
Proposed branch: ~ffledgling/cloud-init:doc-fix
Merge into: cloud-init:master
Diff against target: 76 lines (+9/-9)
3 files modified
doc/examples/cloud-config-gluster.txt (+2/-2)
doc/examples/cloud-config-mount-points.txt (+4/-4)
doc/examples/cloud-config.txt (+3/-3)
Reviewer Review Type Date Requested Status
cloud-init Commiters Pending
Review via email: mp+312917@code.launchpad.net

Description of the change

    Change `nobootwait` to `nofail` in docs

    `nobootwait` is an ubuntu specific extension to the mount syntax that is
    not supported by other non-derivative linux operating systems.

    `nobootwait` support appears to have been dropped Ubuntu 16.04 onwards,
    based on http://manpages.ubuntu.com/manpages/xenial/man5/fstab.5.html.
    Last Ubuntu version with mention of `nobootwait` appears to be 15.10,
    based on http://manpages.ubuntu.com/manpages/wily/man5/fstab.5.html.

    All examples using `nobootwait` were updated to use the standard
    `nofail`, which gives the expected behaviour of not failing to boot in
    case a volume is missing. There are likely subtle differences in semantics
    between `nobootwait` and `nofail`, but it is the best (only?) substitute
    that gives behaviour similar to the defunct `nobootwait` option.

To post a comment you must log in.
Revision history for this message
Anhad Jai Singh (ffledgling) wrote :

In addition to tests, there are tests (namely: tests/data/merge_sources/source8-1.yaml, tests/data/merge_sources/expected8.yaml) and some code (config?) files (namely: cloudinit/config/cc_mounts.py) that use nobootwait as well, but I haven't modified them because I'm not entirely clear about the scope of those changes. If those need to be changed as well, please let me know.

Revision history for this message
Anhad Jai Singh (ffledgling) wrote :

In addition to docs*

Revision history for this message
Scott Moser (smoser) wrote :

Hi, thanks for the change here.
Could we at least suggest that if your system is using upstart (Ubuntu 14.04) then 'nobootwait' is the best option for you. But if you are using systemd or sysvinit then nofail is all you have.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/doc/examples/cloud-config-gluster.txt b/doc/examples/cloud-config-gluster.txt
index f8183e7..cb97912 100644
--- a/doc/examples/cloud-config-gluster.txt
+++ b/doc/examples/cloud-config-gluster.txt
@@ -1,6 +1,6 @@
1#cloud-config1#cloud-config
2# vim: syntax=yaml2# vim: syntax=yaml
3# Mounts volfile exported by glusterfsd running on 3# Mounts volfile exported by glusterfsd running on
4# "volfile-server-hostname" onto the local mount point '/mnt/data'4# "volfile-server-hostname" onto the local mount point '/mnt/data'
5#5#
6# In reality, replace 'volfile-server-hostname' with one of your nodes6# In reality, replace 'volfile-server-hostname' with one of your nodes
@@ -10,7 +10,7 @@ packages:
10 - glusterfs-client10 - glusterfs-client
1111
12mounts:12mounts:
13 - [ 'volfile-server-hostname:6996', /mnt/data, glusterfs, "defaults,nobootwait", "0", "2" ]13 - [ 'volfile-server-hostname:6996', /mnt/data, glusterfs, "defaults,nofail", "0", "2" ]
1414
15runcmd:15runcmd:
16 - [ modprobe, fuse ]16 - [ modprobe, fuse ]
diff --git a/doc/examples/cloud-config-mount-points.txt b/doc/examples/cloud-config-mount-points.txt
index aa676c2..5a6c24f 100644
--- a/doc/examples/cloud-config-mount-points.txt
+++ b/doc/examples/cloud-config-mount-points.txt
@@ -23,19 +23,19 @@
23# - if an entry does not have all 6 fields, they will be filled in23# - if an entry does not have all 6 fields, they will be filled in
24# with values from 'mount_default_fields' below.24# with values from 'mount_default_fields' below.
25#25#
26# Note, that you should set 'nobootwait' (see man fstab) for volumes that may26# Note, that you should set 'nofail' (see man fstab) for volumes that may not
27# not be attached at instance boot (or reboot)27# be attached at instance boot (or reboot).
28#28#
29mounts:29mounts:
30 - [ ephemeral0, /mnt, auto, "defaults,noexec" ]30 - [ ephemeral0, /mnt, auto, "defaults,noexec" ]
31 - [ sdc, /opt/data ]31 - [ sdc, /opt/data ]
32 - [ xvdh, /opt/data, "auto", "defaults,nobootwait", "0", "0" ]32 - [ xvdh, /opt/data, "auto", "defaults,nofail", "0", "0" ]
33 - [ dd, /dev/zero ]33 - [ dd, /dev/zero ]
3434
35# mount_default_fields35# mount_default_fields
36# These values are used to fill in any entries in 'mounts' that are not36# These values are used to fill in any entries in 'mounts' that are not
37# complete. This must be an array, and must have 7 fields.37# complete. This must be an array, and must have 7 fields.
38mount_default_fields: [ None, None, "auto", "defaults,nobootwait", "0", "2" ]38mount_default_fields: [ None, None, "auto", "defaults,nofail", "0", "2" ]
3939
4040
41# swap can also be set up by the 'mounts' module41# swap can also be set up by the 'mounts' module
diff --git a/doc/examples/cloud-config.txt b/doc/examples/cloud-config.txt
index 190029e..c5f84b1 100644
--- a/doc/examples/cloud-config.txt
+++ b/doc/examples/cloud-config.txt
@@ -46,19 +46,19 @@ packages:
46# - if an entry does not have all 6 fields, they will be filled in46# - if an entry does not have all 6 fields, they will be filled in
47# with values from 'mount_default_fields' below.47# with values from 'mount_default_fields' below.
48#48#
49# Note, that you should set 'nobootwait' (see man fstab) for volumes that may49# Note, that you should set 'nofail' (see man fstab) for volumes that may
50# not be attached at instance boot (or reboot)50# not be attached at instance boot (or reboot)
51#51#
52mounts:52mounts:
53 - [ ephemeral0, /mnt, auto, "defaults,noexec" ]53 - [ ephemeral0, /mnt, auto, "defaults,noexec" ]
54 - [ sdc, /opt/data ]54 - [ sdc, /opt/data ]
55 - [ xvdh, /opt/data, "auto", "defaults,nobootwait", "0", "0" ]55 - [ xvdh, /opt/data, "auto", "defaults,nofail", "0", "0" ]
56 - [ dd, /dev/zero ]56 - [ dd, /dev/zero ]
5757
58# mount_default_fields58# mount_default_fields
59# These values are used to fill in any entries in 'mounts' that are not59# These values are used to fill in any entries in 'mounts' that are not
60# complete. This must be an array, and must have 7 fields.60# complete. This must be an array, and must have 7 fields.
61mount_default_fields: [ None, None, "auto", "defaults,nobootwait", "0", "2" ]61mount_default_fields: [ None, None, "auto", "defaults,nofail", "0", "2" ]
6262
63# add each entry to ~/.ssh/authorized_keys for the configured user or the63# add each entry to ~/.ssh/authorized_keys for the configured user or the
64# first user defined in the user definition directive.64# first user defined in the user definition directive.

Subscribers

People subscribed via source and target branches