У меня есть fabfile, подобный следующему:
@hosts('host1')
def host1_deploy():
"""Some logic that is specific to deploying to host1"""
@hosts('host2')
def host2_deploy():
"""Some logic that is specific to deploying to host2"""
def deploy():
""""Deploy to both hosts, each using its own logic"""
host1_deploy()
host2_deploy()
я хотел бы сделать
fab deploy
и пусть он будет эквивалентен
fab host1_deploy host2_deploy
Другими словами, запустите каждую из подзадач и для каждой используйте указанный в ней список хостов. Однако это не работает. Вместо этого задаче deploy() нужен собственный список хостов, который она будет распространять на все свои подзадачи.
Есть ли способ обновить здесь задачу deploy(), чтобы она делала то, что я хочу, оставляя подзадачи в покое, чтобы их можно было запускать по отдельности?