Merge ~redriver/cloud-init:cloudinitlocal_fail_to_start_on_frbsd into cloud-init:master

Proposed by Hongjiang Zhang
Status: Merged
Merged at revision: 7ed3cb3a699923623e75ad15c1c5d88abba48d00
Proposed branch: ~redriver/cloud-init:cloudinitlocal_fail_to_start_on_frbsd
Merge into: cloud-init:master
Diff against target: 12 lines (+1/-1)
1 file modified
sysvinit/freebsd/cloudinitlocal (+1/-1)
Reviewer Review Type Date Requested Status
Scott Moser Approve
Server Team CI bot continuous-integration Approve
Review via email: mp+326905@code.launchpad.net

Commit message

For FreeBSD on Azure, the rc script 'cloudinitlocal' fail to launch because it contains circular dependence, as a result, "init --local" fail to start. Thus, cloud-init fail to do provisioning on Azure.

This issue was hidden before, but was triggered recently by CI ebc9ecbc8a76bdf511a456fb72339a7eb4c20568

To post a comment you must log in.
Revision history for this message
Server Team CI bot (server-team-bot) wrote :

PASSED: Continuous integration, rev:e741333cfcf205f19ccb29b1c369a2485874dc9d
https://jenkins.ubuntu.com/server/job/cloud-init-ci/29/
Executed test runs:
    SUCCESS: Checkout
    SUCCESS: Unit & Style Tests
    SUCCESS: Ubuntu LTS: Build
    SUCCESS: Ubuntu LTS: Integration
    SUCCESS: CentOS 6 & 7: Build & Test
    IN_PROGRESS: Declarative: Post Actions

Click here to trigger a rebuild:
https://jenkins.ubuntu.com/server/job/cloud-init-ci/29/rebuild

review: Approve (continuous-integration)
Revision history for this message
Scott Moser (smoser) wrote :

I'm not fluent enough in freebsd boot process to know whether or not this is correct.
My only question is why this wasn't seen before.

Did something change that caused it?

review: Needs Information
Revision history for this message
Hongjiang Zhang (redriver) wrote :

> I'm not fluent enough in freebsd boot process to know whether or not this is
> correct.
> My only question is why this wasn't seen before.
>
> Did something change that caused it?

Yes, that was caused by my previous fix of enabling cloud-init for FreeBSD on Azure.

It introduces a dependency on 'ldconfig' which can make sure the *.so library for python were loaded. But 'ldconfig' has already depended on 'FILESYSTEM', so cloudinitlocal should not depend on 'FILESYSTEM' again.

What is the design purpose of cloudinitlocal?

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

Hongjiang,
The purpose of 'local' is described to some extent at
 http://cloudinit.readthedocs.io/en/latest/topics/boot.html (doc/rtd/topics/boot.rst)

The general trend in cloud-init is for more datasources to support discovery at
the 'local' time frame so that we can read networking information from the datasource.

As I understand it, cloud-init local probably should not depend on 'FILESYSTEMS' (other than
the filesystem upon which cloud-init is installed).

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/sysvinit/freebsd/cloudinitlocal b/sysvinit/freebsd/cloudinitlocal
2index 11a5eb1..7a034b3 100755
3--- a/sysvinit/freebsd/cloudinitlocal
4+++ b/sysvinit/freebsd/cloudinitlocal
5@@ -2,7 +2,7 @@
6
7 # PROVIDE: cloudinitlocal
8 # REQUIRE: ldconfig mountcritlocal
9-# BEFORE: NETWORKING FILESYSTEMS cloudinit cloudconfig cloudfinal
10+# BEFORE: NETWORKING cloudinit cloudconfig cloudfinal
11
12 . /etc/rc.subr
13

Subscribers

People subscribed via source and target branches