bootstrap-vz/providers/ec2/tasks/initd.py
Anders Ingemann 0092e1c2c2 Don't instantiate tasks
In practice they are just typed functions with attributes, having a reference to an object is just confusing.
So: Task.run() is now a classmethod
2014-01-06 22:58:21 +01:00

20 lines
598 B
Python

from base import Task
from common import phases
from common.tasks import initd
from . import assets
import os.path
class AddEC2InitScripts(Task):
description = 'Adding EC2 startup scripts'
phase = phases.system_modification
successors = [initd.InstallInitScripts]
@classmethod
def run(cls, info):
init_scripts = {'ec2-get-credentials': 'ec2-get-credentials',
'ec2-run-user-data': 'ec2-run-user-data'}
init_scripts_dir = os.path.join(assets, 'init.d')
for name, path in init_scripts.iteritems():
info.initd['install'][name] = os.path.join(init_scripts_dir, path)