--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openstack/cloudbase-init/files/cloudbase-init Mon Oct 10 10:57:41 2016 -0700
@@ -0,0 +1,46 @@
+#!/usr/bin/python2.7
+
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+# 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.
+
+import ConfigParser
+import os
+import sys
+import urllib2
+
+import smf_include
+
+
+def start():
+
+ # verify metadata service is reachable
+ try:
+ parser = ConfigParser.ConfigParser()
+ parser.read('/etc/cloudbase-init.conf')
+ if parser.has_option('DEFAULT', 'metadata_base_url'):
+ url = parser.get('DEFAULT', 'metadata_base_url')
+ else:
+ url = 'http://169.254.169.254'
+ open_url = urllib2.urlopen(url, timeout=20)
+ except Exception as err:
+ print >> sys.stderr, 'No response from %s: %s' % (url, err)
+ return smf_include.SMF_EXIT_ERR_FATAL
+
+ # Initiate cloudbase-init service
+ cmd_str = "/usr/bin/cloudbase-init --debug"
+ smf_include.smf_subprocess(cmd_str)
+
+if __name__ == "__main__":
+ os.putenv("LC_ALL", "C")
+ smf_include.smf_main()