summaryrefslogtreecommitdiff
path: root/ec2init/__init__.py
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2010-01-22 14:43:36 -0500
committerScott Moser <smoser@ubuntu.com>2010-01-22 14:43:36 -0500
commit8c66ea2f37d34c26ee2f6013aa98605c213d0e02 (patch)
treeac7f58cb56bfbac6fafcd577e5b8f54ea82e1078 /ec2init/__init__.py
parent3c0b9591b5203e60ac3cdda030b6eecbae27e938 (diff)
downloadvyos-cloud-init-8c66ea2f37d34c26ee2f6013aa98605c213d0e02.tar.gz
vyos-cloud-init-8c66ea2f37d34c26ee2f6013aa98605c213d0e02.zip
Add support for ssh keys in cloud-config. move write_file to util.
---- #cloud-config apt_update: true ssh_keys: rsa_private: | -----BEGIN RSA PRIVATE KEY----- MIIBxwIBAAJhAKD0YSHy73nUgysO13XsJmd4fHiFyQ+00R7VVu2iV9Qcon2LZS/x ... REPPOyrAspdeOAV+6VKRavstea7+2DZmSUgE -----END RSA PRIVATE KEY----- rsa_public: ssh-rsa AAAAB3NzaC1yc2E...18QJvWPocKJtlsDNi3 smoser@host dsa_private: | -----BEGIN DSA PRIVATE KEY----- MIIBuwIBAAKBgQDP2HLu7pTExL89USyM0264RCyWX/CMLmukxX0Jdbm29ax8FBJT ... 8KucvUYbOEI+yv+5LW9u3z/BAoGBAI0q6JP+JvJmwZFaeCMMVxXUbqiSko/P1lsa -----END DSA PRIVATE KEY----- dsa_public: ssh-dss AAAAB3NzaC1kc3M...ybngIy66PMEoQ= smoser@host ----
Diffstat (limited to 'ec2init/__init__.py')
-rw-r--r--ec2init/__init__.py20
1 files changed, 4 insertions, 16 deletions
diff --git a/ec2init/__init__.py b/ec2init/__init__.py
index 80203c80..cfd54e8d 100644
--- a/ec2init/__init__.py
+++ b/ec2init/__init__.py
@@ -143,8 +143,8 @@ class EC2Init:
self.store_userdata()
def store_userdata(self):
- write_file(userdata_raw, self.datasource.get_userdata_raw(), 0644)
- write_file(userdata, self.datasource.get_userdata(), 0644)
+ util.write_file(userdata_raw, self.datasource.get_userdata_raw(), 0644)
+ util.write_file(userdata, self.datasource.get_userdata(), 0644)
def initctl_emit(self):
subprocess.Popen(['initctl', 'emit', 'cloud-config',
@@ -240,14 +240,14 @@ class EC2Init:
return
filename=filename.replace(os.sep,'_')
- write_file("%s/%s" % (user_scripts_dir,filename), payload, 0700)
+ util.write_file("%s/%s" % (user_scripts_dir,filename), payload, 0700)
def handle_upstart_job(self,data,ctype,filename,payload):
if ctype == "__end__" or ctype == "__begin__": return
if not filename.endswith(".conf"):
filename=filename+".conf"
- write_file("%s/%s" % ("/etc/init",filename), payload, 0644)
+ util.write_file("%s/%s" % ("/etc/init",filename), payload, 0644)
def handle_cloud_config(self,data,ctype,filename,payload):
if ctype == "__begin__":
@@ -313,15 +313,3 @@ class EC2Init:
subprocess.Popen(['swapon', '-a']).communicate()
-def write_file(file,content,mode=0644):
- try:
- os.makedirs(os.path.dirname(file))
- except OSError as e:
- if e.errno != errno.EEXIST:
- raise e
-
- f=open(file,"wb")
- f.write(content)
- f.close()
- os.chmod(file,mode)
-