mirror of
https://github.com/kevingruesser/bootstrap-vz.git
synced 2025-08-24 15:36:27 +00:00

Lines removed: over 500. Readiblity gained: A shitload Now you can actually get an overview of a manifest on a single screen height. I am sure that it will also save a lot of hassle when modifying schema in the future. No more "expected property name" etc. because of an extraneous comma Comments are of course natively support, so there's no need for this minify_json hokey pokey
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
import tasks
|
|
|
|
|
|
def validate_manifest(data, validator, error):
|
|
import os.path
|
|
schema_path = os.path.normpath(os.path.join(os.path.dirname(__file__), 'manifest-schema.yml'))
|
|
validator(data, schema_path)
|
|
|
|
|
|
def resolve_tasks(taskset, manifest):
|
|
from bootstrapvz.common import task_groups
|
|
from bootstrapvz.common.tasks import ssh
|
|
taskset.update(task_groups.ssh_group)
|
|
taskset.discard(ssh.DisableSSHPasswordAuthentication)
|
|
|
|
from bootstrapvz.common.tasks import loopback
|
|
taskset.discard(loopback.MoveImage)
|
|
|
|
from bootstrapvz.common.tasks import volume
|
|
taskset.update([tasks.CheckBoxPath,
|
|
tasks.CreateVagrantBoxDir,
|
|
tasks.AddPackages,
|
|
tasks.CreateVagrantUser,
|
|
tasks.PasswordlessSudo,
|
|
tasks.SetRootPassword,
|
|
tasks.AddInsecurePublicKey,
|
|
tasks.PackageBox,
|
|
tasks.RemoveVagrantBoxDir,
|
|
volume.Delete,
|
|
])
|
|
|
|
|
|
def resolve_rollback_tasks(taskset, manifest, completed, counter_task):
|
|
counter_task(taskset, tasks.CreateVagrantBoxDir, tasks.RemoveVagrantBoxDir)
|