From 6e183914ac11ddc8678471e88dbc312d2efc1b4b Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Mon, 12 Feb 2018 04:17:53 +0000 Subject: [PATCH 01/16] fix pylint W0403(relative-import) --- bootstrapvz/base/__init__.py | 6 +-- bootstrapvz/base/bootstrapinfo.py | 8 ++-- bootstrapvz/base/fs/__init__.py | 6 +-- bootstrapvz/base/fs/partitionmaps/gpt.py | 2 +- bootstrapvz/base/fs/partitionmaps/msdos.py | 2 +- bootstrapvz/base/fs/partitions/abstract.py | 2 +- bootstrapvz/base/fs/partitions/base.py | 2 +- bootstrapvz/base/fs/partitions/gpt.py | 2 +- bootstrapvz/base/fs/partitions/gpt_swap.py | 2 +- bootstrapvz/base/fs/partitions/mount.py | 2 +- bootstrapvz/base/fs/partitions/msdos.py | 2 +- bootstrapvz/base/fs/partitions/msdos_swap.py | 2 +- bootstrapvz/base/fs/partitions/single.py | 2 +- bootstrapvz/base/fs/partitions/unformatted.py | 2 +- bootstrapvz/base/fs/volume.py | 2 +- bootstrapvz/base/main.py | 10 ++--- bootstrapvz/base/pkg/packagelist.py | 2 +- bootstrapvz/base/pkg/sourceslist.py | 2 +- bootstrapvz/base/tasklist.py | 2 +- bootstrapvz/common/bytes.py | 2 +- bootstrapvz/common/fs/qcow2volume.py | 2 +- bootstrapvz/common/fs/qemuvolume.py | 2 +- bootstrapvz/common/fs/virtualdiskimage.py | 2 +- bootstrapvz/common/fs/virtualharddisk.py | 2 +- bootstrapvz/common/fs/virtualmachinedisk.py | 2 +- bootstrapvz/common/sectors.py | 4 +- bootstrapvz/common/task_groups.py | 38 +++++++++---------- bootstrapvz/common/tasks/apt.py | 2 +- bootstrapvz/common/tasks/bootstrap.py | 2 +- bootstrapvz/common/tasks/extlinux.py | 4 +- bootstrapvz/common/tasks/filesystem.py | 6 +-- bootstrapvz/common/tasks/folder.py | 4 +- bootstrapvz/common/tasks/grub.py | 4 +- bootstrapvz/common/tasks/loopback.py | 4 +- bootstrapvz/common/tasks/packages.py | 2 +- bootstrapvz/common/tasks/partitioning.py | 6 +-- bootstrapvz/common/tasks/ssh.py | 2 +- bootstrapvz/common/tasks/volume.py | 2 +- bootstrapvz/common/tools.py | 2 +- bootstrapvz/plugins/admin_user/__init__.py | 2 +- bootstrapvz/plugins/ansible/__init__.py | 2 +- bootstrapvz/plugins/apt_proxy/__init__.py | 2 +- bootstrapvz/plugins/chef/__init__.py | 2 +- bootstrapvz/plugins/cloud_init/__init__.py | 2 +- bootstrapvz/plugins/commands/__init__.py | 2 +- bootstrapvz/plugins/debconf/__init__.py | 2 +- bootstrapvz/plugins/docker_daemon/__init__.py | 2 +- bootstrapvz/plugins/ec2_launch/__init__.py | 2 +- bootstrapvz/plugins/ec2_publish/__init__.py | 2 +- bootstrapvz/plugins/expand_root/__init__.py | 2 +- bootstrapvz/plugins/file_copy/__init__.py | 2 +- .../plugins/google_cloud_repo/__init__.py | 2 +- bootstrapvz/plugins/minimize_size/__init__.py | 10 ++--- bootstrapvz/plugins/ntp/__init__.py | 2 +- bootstrapvz/plugins/opennebula/__init__.py | 2 +- bootstrapvz/plugins/pip_install/__init__.py | 2 +- .../plugins/prebootstrapped/__init__.py | 2 +- bootstrapvz/plugins/puppet/__init__.py | 2 +- bootstrapvz/plugins/root_password/__init__.py | 2 +- bootstrapvz/plugins/salt/__init__.py | 2 +- .../plugins/tmpfs_workspace/__init__.py | 2 +- .../plugins/unattended_upgrades/__init__.py | 2 +- bootstrapvz/plugins/vagrant/__init__.py | 2 +- bootstrapvz/providers/azure/__init__.py | 4 +- bootstrapvz/providers/docker/__init__.py | 6 +-- bootstrapvz/providers/ec2/__init__.py | 20 +++++----- bootstrapvz/providers/ec2/tasks/ami.py | 4 +- bootstrapvz/providers/ec2/tasks/connection.py | 2 +- bootstrapvz/providers/gce/__init__.py | 10 ++--- bootstrapvz/providers/kvm/__init__.py | 6 +-- bootstrapvz/providers/oracle/__init__.py | 8 ++-- bootstrapvz/providers/virtualbox/__init__.py | 6 +-- bootstrapvz/remote/build_servers/__init__.py | 4 +- bootstrapvz/remote/build_servers/local.py | 2 +- bootstrapvz/remote/build_servers/remote.py | 4 +- bootstrapvz/remote/main.py | 2 +- bootstrapvz/remote/server.py | 2 +- tests/system/docker_tests.py | 4 +- tests/system/ec2_ebs_hvm_tests.py | 4 +- tests/system/ec2_ebs_pvm_tests.py | 4 +- tests/system/ec2_s3_pvm_tests.py | 4 +- tests/system/providers/docker/__init__.py | 2 +- tests/system/providers/ec2/__init__.py | 4 +- tests/system/providers/virtualbox/__init__.py | 4 +- tests/system/tools/__init__.py | 2 +- tests/system/virtualbox_tests.py | 4 +- 86 files changed, 161 insertions(+), 161 deletions(-) diff --git a/bootstrapvz/base/__init__.py b/bootstrapvz/base/__init__.py index f6edf24..7a133d9 100644 --- a/bootstrapvz/base/__init__.py +++ b/bootstrapvz/base/__init__.py @@ -1,6 +1,6 @@ -from phase import Phase -from task import Task -from main import main +from .phase import Phase +from .task import Task +from .main import main __all__ = ['Phase', 'Task', 'main'] diff --git a/bootstrapvz/base/bootstrapinfo.py b/bootstrapvz/base/bootstrapinfo.py index fbb7f24..ae64710 100644 --- a/bootstrapvz/base/bootstrapinfo.py +++ b/bootstrapvz/base/bootstrapinfo.py @@ -25,7 +25,7 @@ class BootstrapInformation(object): self.workspace = os.path.join(manifest.bootstrapper['workspace'], self.run_id) # Load all the volume information - from fs import load_volume + from .fs import load_volume self.volume = load_volume(self.manifest.volume, manifest.system['bootloader']) # The default apt mirror @@ -40,13 +40,13 @@ class BootstrapInformation(object): # Keep a list of apt sources, # so that tasks may add to that list without having to fiddle with apt source list files. - from pkg.sourceslist import SourceLists + from .pkg.sourceslist import SourceLists self.source_lists = SourceLists(self.manifest_vars) # Keep a list of apt preferences - from pkg.preferenceslist import PreferenceLists + from .pkg.preferenceslist import PreferenceLists self.preference_lists = PreferenceLists(self.manifest_vars) # Keep a list of packages that should be installed, tasks can add and remove things from this list - from pkg.packagelist import PackageList + from .pkg.packagelist import PackageList self.packages = PackageList(self.manifest_vars, self.source_lists) # These sets should rarely be used and specify which packages the debootstrap invocation diff --git a/bootstrapvz/base/fs/__init__.py b/bootstrapvz/base/fs/__init__.py index baccf9f..d1537f9 100644 --- a/bootstrapvz/base/fs/__init__.py +++ b/bootstrapvz/base/fs/__init__.py @@ -10,9 +10,9 @@ def load_volume(data, bootloader): :rtype: Volume """ # Map valid partition maps in the manifest and their corresponding classes - from partitionmaps.gpt import GPTPartitionMap - from partitionmaps.msdos import MSDOSPartitionMap - from partitionmaps.none import NoPartitions + from .partitionmaps.gpt import GPTPartitionMap + from .partitionmaps.msdos import MSDOSPartitionMap + from .partitionmaps.none import NoPartitions partition_map = {'none': NoPartitions, 'gpt': GPTPartitionMap, 'msdos': MSDOSPartitionMap, diff --git a/bootstrapvz/base/fs/partitionmaps/gpt.py b/bootstrapvz/base/fs/partitionmaps/gpt.py index 89f5f9f..c296306 100644 --- a/bootstrapvz/base/fs/partitionmaps/gpt.py +++ b/bootstrapvz/base/fs/partitionmaps/gpt.py @@ -1,4 +1,4 @@ -from abstract import AbstractPartitionMap +from .abstract import AbstractPartitionMap from ..partitions.gpt import GPTPartition from ..partitions.gpt_swap import GPTSwapPartition from bootstrapvz.common.tools import log_check_call diff --git a/bootstrapvz/base/fs/partitionmaps/msdos.py b/bootstrapvz/base/fs/partitionmaps/msdos.py index 2e80d92..eb389f6 100644 --- a/bootstrapvz/base/fs/partitionmaps/msdos.py +++ b/bootstrapvz/base/fs/partitionmaps/msdos.py @@ -1,4 +1,4 @@ -from abstract import AbstractPartitionMap +from .abstract import AbstractPartitionMap from ..exceptions import PartitionError from ..partitions.msdos import MSDOSPartition from ..partitions.msdos_swap import MSDOSSwapPartition diff --git a/bootstrapvz/base/fs/partitions/abstract.py b/bootstrapvz/base/fs/partitions/abstract.py index cbbad80..f54dbac 100644 --- a/bootstrapvz/base/fs/partitions/abstract.py +++ b/bootstrapvz/base/fs/partitions/abstract.py @@ -117,7 +117,7 @@ class AbstractPartition(FSMProxy): :param list opts: Any options that should be passed to the mount command """ # Create a new mount object, mount it if the partition is mounted and put it in the mounts dict - from mount import Mount + from .mount import Mount mount = Mount(source, destination, opts) if self.fsm.current == 'mounted': mount.mount(self.mount_dir) diff --git a/bootstrapvz/base/fs/partitions/base.py b/bootstrapvz/base/fs/partitions/base.py index 76c8f3b..849dc20 100644 --- a/bootstrapvz/base/fs/partitions/base.py +++ b/bootstrapvz/base/fs/partitions/base.py @@ -1,5 +1,5 @@ import os -from abstract import AbstractPartition +from .abstract import AbstractPartition from bootstrapvz.common.sectors import Sectors diff --git a/bootstrapvz/base/fs/partitions/gpt.py b/bootstrapvz/base/fs/partitions/gpt.py index aa77b8a..f3a39e8 100644 --- a/bootstrapvz/base/fs/partitions/gpt.py +++ b/bootstrapvz/base/fs/partitions/gpt.py @@ -1,5 +1,5 @@ from bootstrapvz.common.tools import log_check_call -from base import BasePartition +from .base import BasePartition class GPTPartition(BasePartition): diff --git a/bootstrapvz/base/fs/partitions/gpt_swap.py b/bootstrapvz/base/fs/partitions/gpt_swap.py index c7f7c28..ef73978 100644 --- a/bootstrapvz/base/fs/partitions/gpt_swap.py +++ b/bootstrapvz/base/fs/partitions/gpt_swap.py @@ -1,5 +1,5 @@ from bootstrapvz.common.tools import log_check_call -from gpt import GPTPartition +from .gpt import GPTPartition class GPTSwapPartition(GPTPartition): diff --git a/bootstrapvz/base/fs/partitions/mount.py b/bootstrapvz/base/fs/partitions/mount.py index 5055e96..0566d5e 100644 --- a/bootstrapvz/base/fs/partitions/mount.py +++ b/bootstrapvz/base/fs/partitions/mount.py @@ -1,4 +1,4 @@ -from abstract import AbstractPartition +from .abstract import AbstractPartition import os.path from bootstrapvz.common.tools import log_check_call diff --git a/bootstrapvz/base/fs/partitions/msdos.py b/bootstrapvz/base/fs/partitions/msdos.py index 90c0bf9..fa5ae64 100644 --- a/bootstrapvz/base/fs/partitions/msdos.py +++ b/bootstrapvz/base/fs/partitions/msdos.py @@ -1,4 +1,4 @@ -from base import BasePartition +from .base import BasePartition class MSDOSPartition(BasePartition): diff --git a/bootstrapvz/base/fs/partitions/msdos_swap.py b/bootstrapvz/base/fs/partitions/msdos_swap.py index 48afcfc..49ebab8 100644 --- a/bootstrapvz/base/fs/partitions/msdos_swap.py +++ b/bootstrapvz/base/fs/partitions/msdos_swap.py @@ -1,5 +1,5 @@ from bootstrapvz.common.tools import log_check_call -from msdos import MSDOSPartition +from .msdos import MSDOSPartition class MSDOSSwapPartition(MSDOSPartition): diff --git a/bootstrapvz/base/fs/partitions/single.py b/bootstrapvz/base/fs/partitions/single.py index dfe0c2c..f4019ab 100644 --- a/bootstrapvz/base/fs/partitions/single.py +++ b/bootstrapvz/base/fs/partitions/single.py @@ -1,4 +1,4 @@ -from abstract import AbstractPartition +from .abstract import AbstractPartition class SinglePartition(AbstractPartition): diff --git a/bootstrapvz/base/fs/partitions/unformatted.py b/bootstrapvz/base/fs/partitions/unformatted.py index b71be91..556c4eb 100644 --- a/bootstrapvz/base/fs/partitions/unformatted.py +++ b/bootstrapvz/base/fs/partitions/unformatted.py @@ -1,4 +1,4 @@ -from base import BasePartition +from .base import BasePartition class UnformattedPartition(BasePartition): diff --git a/bootstrapvz/base/fs/volume.py b/bootstrapvz/base/fs/volume.py index a9e4cd8..d2f2013 100644 --- a/bootstrapvz/base/fs/volume.py +++ b/bootstrapvz/base/fs/volume.py @@ -2,7 +2,7 @@ from abc import ABCMeta from bootstrapvz.common.fsm_proxy import FSMProxy from bootstrapvz.common.tools import log_check_call from .exceptions import VolumeError -from partitionmaps.none import NoPartitions +from .partitionmaps.none import NoPartitions class Volume(FSMProxy): diff --git a/bootstrapvz/base/main.py b/bootstrapvz/base/main.py index 7223ccd..ae3b7c4 100644 --- a/bootstrapvz/base/main.py +++ b/bootstrapvz/base/main.py @@ -19,7 +19,7 @@ def main(): setup_loggers(opts) # Load the manifest - from manifest import Manifest + from .manifest import Manifest manifest = Manifest(path=opts['MANIFEST']) # Everything has been set up, begin the bootstrapping process @@ -62,7 +62,7 @@ def setup_loggers(opts): root = logging.getLogger() root.setLevel(logging.NOTSET) - import log + from . import log # Log to file unless --log is a single dash if opts['--log'] != '-': import os.path @@ -95,15 +95,15 @@ def run(manifest, debug=False, pause_on_error=False, dry_run=False): log = logging.getLogger(__name__) # Get the tasklist - from tasklist import load_tasks - from tasklist import TaskList + from .tasklist import load_tasks + from .tasklist import TaskList log.info('Generating tasklist') tasks = load_tasks('resolve_tasks', manifest) tasklist = TaskList(tasks) # 'resolve_tasks' is the name of the function to call on the provider and plugins # Create the bootstrap information object that'll be used throughout the bootstrapping process - from bootstrapinfo import BootstrapInformation + from .bootstrapinfo import BootstrapInformation bootstrap_info = BootstrapInformation(manifest=manifest, debug=debug) try: diff --git a/bootstrapvz/base/pkg/packagelist.py b/bootstrapvz/base/pkg/packagelist.py index 3a45d85..bd50e2b 100644 --- a/bootstrapvz/base/pkg/packagelist.py +++ b/bootstrapvz/base/pkg/packagelist.py @@ -66,7 +66,7 @@ class PackageList(object): :raises PackageError: When a package of the same name but with a different target has already been added. :raises PackageError: When the specified target release could not be found. """ - from exceptions import PackageError + from .exceptions import PackageError name = name.format(**self.manifest_vars) if target is not None: target = target.format(**self.manifest_vars) diff --git a/bootstrapvz/base/pkg/sourceslist.py b/bootstrapvz/base/pkg/sourceslist.py index 2a68f19..76c9daa 100644 --- a/bootstrapvz/base/pkg/sourceslist.py +++ b/bootstrapvz/base/pkg/sourceslist.py @@ -63,7 +63,7 @@ class Source(object): '(\s+(?P.+\S))?\s*$') match = regexp.match(line).groupdict() if match is None: - from exceptions import SourceError + from .exceptions import SourceError raise SourceError('Unable to parse source line: ' + line) self.type = match['type'] self.options = [] diff --git a/bootstrapvz/base/tasklist.py b/bootstrapvz/base/tasklist.py index f604b91..ed1c74e 100644 --- a/bootstrapvz/base/tasklist.py +++ b/bootstrapvz/base/tasklist.py @@ -158,7 +158,7 @@ def get_all_tasks(loaded_modules): # lambda function to check whether a class is a task (excluding the superclass Task) def is_task(obj): - from task import Task + from .task import Task return issubclass(obj, Task) and obj is not Task return filter(is_task, classes) # Only return classes that are tasks diff --git a/bootstrapvz/common/bytes.py b/bootstrapvz/common/bytes.py index 7fab450..2ec7b91 100644 --- a/bootstrapvz/common/bytes.py +++ b/bootstrapvz/common/bytes.py @@ -1,4 +1,4 @@ -from exceptions import UnitError +from .exceptions import UnitError def onlybytes(msg): diff --git a/bootstrapvz/common/fs/qcow2volume.py b/bootstrapvz/common/fs/qcow2volume.py index e9e623f..dfaf95f 100644 --- a/bootstrapvz/common/fs/qcow2volume.py +++ b/bootstrapvz/common/fs/qcow2volume.py @@ -1,4 +1,4 @@ -from qemuvolume import QEMUVolume +from .qemuvolume import QEMUVolume class Qcow2Volume(QEMUVolume): diff --git a/bootstrapvz/common/fs/qemuvolume.py b/bootstrapvz/common/fs/qemuvolume.py index e04094f..b8c09d7 100644 --- a/bootstrapvz/common/fs/qemuvolume.py +++ b/bootstrapvz/common/fs/qemuvolume.py @@ -1,4 +1,4 @@ -from loopbackvolume import LoopbackVolume +from .loopbackvolume import LoopbackVolume from bootstrapvz.base.fs.exceptions import VolumeError from ..tools import log_check_call from . import get_partitions diff --git a/bootstrapvz/common/fs/virtualdiskimage.py b/bootstrapvz/common/fs/virtualdiskimage.py index 057ccf3..9e65cdf 100644 --- a/bootstrapvz/common/fs/virtualdiskimage.py +++ b/bootstrapvz/common/fs/virtualdiskimage.py @@ -1,4 +1,4 @@ -from qemuvolume import QEMUVolume +from .qemuvolume import QEMUVolume class VirtualDiskImage(QEMUVolume): diff --git a/bootstrapvz/common/fs/virtualharddisk.py b/bootstrapvz/common/fs/virtualharddisk.py index 617f7a6..1c0ea41 100644 --- a/bootstrapvz/common/fs/virtualharddisk.py +++ b/bootstrapvz/common/fs/virtualharddisk.py @@ -1,4 +1,4 @@ -from qemuvolume import QEMUVolume +from .qemuvolume import QEMUVolume from ..tools import log_check_call diff --git a/bootstrapvz/common/fs/virtualmachinedisk.py b/bootstrapvz/common/fs/virtualmachinedisk.py index 73f39be..7cffc0d 100644 --- a/bootstrapvz/common/fs/virtualmachinedisk.py +++ b/bootstrapvz/common/fs/virtualmachinedisk.py @@ -1,4 +1,4 @@ -from qemuvolume import QEMUVolume +from .qemuvolume import QEMUVolume class VirtualMachineDisk(QEMUVolume): diff --git a/bootstrapvz/common/sectors.py b/bootstrapvz/common/sectors.py index 37a828e..5298e0b 100644 --- a/bootstrapvz/common/sectors.py +++ b/bootstrapvz/common/sectors.py @@ -1,5 +1,5 @@ -from exceptions import UnitError -from bytes import Bytes +from .exceptions import UnitError +from .bytes import Bytes def onlysectors(msg): diff --git a/bootstrapvz/common/task_groups.py b/bootstrapvz/common/task_groups.py index 7882e15..21c0a27 100644 --- a/bootstrapvz/common/task_groups.py +++ b/bootstrapvz/common/task_groups.py @@ -1,22 +1,22 @@ -from tasks import workspace -from tasks import packages -from tasks import host -from tasks import grub -from tasks import extlinux -from tasks import bootstrap -from tasks import volume -from tasks import loopback -from tasks import filesystem -from tasks import partitioning -from tasks import cleanup -from tasks import apt -from tasks import security -from tasks import locale -from tasks import network -from tasks import initd -from tasks import ssh -from tasks import kernel -from tasks import folder +from .tasks import workspace +from .tasks import packages +from .tasks import host +from .tasks import grub +from .tasks import extlinux +from .tasks import bootstrap +from .tasks import volume +from .tasks import loopback +from .tasks import filesystem +from .tasks import partitioning +from .tasks import cleanup +from .tasks import apt +from .tasks import security +from .tasks import locale +from .tasks import network +from .tasks import initd +from .tasks import ssh +from .tasks import kernel +from .tasks import folder def get_standard_groups(manifest): diff --git a/bootstrapvz/common/tasks/apt.py b/bootstrapvz/common/tasks/apt.py index 6367e81..0817b83 100644 --- a/bootstrapvz/common/tasks/apt.py +++ b/bootstrapvz/common/tasks/apt.py @@ -2,7 +2,7 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases from bootstrapvz.common.tools import log_check_call from bootstrapvz.common.tools import rel_path -import locale +from . import locale import logging import os diff --git a/bootstrapvz/common/tasks/bootstrap.py b/bootstrapvz/common/tasks/bootstrap.py index 436450e..4f45781 100644 --- a/bootstrapvz/common/tasks/bootstrap.py +++ b/bootstrapvz/common/tasks/bootstrap.py @@ -1,7 +1,7 @@ from bootstrapvz.base import Task from .. import phases from ..exceptions import TaskError -import host +from . import host import logging import os.path log = logging.getLogger(__name__) diff --git a/bootstrapvz/common/tasks/extlinux.py b/bootstrapvz/common/tasks/extlinux.py index 8e3cee6..0d3ee16 100644 --- a/bootstrapvz/common/tasks/extlinux.py +++ b/bootstrapvz/common/tasks/extlinux.py @@ -1,8 +1,8 @@ from bootstrapvz.base import Task from .. import phases from ..tools import log_check_call -import filesystem -import kernel +from . import filesystem +from . import kernel from bootstrapvz.base.fs import partitionmaps import os diff --git a/bootstrapvz/common/tasks/filesystem.py b/bootstrapvz/common/tasks/filesystem.py index c6b7c53..354a44b 100644 --- a/bootstrapvz/common/tasks/filesystem.py +++ b/bootstrapvz/common/tasks/filesystem.py @@ -1,9 +1,9 @@ from bootstrapvz.base import Task from .. import phases from ..tools import log_check_call -import bootstrap -import host -import volume +from . import bootstrap +from . import host +from . import volume class AddRequiredCommands(Task): diff --git a/bootstrapvz/common/tasks/folder.py b/bootstrapvz/common/tasks/folder.py index 2a55995..1f5333b 100644 --- a/bootstrapvz/common/tasks/folder.py +++ b/bootstrapvz/common/tasks/folder.py @@ -1,7 +1,7 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases -import volume -import workspace +from . import volume +from . import workspace class Create(Task): diff --git a/bootstrapvz/common/tasks/grub.py b/bootstrapvz/common/tasks/grub.py index a0281ea..2cc04b3 100644 --- a/bootstrapvz/common/tasks/grub.py +++ b/bootstrapvz/common/tasks/grub.py @@ -2,8 +2,8 @@ from bootstrapvz.base import Task from ..exceptions import TaskError from .. import phases from ..tools import log_check_call -import filesystem -import kernel +from . import filesystem +from . import kernel from bootstrapvz.base.fs import partitionmaps import os.path diff --git a/bootstrapvz/common/tasks/loopback.py b/bootstrapvz/common/tasks/loopback.py index 25d4179..83e5ee7 100644 --- a/bootstrapvz/common/tasks/loopback.py +++ b/bootstrapvz/common/tasks/loopback.py @@ -1,7 +1,7 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases -import host -import volume +from . import host +from . import volume class AddRequiredCommands(Task): diff --git a/bootstrapvz/common/tasks/packages.py b/bootstrapvz/common/tasks/packages.py index 6aa400e..fe84f9c 100644 --- a/bootstrapvz/common/tasks/packages.py +++ b/bootstrapvz/common/tasks/packages.py @@ -1,6 +1,6 @@ from bootstrapvz.base import Task from .. import phases -import apt +from . import apt from ..tools import log_check_call diff --git a/bootstrapvz/common/tasks/partitioning.py b/bootstrapvz/common/tasks/partitioning.py index 3dd5b7a..f5c5d61 100644 --- a/bootstrapvz/common/tasks/partitioning.py +++ b/bootstrapvz/common/tasks/partitioning.py @@ -1,8 +1,8 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases -import filesystem -import host -import volume +from . import filesystem +from . import host +from . import volume class AddRequiredCommands(Task): diff --git a/bootstrapvz/common/tasks/ssh.py b/bootstrapvz/common/tasks/ssh.py index d3155a8..6cd5183 100644 --- a/bootstrapvz/common/tasks/ssh.py +++ b/bootstrapvz/common/tasks/ssh.py @@ -3,7 +3,7 @@ from .. import phases from ..tools import log_check_call import os.path from . import assets -import initd +from . import initd import shutil diff --git a/bootstrapvz/common/tasks/volume.py b/bootstrapvz/common/tasks/volume.py index b810397..18ac44a 100644 --- a/bootstrapvz/common/tasks/volume.py +++ b/bootstrapvz/common/tasks/volume.py @@ -1,6 +1,6 @@ from bootstrapvz.base import Task from .. import phases -import workspace +from . import workspace class Attach(Task): diff --git a/bootstrapvz/common/tools.py b/bootstrapvz/common/tools.py index e935a15..eb55712 100644 --- a/bootstrapvz/common/tools.py +++ b/bootstrapvz/common/tools.py @@ -67,7 +67,7 @@ def log_call(command, stdin=None, env=None, shell=False, cwd=None): def sed_i(file_path, pattern, subst, expected_replacements=1): replacement_count = inline_replace(file_path, pattern, subst) if replacement_count != expected_replacements: - from exceptions import UnexpectedNumMatchesError + from .exceptions import UnexpectedNumMatchesError msg = ('There were {real} instead of {expected} matches for ' 'the expression `{exp}\' in the file `{path}\'' .format(real=replacement_count, expected=expected_replacements, diff --git a/bootstrapvz/plugins/admin_user/__init__.py b/bootstrapvz/plugins/admin_user/__init__.py index 4c85874..56e5f3a 100644 --- a/bootstrapvz/plugins/admin_user/__init__.py +++ b/bootstrapvz/plugins/admin_user/__init__.py @@ -5,7 +5,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): import logging - import tasks + from . import tasks from bootstrapvz.common.tasks import ssh from bootstrapvz.common.releases import jessie diff --git a/bootstrapvz/plugins/ansible/__init__.py b/bootstrapvz/plugins/ansible/__init__.py index f260281..0dde5ed 100644 --- a/bootstrapvz/plugins/ansible/__init__.py +++ b/bootstrapvz/plugins/ansible/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/apt_proxy/__init__.py b/bootstrapvz/plugins/apt_proxy/__init__.py index eae8df0..3c753e1 100644 --- a/bootstrapvz/plugins/apt_proxy/__init__.py +++ b/bootstrapvz/plugins/apt_proxy/__init__.py @@ -4,7 +4,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.add(tasks.CheckAptProxy) taskset.add(tasks.SetAptProxy) if not manifest.plugins['apt_proxy'].get('persistent', False): diff --git a/bootstrapvz/plugins/chef/__init__.py b/bootstrapvz/plugins/chef/__init__.py index f3a4bcd..d8b375f 100644 --- a/bootstrapvz/plugins/chef/__init__.py +++ b/bootstrapvz/plugins/chef/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/cloud_init/__init__.py b/bootstrapvz/plugins/cloud_init/__init__.py index 7e7f714..76458a8 100644 --- a/bootstrapvz/plugins/cloud_init/__init__.py +++ b/bootstrapvz/plugins/cloud_init/__init__.py @@ -9,7 +9,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks import bootstrapvz.providers.ec2.tasks.initd as initd_ec2 from bootstrapvz.common.tasks import apt from bootstrapvz.common.tasks import initd diff --git a/bootstrapvz/plugins/commands/__init__.py b/bootstrapvz/plugins/commands/__init__.py index b525e98..ffda0b5 100644 --- a/bootstrapvz/plugins/commands/__init__.py +++ b/bootstrapvz/plugins/commands/__init__.py @@ -6,5 +6,5 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - from tasks import ImageExecuteCommand + from .tasks import ImageExecuteCommand taskset.add(ImageExecuteCommand) diff --git a/bootstrapvz/plugins/debconf/__init__.py b/bootstrapvz/plugins/debconf/__init__.py index 048882f..8551015 100644 --- a/bootstrapvz/plugins/debconf/__init__.py +++ b/bootstrapvz/plugins/debconf/__init__.py @@ -7,5 +7,5 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.update([tasks.DebconfSetSelections]) diff --git a/bootstrapvz/plugins/docker_daemon/__init__.py b/bootstrapvz/plugins/docker_daemon/__init__.py index 4e47cde..faaf8c5 100644 --- a/bootstrapvz/plugins/docker_daemon/__init__.py +++ b/bootstrapvz/plugins/docker_daemon/__init__.py @@ -1,5 +1,5 @@ from bootstrapvz.common.tools import rel_path -import tasks +from . import tasks from bootstrapvz.common.tasks import apt from bootstrapvz.common.releases import wheezy diff --git a/bootstrapvz/plugins/ec2_launch/__init__.py b/bootstrapvz/plugins/ec2_launch/__init__.py index 1f9e9b2..2135407 100644 --- a/bootstrapvz/plugins/ec2_launch/__init__.py +++ b/bootstrapvz/plugins/ec2_launch/__init__.py @@ -4,7 +4,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.add(tasks.LaunchEC2Instance) if 'print_public_ip' in manifest.plugins['ec2_launch']: taskset.add(tasks.PrintPublicIPAddress) diff --git a/bootstrapvz/plugins/ec2_publish/__init__.py b/bootstrapvz/plugins/ec2_publish/__init__.py index 1ac8ff1..e610a76 100644 --- a/bootstrapvz/plugins/ec2_publish/__init__.py +++ b/bootstrapvz/plugins/ec2_publish/__init__.py @@ -4,7 +4,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.add(tasks.CopyAmiToRegions) if 'manifest_url' in manifest.plugins['ec2_publish']: taskset.add(tasks.PublishAmiManifest) diff --git a/bootstrapvz/plugins/expand_root/__init__.py b/bootstrapvz/plugins/expand_root/__init__.py index d7fa0b5..cb5483e 100644 --- a/bootstrapvz/plugins/expand_root/__init__.py +++ b/bootstrapvz/plugins/expand_root/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks from bootstrapvz.common.tools import rel_path diff --git a/bootstrapvz/plugins/file_copy/__init__.py b/bootstrapvz/plugins/file_copy/__init__.py index e78decc..75d1857 100644 --- a/bootstrapvz/plugins/file_copy/__init__.py +++ b/bootstrapvz/plugins/file_copy/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/google_cloud_repo/__init__.py b/bootstrapvz/plugins/google_cloud_repo/__init__.py index 07d8f7c..5c9b366 100644 --- a/bootstrapvz/plugins/google_cloud_repo/__init__.py +++ b/bootstrapvz/plugins/google_cloud_repo/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks from bootstrapvz.common.tools import rel_path diff --git a/bootstrapvz/plugins/minimize_size/__init__.py b/bootstrapvz/plugins/minimize_size/__init__.py index 478da93..2d8f0a0 100644 --- a/bootstrapvz/plugins/minimize_size/__init__.py +++ b/bootstrapvz/plugins/minimize_size/__init__.py @@ -1,8 +1,8 @@ -import tasks.mounts -import tasks.shrink -import tasks.apt -import tasks.dpkg -from bootstrapvz.common.tasks import dpkg, locale +from . import tasks.mounts +from . import tasks.shrink +from . import tasks.apt +from . import tasks.dpkg +from bootstrapvz.common.tasks import locale def get_shrink_type(plugins): diff --git a/bootstrapvz/plugins/ntp/__init__.py b/bootstrapvz/plugins/ntp/__init__.py index cf0120b..caad1ef 100644 --- a/bootstrapvz/plugins/ntp/__init__.py +++ b/bootstrapvz/plugins/ntp/__init__.py @@ -4,7 +4,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.add(tasks.AddNtpPackage) if manifest.plugins['ntp'].get('servers', False): taskset.add(tasks.SetNtpServers) diff --git a/bootstrapvz/plugins/opennebula/__init__.py b/bootstrapvz/plugins/opennebula/__init__.py index 5d0fcab..67f9356 100644 --- a/bootstrapvz/plugins/opennebula/__init__.py +++ b/bootstrapvz/plugins/opennebula/__init__.py @@ -1,7 +1,7 @@ def resolve_tasks(taskset, manifest): - import tasks + from . import tasks from bootstrapvz.common.tasks import apt from bootstrapvz.common.releases import wheezy if manifest.release == wheezy: diff --git a/bootstrapvz/plugins/pip_install/__init__.py b/bootstrapvz/plugins/pip_install/__init__.py index 7f88abf..e74513e 100644 --- a/bootstrapvz/plugins/pip_install/__init__.py +++ b/bootstrapvz/plugins/pip_install/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/prebootstrapped/__init__.py b/bootstrapvz/plugins/prebootstrapped/__init__.py index e99015c..364509b 100644 --- a/bootstrapvz/plugins/prebootstrapped/__init__.py +++ b/bootstrapvz/plugins/prebootstrapped/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks from bootstrapvz.providers.ec2.tasks import ebs from bootstrapvz.plugins.minimize_size.tasks import dpkg from bootstrapvz.providers.virtualbox.tasks import guest_additions diff --git a/bootstrapvz/plugins/puppet/__init__.py b/bootstrapvz/plugins/puppet/__init__.py index 55ac88f..ce014c3 100644 --- a/bootstrapvz/plugins/puppet/__init__.py +++ b/bootstrapvz/plugins/puppet/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/root_password/__init__.py b/bootstrapvz/plugins/root_password/__init__.py index c2cba57..82b2a26 100644 --- a/bootstrapvz/plugins/root_password/__init__.py +++ b/bootstrapvz/plugins/root_password/__init__.py @@ -7,7 +7,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): from bootstrapvz.common.tasks import ssh - from tasks import SetRootPassword + from .tasks import SetRootPassword taskset.discard(ssh.DisableSSHPasswordAuthentication) taskset.add(ssh.EnableRootLogin) taskset.add(SetRootPassword) diff --git a/bootstrapvz/plugins/salt/__init__.py b/bootstrapvz/plugins/salt/__init__.py index 81ed9aa..f963a77 100644 --- a/bootstrapvz/plugins/salt/__init__.py +++ b/bootstrapvz/plugins/salt/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks def validate_manifest(data, validator, error): diff --git a/bootstrapvz/plugins/tmpfs_workspace/__init__.py b/bootstrapvz/plugins/tmpfs_workspace/__init__.py index 5124cd7..51cece8 100644 --- a/bootstrapvz/plugins/tmpfs_workspace/__init__.py +++ b/bootstrapvz/plugins/tmpfs_workspace/__init__.py @@ -1,5 +1,5 @@ from bootstrapvz.common.tasks.workspace import CreateWorkspace, DeleteWorkspace -from tasks import CreateTmpFsWorkspace, MountTmpFsWorkspace, UnmountTmpFsWorkspace, DeleteTmpFsWorkspace +from .tasks import CreateTmpFsWorkspace, MountTmpFsWorkspace, UnmountTmpFsWorkspace, DeleteTmpFsWorkspace def resolve_tasks(taskset, manifest): diff --git a/bootstrapvz/plugins/unattended_upgrades/__init__.py b/bootstrapvz/plugins/unattended_upgrades/__init__.py index 5e0942c..b3fb427 100644 --- a/bootstrapvz/plugins/unattended_upgrades/__init__.py +++ b/bootstrapvz/plugins/unattended_upgrades/__init__.py @@ -6,6 +6,6 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - import tasks + from . import tasks taskset.add(tasks.AddUnattendedUpgradesPackage) taskset.add(tasks.EnablePeriodicUpgrades) diff --git a/bootstrapvz/plugins/vagrant/__init__.py b/bootstrapvz/plugins/vagrant/__init__.py index ae71103..8643231 100644 --- a/bootstrapvz/plugins/vagrant/__init__.py +++ b/bootstrapvz/plugins/vagrant/__init__.py @@ -1,4 +1,4 @@ -import tasks +from . import tasks from bootstrapvz.common import task_groups from bootstrapvz.common.tasks import image, ssh, volume from bootstrapvz.common.tools import rel_path diff --git a/bootstrapvz/providers/azure/__init__.py b/bootstrapvz/providers/azure/__init__.py index 784393d..f67d0c6 100644 --- a/bootstrapvz/providers/azure/__init__.py +++ b/bootstrapvz/providers/azure/__init__.py @@ -1,6 +1,6 @@ from bootstrapvz.common import task_groups -import tasks.packages -import tasks.boot +from . import tasks.packages +from . import tasks.boot from bootstrapvz.common.tasks import image from bootstrapvz.common.tasks import loopback from bootstrapvz.common.tasks import initd diff --git a/bootstrapvz/providers/docker/__init__.py b/bootstrapvz/providers/docker/__init__.py index 88eac94..7d6cc2f 100644 --- a/bootstrapvz/providers/docker/__init__.py +++ b/bootstrapvz/providers/docker/__init__.py @@ -1,9 +1,9 @@ from bootstrapvz.common import task_groups from bootstrapvz.common.tasks import apt, dpkg, folder, filesystem from bootstrapvz.common.tools import rel_path -import tasks.commands -import tasks.image -import tasks.settings +from . import tasks.commands +from . import tasks.image +from . import tasks.settings def validate_manifest(data, validator, error): diff --git a/bootstrapvz/providers/ec2/__init__.py b/bootstrapvz/providers/ec2/__init__.py index 4a3daa6..7885006 100644 --- a/bootstrapvz/providers/ec2/__init__.py +++ b/bootstrapvz/providers/ec2/__init__.py @@ -1,14 +1,14 @@ from bootstrapvz.common import task_groups -import tasks.packages -import tasks.connection -import tasks.host -import tasks.ami -import tasks.ebs -import tasks.filesystem -import tasks.boot -import tasks.network -import tasks.initd -import tasks.tuning +from . import tasks.packages +from . import tasks.connection +from . import tasks.host +from . import tasks.ami +from . import tasks.ebs +from . import tasks.filesystem +from . import tasks.boot +from . import tasks.network +from . import tasks.initd +from . import tasks.tuning from bootstrapvz.common.tasks import apt, boot, filesystem, grub, initd from bootstrapvz.common.tasks import kernel, loopback, volume from bootstrapvz.common.tools import rel_path diff --git a/bootstrapvz/providers/ec2/tasks/ami.py b/bootstrapvz/providers/ec2/tasks/ami.py index 87acef7..bc5fbb5 100755 --- a/bootstrapvz/providers/ec2/tasks/ami.py +++ b/bootstrapvz/providers/ec2/tasks/ami.py @@ -2,9 +2,9 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases from bootstrapvz.common.exceptions import TaskError from bootstrapvz.common.tools import log_check_call, rel_path -from ebs import Snapshot +from .ebs import Snapshot from bootstrapvz.common.tasks import workspace -import connection +from . import connection from . import assets import os.path diff --git a/bootstrapvz/providers/ec2/tasks/connection.py b/bootstrapvz/providers/ec2/tasks/connection.py index b35ebb3..61e9e3b 100644 --- a/bootstrapvz/providers/ec2/tasks/connection.py +++ b/bootstrapvz/providers/ec2/tasks/connection.py @@ -1,6 +1,6 @@ from bootstrapvz.base import Task from bootstrapvz.common import phases -import host +from . import host class SilenceBotoDebug(Task): diff --git a/bootstrapvz/providers/gce/__init__.py b/bootstrapvz/providers/gce/__init__.py index 33f3029..b69b457 100644 --- a/bootstrapvz/providers/gce/__init__.py +++ b/bootstrapvz/providers/gce/__init__.py @@ -1,9 +1,9 @@ from bootstrapvz.common import task_groups -import tasks.apt -import tasks.boot -import tasks.configuration -import tasks.image -import tasks.packages +from . import tasks.apt +from . import tasks.boot +from . import tasks.configuration +from . import tasks.image +from . import tasks.packages from bootstrapvz.common.tasks import apt, boot, image, loopback, initd from bootstrapvz.common.tasks import ssh, volume, grub diff --git a/bootstrapvz/providers/kvm/__init__.py b/bootstrapvz/providers/kvm/__init__.py index 4104af0..3be8bf7 100644 --- a/bootstrapvz/providers/kvm/__init__.py +++ b/bootstrapvz/providers/kvm/__init__.py @@ -1,6 +1,6 @@ from bootstrapvz.common import task_groups -import tasks.packages -import tasks.boot +from . import tasks.packages +from . import tasks.boot from bootstrapvz.common.tasks import image, loopback, initd, ssh, logicalvolume @@ -29,7 +29,7 @@ def resolve_tasks(taskset, manifest): ]) if manifest.provider.get('virtio', []): - from tasks import virtio + from .tasks import virtio taskset.update([virtio.VirtIO]) if manifest.provider.get('console', False): diff --git a/bootstrapvz/providers/oracle/__init__.py b/bootstrapvz/providers/oracle/__init__.py index 315810f..cd96922 100644 --- a/bootstrapvz/providers/oracle/__init__.py +++ b/bootstrapvz/providers/oracle/__init__.py @@ -1,9 +1,9 @@ from bootstrapvz.common import task_groups from bootstrapvz.common.tasks import image, loopback, ssh, volume -import tasks.api -import tasks.image -import tasks.network -import tasks.packages +from . import tasks.api +from . import tasks.image +from . import tasks.network +from . import tasks.packages def validate_manifest(data, validator, error): diff --git a/bootstrapvz/providers/virtualbox/__init__.py b/bootstrapvz/providers/virtualbox/__init__.py index 6a05ac9..2459cd4 100644 --- a/bootstrapvz/providers/virtualbox/__init__.py +++ b/bootstrapvz/providers/virtualbox/__init__.py @@ -1,6 +1,6 @@ from bootstrapvz.common import task_groups -import tasks.packages -import tasks.boot +from . import tasks.packages +from . import tasks.boot from bootstrapvz.common.tasks import image from bootstrapvz.common.tasks import loopback @@ -21,7 +21,7 @@ def resolve_tasks(taskset, manifest): ]) if manifest.provider.get('guest_additions', False): - from tasks import guest_additions + from .tasks import guest_additions taskset.update([guest_additions.CheckGuestAdditionsPath, guest_additions.AddGuestAdditionsPackages, guest_additions.InstallGuestAdditions, diff --git a/bootstrapvz/remote/build_servers/__init__.py b/bootstrapvz/remote/build_servers/__init__.py index f62e6f4..8865558 100644 --- a/bootstrapvz/remote/build_servers/__init__.py +++ b/bootstrapvz/remote/build_servers/__init__.py @@ -26,10 +26,10 @@ def pick_build_server(build_servers, manifest, preferences={}): if not matches(name, settings): continue if settings['type'] == 'local': - from local import LocalBuildServer + from .local import LocalBuildServer return LocalBuildServer(name, settings) else: - from remote import RemoteBuildServer + from .remote import RemoteBuildServer return RemoteBuildServer(name, settings) raise Exception('Unable to find a build server that matches your preferences.') diff --git a/bootstrapvz/remote/build_servers/local.py b/bootstrapvz/remote/build_servers/local.py index db2dec6..6dd5e09 100644 --- a/bootstrapvz/remote/build_servers/local.py +++ b/bootstrapvz/remote/build_servers/local.py @@ -1,4 +1,4 @@ -from build_server import BuildServer +from .build_server import BuildServer from contextlib import contextmanager diff --git a/bootstrapvz/remote/build_servers/remote.py b/bootstrapvz/remote/build_servers/remote.py index f6b5449..d02cf2e 100644 --- a/bootstrapvz/remote/build_servers/remote.py +++ b/bootstrapvz/remote/build_servers/remote.py @@ -1,4 +1,4 @@ -from build_server import BuildServer +from .build_server import BuildServer from bootstrapvz.common.tools import log_check_call from contextlib import contextmanager import logging @@ -21,7 +21,7 @@ class RemoteBuildServer(BuildServer): with self.spawn_server() as forwards: args = {'listen_port': forwards['local_callback_port'], 'remote_port': forwards['remote_callback_port']} - from callback import CallbackServer + from .callback import CallbackServer with CallbackServer(**args) as callback_server: with connect_pyro('localhost', forwards['local_server_port']) as connection: connection.set_callback_server(callback_server) diff --git a/bootstrapvz/remote/main.py b/bootstrapvz/remote/main.py index d48c98d..6ffe8ca 100644 --- a/bootstrapvz/remote/main.py +++ b/bootstrapvz/remote/main.py @@ -15,7 +15,7 @@ def main(): # load the build servers file build_servers = load_data(opts['--servers']) # Pick a build server - from build_servers import pick_build_server + from .build_servers import pick_build_server preferences = {} if opts['--name'] is not None: preferences['name'] = opts['--name'] diff --git a/bootstrapvz/remote/server.py b/bootstrapvz/remote/server.py index 92b2095..72e874e 100644 --- a/bootstrapvz/remote/server.py +++ b/bootstrapvz/remote/server.py @@ -18,7 +18,7 @@ def setup_logging(): root = logging.getLogger() root.setLevel(logging.NOTSET) - from log import LogForwarder + from .log import LogForwarder log_forwarder = LogForwarder() root.addHandler(log_forwarder) diff --git a/tests/system/docker_tests.py b/tests/system/docker_tests.py index 720f584..9aa30dd 100644 --- a/tests/system/docker_tests.py +++ b/tests/system/docker_tests.py @@ -1,5 +1,5 @@ -from manifests import merge_manifest_data -from tools import boot_manifest +from .manifests import merge_manifest_data +from .tools import boot_manifest partials = {'docker': ''' provider: diff --git a/tests/system/ec2_ebs_hvm_tests.py b/tests/system/ec2_ebs_hvm_tests.py index a517d65..ebd2c8e 100644 --- a/tests/system/ec2_ebs_hvm_tests.py +++ b/tests/system/ec2_ebs_hvm_tests.py @@ -1,5 +1,5 @@ -from manifests import merge_manifest_data -from tools import boot_manifest +from .manifests import merge_manifest_data +from .tools import boot_manifest partials = {'ebs_hvm': ''' provider: diff --git a/tests/system/ec2_ebs_pvm_tests.py b/tests/system/ec2_ebs_pvm_tests.py index cb006f5..56e2d37 100644 --- a/tests/system/ec2_ebs_pvm_tests.py +++ b/tests/system/ec2_ebs_pvm_tests.py @@ -1,5 +1,5 @@ -from manifests import merge_manifest_data -from tools import boot_manifest +from .manifests import merge_manifest_data +from .tools import boot_manifest partials = {'ebs_pvm': ''' provider: diff --git a/tests/system/ec2_s3_pvm_tests.py b/tests/system/ec2_s3_pvm_tests.py index 51c0a2d..7389123 100644 --- a/tests/system/ec2_s3_pvm_tests.py +++ b/tests/system/ec2_s3_pvm_tests.py @@ -1,5 +1,5 @@ -from manifests import merge_manifest_data -from tools import boot_manifest +from .manifests import merge_manifest_data +from .tools import boot_manifest import random s3_bucket_name = '{id:x}'.format(id=random.randrange(16 ** 16)) diff --git a/tests/system/providers/docker/__init__.py b/tests/system/providers/docker/__init__.py index 9076039..15ceed3 100644 --- a/tests/system/providers/docker/__init__.py +++ b/tests/system/providers/docker/__init__.py @@ -48,7 +48,7 @@ def boot_image(manifest, build_server, bootstrap_info): build_server.remote_command(['sudo', 'docker', 'rmi', bootstrap_info._docker['image_id']]) - from image import Image + from .image import Image with Image(image_id, docker_env) as container: yield container finally: diff --git a/tests/system/providers/ec2/__init__.py b/tests/system/providers/ec2/__init__.py index 09c095a..795760b 100644 --- a/tests/system/providers/ec2/__init__.py +++ b/tests/system/providers/ec2/__init__.py @@ -41,10 +41,10 @@ def boot_image(manifest, build_server, bootstrap_info, instance_type=None): aws_secret_access_key=credentials['secret-key']) if manifest.volume['backing'] == 'ebs': - from images import EBSImage + from .images import EBSImage image = EBSImage(bootstrap_info._ec2['image'], ec2_connection) if manifest.volume['backing'] == 's3': - from images import S3Image + from .images import S3Image image = S3Image(bootstrap_info._ec2['image'], ec2_connection) try: diff --git a/tests/system/providers/virtualbox/__init__.py b/tests/system/providers/virtualbox/__init__.py index 9dc1bd4..e0b6341 100644 --- a/tests/system/providers/virtualbox/__init__.py +++ b/tests/system/providers/virtualbox/__init__.py @@ -21,7 +21,7 @@ def boot_image(manifest, build_server, bootstrap_info): finally: build_server.delete(bootstrap_info.volume.image_path) - from image import VirtualBoxImage + from .image import VirtualBoxImage image = VirtualBoxImage(image_path) import hashlib @@ -41,7 +41,7 @@ def boot_image(manifest, build_server, bootstrap_info): @contextmanager def run_instance(image, instance_name, manifest): - from instance import VirtualBoxInstance + from .instance import VirtualBoxInstance instance = VirtualBoxInstance(image, instance_name, manifest.system['architecture'], manifest.release) try: diff --git a/tests/system/tools/__init__.py b/tests/system/tools/__init__.py index 5af0a67..6db90ce 100644 --- a/tests/system/tools/__init__.py +++ b/tests/system/tools/__init__.py @@ -75,7 +75,7 @@ def read_from_socket(socket_path, termination_string, timeout, read_timeout=0.5) raise Exception(e) continue_select = False if default_timer() - start > timeout: - from exceptions import SocketReadTimeout + from .exceptions import SocketReadTimeout msg = ('Reading from socket `{path}\' timed out after {seconds} seconds.\n' 'Here is the output so far:\n{output}' .format(path=socket_path, seconds=timeout, output=output)) diff --git a/tests/system/virtualbox_tests.py b/tests/system/virtualbox_tests.py index 62883d3..87cf6b4 100644 --- a/tests/system/virtualbox_tests.py +++ b/tests/system/virtualbox_tests.py @@ -1,5 +1,5 @@ -from manifests import merge_manifest_data -from tools import boot_manifest +from .manifests import merge_manifest_data +from .tools import boot_manifest partials = {'vdi': '{provider: {name: virtualbox}, volume: {backing: vdi}}', 'vmdk': '{provider: {name: virtualbox}, volume: {backing: vmdk}}', From 4e1864aa2b5f21738da1df57d9681ebb11448fe2 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 05:46:15 +0000 Subject: [PATCH 02/16] fix pylint W0403(relative-import) paths --- bootstrapvz/plugins/minimize_size/__init__.py | 56 ++++---- bootstrapvz/providers/azure/__init__.py | 11 +- bootstrapvz/providers/docker/__init__.py | 20 ++- bootstrapvz/providers/ec2/__init__.py | 124 +++++++++--------- bootstrapvz/providers/gce/__init__.py | 36 +++-- bootstrapvz/providers/kvm/__init__.py | 11 +- bootstrapvz/providers/oracle/__init__.py | 24 ++-- bootstrapvz/providers/virtualbox/__init__.py | 7 +- pylintrc | 2 +- 9 files changed, 137 insertions(+), 154 deletions(-) diff --git a/bootstrapvz/plugins/minimize_size/__init__.py b/bootstrapvz/plugins/minimize_size/__init__.py index 2d8f0a0..f002304 100644 --- a/bootstrapvz/plugins/minimize_size/__init__.py +++ b/bootstrapvz/plugins/minimize_size/__init__.py @@ -1,8 +1,6 @@ -from . import tasks.mounts -from . import tasks.shrink -from . import tasks.apt -from . import tasks.dpkg from bootstrapvz.common.tasks import locale +from .tasks import mounts, shrink, apt, dpkg +import bootstrapvz.common.tasks.dpkg def get_shrink_type(plugins): @@ -33,47 +31,47 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): - taskset.update([tasks.mounts.AddFolderMounts, - tasks.mounts.RemoveFolderMounts, + taskset.update([mounts.AddFolderMounts, + mounts.RemoveFolderMounts, ]) if manifest.plugins['minimize_size'].get('zerofree', False): - taskset.add(tasks.shrink.AddRequiredZeroFreeCommand) - taskset.add(tasks.shrink.Zerofree) + taskset.add(shrink.AddRequiredZeroFreeCommand) + taskset.add(shrink.Zerofree) if get_shrink_type(manifest.plugins) == 'vmware-vdiskmanager': - taskset.add(tasks.shrink.AddRequiredVDiskManagerCommand) - taskset.add(tasks.shrink.ShrinkVolumeWithVDiskManager) + taskset.add(shrink.AddRequiredVDiskManagerCommand) + taskset.add(shrink.ShrinkVolumeWithVDiskManager) if get_shrink_type(manifest.plugins) == 'qemu-img': - taskset.add(tasks.shrink.AddRequiredQemuImgCommand) - taskset.add(tasks.shrink.ShrinkVolumeWithQemuImg) + taskset.add(shrink.AddRequiredQemuImgCommand) + taskset.add(shrink.ShrinkVolumeWithQemuImg) if 'apt' in manifest.plugins['minimize_size']: - apt = manifest.plugins['minimize_size']['apt'] - if apt.get('autoclean', False): - taskset.add(tasks.apt.AutomateAptClean) - if 'languages' in apt: - taskset.add(tasks.apt.FilterTranslationFiles) - if apt.get('gzip_indexes', False): - taskset.add(tasks.apt.AptGzipIndexes) - if apt.get('autoremove_suggests', False): - taskset.add(tasks.apt.AptAutoremoveSuggests) + msapt = manifest.plugins['minimize_size']['apt'] + if msapt.get('autoclean', False): + taskset.add(apt.AutomateAptClean) + if 'languages' in msapt: + taskset.add(apt.FilterTranslationFiles) + if msapt.get('gzip_indexes', False): + taskset.add(apt.AptGzipIndexes) + if msapt.get('autoremove_suggests', False): + taskset.add(apt.AptAutoremoveSuggests) if 'dpkg' in manifest.plugins['minimize_size']: - filter_tasks = [dpkg.CreateDpkgCfg, - tasks.dpkg.InitializeBootstrapFilterList, - tasks.dpkg.CreateBootstrapFilterScripts, - tasks.dpkg.DeleteBootstrapFilterScripts, + filter_tasks = [bootstrapvz.common.tasks.dpkg.CreateDpkgCfg, + dpkg.InitializeBootstrapFilterList, + dpkg.CreateBootstrapFilterScripts, + dpkg.DeleteBootstrapFilterScripts, ] msdpkg = manifest.plugins['minimize_size']['dpkg'] if 'locales' in msdpkg: taskset.update(filter_tasks) - taskset.add(tasks.dpkg.FilterLocales) + taskset.add(dpkg.FilterLocales) # If no locales are selected, we don't need the locale package if msdpkg['locales']: taskset.discard(locale.LocaleBootstrapPackage) taskset.discard(locale.GenerateLocale) if msdpkg.get('exclude_docs', False): taskset.update(filter_tasks) - taskset.add(tasks.dpkg.ExcludeDocs) + taskset.add(dpkg.ExcludeDocs) def resolve_rollback_tasks(taskset, manifest, completed, counter_task): - counter_task(taskset, tasks.mounts.AddFolderMounts, tasks.mounts.RemoveFolderMounts) - counter_task(taskset, tasks.dpkg.CreateBootstrapFilterScripts, tasks.dpkg.DeleteBootstrapFilterScripts) + counter_task(taskset, mounts.AddFolderMounts, mounts.RemoveFolderMounts) + counter_task(taskset, dpkg.CreateBootstrapFilterScripts, dpkg.DeleteBootstrapFilterScripts) diff --git a/bootstrapvz/providers/azure/__init__.py b/bootstrapvz/providers/azure/__init__.py index f67d0c6..6e229d1 100644 --- a/bootstrapvz/providers/azure/__init__.py +++ b/bootstrapvz/providers/azure/__init__.py @@ -1,12 +1,11 @@ from bootstrapvz.common import task_groups -from . import tasks.packages -from . import tasks.boot from bootstrapvz.common.tasks import image from bootstrapvz.common.tasks import loopback from bootstrapvz.common.tasks import initd from bootstrapvz.common.tasks import ssh from bootstrapvz.common.tasks import apt from bootstrapvz.common.tasks import grub +from .tasks import packages, boot def validate_manifest(data, validator, error): @@ -17,7 +16,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): taskset.update(task_groups.get_standard_groups(manifest)) taskset.update([apt.AddBackports, - tasks.packages.DefaultPackages, + packages.DefaultPackages, loopback.AddRequiredCommands, loopback.Create, image.MoveImage, @@ -25,9 +24,9 @@ def resolve_tasks(taskset, manifest): ssh.AddOpenSSHPackage, ssh.ShredHostkeys, ssh.AddSSHKeyGeneration, - tasks.packages.Waagent, - tasks.boot.ConfigureGrub, - tasks.boot.PatchUdev, + packages.Waagent, + boot.ConfigureGrub, + boot.PatchUdev, ]) taskset.discard(grub.SetGrubConsolOutputDeviceToSerial) diff --git a/bootstrapvz/providers/docker/__init__.py b/bootstrapvz/providers/docker/__init__.py index 7d6cc2f..7c64476 100644 --- a/bootstrapvz/providers/docker/__init__.py +++ b/bootstrapvz/providers/docker/__init__.py @@ -1,9 +1,7 @@ from bootstrapvz.common import task_groups from bootstrapvz.common.tasks import apt, dpkg, folder, filesystem from bootstrapvz.common.tools import rel_path -from . import tasks.commands -from . import tasks.image -from . import tasks.settings +from .tasks import commands, image, settings def validate_manifest(data, validator, error): @@ -28,17 +26,17 @@ def resolve_tasks(taskset, manifest): # Let the autostart of daemons by apt remain disabled taskset.discard(apt.EnableDaemonAutostart) - taskset.update([tasks.commands.AddRequiredCommands, - tasks.image.CreateDockerfileEntry, - tasks.image.CreateImage, - tasks.settings.DpkgUnsafeIo, - tasks.settings.AutoRemoveKernel, - tasks.settings.SystemdContainer + taskset.update([commands.AddRequiredCommands, + image.CreateDockerfileEntry, + image.CreateImage, + settings.DpkgUnsafeIo, + settings.AutoRemoveKernel, + settings.SystemdContainer ]) if 'labels' in manifest.provider: - taskset.add(tasks.image.PopulateLabels) + taskset.add(image.PopulateLabels) if 'dockerfile' in manifest.provider: - taskset.add(tasks.image.AppendManifestDockerfile) + taskset.add(image.AppendManifestDockerfile) def resolve_rollback_tasks(taskset, manifest, completed, counter_task): diff --git a/bootstrapvz/providers/ec2/__init__.py b/bootstrapvz/providers/ec2/__init__.py index 7885006..9929987 100644 --- a/bootstrapvz/providers/ec2/__init__.py +++ b/bootstrapvz/providers/ec2/__init__.py @@ -1,16 +1,10 @@ from bootstrapvz.common import task_groups -from . import tasks.packages -from . import tasks.connection -from . import tasks.host -from . import tasks.ami -from . import tasks.ebs -from . import tasks.filesystem -from . import tasks.boot -from . import tasks.network -from . import tasks.initd -from . import tasks.tuning -from bootstrapvz.common.tasks import apt, boot, filesystem, grub, initd -from bootstrapvz.common.tasks import kernel, loopback, volume +from .tasks import packages, connection, host, ami, ebs, filesystem, boot, network, initd, tuning +import bootstrapvz.common.tasks.boot +import bootstrapvz.common.tasks.filesystem +import bootstrapvz.common.tasks.grub +import bootstrapvz.common.tasks.initd +from bootstrapvz.common.tasks import apt, kernel, loopback, volume from bootstrapvz.common.tools import rel_path @@ -57,94 +51,94 @@ def resolve_tasks(taskset, manifest): taskset.update(task_groups.get_standard_groups(manifest)) taskset.update(task_groups.ssh_group) - taskset.update([tasks.host.AddExternalCommands, - tasks.packages.DefaultPackages, - tasks.connection.SilenceBotoDebug, - tasks.connection.GetCredentials, - tasks.ami.AMIName, - tasks.connection.Connect, + taskset.update([host.AddExternalCommands, + packages.DefaultPackages, + connection.SilenceBotoDebug, + connection.GetCredentials, + ami.AMIName, + connection.Connect, - tasks.tuning.TuneSystem, - tasks.tuning.BlackListModules, - boot.BlackListModules, - boot.DisableGetTTYs, - tasks.boot.AddXenGrubConsoleOutputDevice, - grub.WriteGrubConfig, - tasks.boot.UpdateGrubConfig, - initd.AddExpandRoot, - initd.RemoveHWClock, - initd.InstallInitScripts, - tasks.ami.RegisterAMI, + tuning.TuneSystem, + tuning.BlackListModules, + bootstrapvz.common.tasks.boot.BlackListModules, + bootstrapvz.common.tasks.boot.DisableGetTTYs, + boot.AddXenGrubConsoleOutputDevice, + bootstrapvz.common.tasks.grub.WriteGrubConfig, + boot.UpdateGrubConfig, + bootstrapvz.common.tasks.initd.AddExpandRoot, + bootstrapvz.common.tasks.initd.RemoveHWClock, + bootstrapvz.common.tasks.initd.InstallInitScripts, + ami.RegisterAMI, ]) if manifest.release > wheezy: - taskset.add(tasks.network.InstallNetworkingUDevHotplugAndDHCPSubinterface) + taskset.add(network.InstallNetworkingUDevHotplugAndDHCPSubinterface) if manifest.release <= wheezy: # The default DHCP client `isc-dhcp' doesn't work properly on wheezy and earlier - taskset.add(tasks.network.InstallDHCPCD) - taskset.add(tasks.network.EnableDHCPCDDNS) + taskset.add(network.InstallDHCPCD) + taskset.add(network.EnableDHCPCDDNS) if manifest.release >= jessie: - taskset.add(tasks.packages.AddWorkaroundGrowpart) - taskset.add(initd.AdjustGrowpartWorkaround) + taskset.add(packages.AddWorkaroundGrowpart) + taskset.add(bootstrapvz.common.tasks.initd.AdjustGrowpartWorkaround) if manifest.system['bootloader'] == 'grub': - taskset.add(grub.EnableSystemd) + taskset.add(bootstrapvz.common.tasks.grub.EnableSystemd) if manifest.release <= stable: taskset.add(apt.AddBackports) if manifest.provider.get('install_init_scripts', True): - taskset.add(tasks.initd.AddEC2InitScripts) + taskset.add(initd.AddEC2InitScripts) if manifest.volume['partitions']['type'] != 'none': - taskset.add(initd.AdjustExpandRootScript) + taskset.add(bootstrapvz.common.tasks.initd.AdjustExpandRootScript) if manifest.system['bootloader'] == 'pvgrub': - taskset.add(grub.AddGrubPackage) - taskset.update([grub.AddGrubPackage, - grub.InitGrubConfig, - grub.SetGrubTerminalToConsole, - grub.SetGrubConsolOutputDeviceToSerial, - grub.RemoveGrubTimeout, - grub.DisableGrubRecovery, - tasks.boot.CreatePVGrubCustomRule, - tasks.boot.ConfigurePVGrub, - grub.WriteGrubConfig, - tasks.boot.UpdateGrubConfig, - tasks.boot.LinkGrubConfig]) + taskset.add(bootstrapvz.common.tasks.grub.AddGrubPackage) + taskset.update([bootstrapvz.common.tasks.grub.AddGrubPackage, + bootstrapvz.common.tasks.grub.InitGrubConfig, + bootstrapvz.common.tasks.grub.SetGrubTerminalToConsole, + bootstrapvz.common.tasks.grub.SetGrubConsolOutputDeviceToSerial, + bootstrapvz.common.tasks.grub.RemoveGrubTimeout, + bootstrapvz.common.tasks.grub.DisableGrubRecovery, + boot.CreatePVGrubCustomRule, + boot.ConfigurePVGrub, + bootstrapvz.common.tasks.grub.WriteGrubConfig, + boot.UpdateGrubConfig, + boot.LinkGrubConfig]) if manifest.volume['backing'].lower() == 'ebs': - taskset.update([tasks.host.GetInstanceMetadata, - tasks.ebs.Create, - tasks.ebs.Snapshot, + taskset.update([host.GetInstanceMetadata, + ebs.Create, + ebs.Snapshot, ]) - taskset.add(tasks.ebs.Attach) + taskset.add(ebs.Attach) taskset.discard(volume.Attach) if manifest.volume['backing'].lower() == 's3': taskset.update([loopback.AddRequiredCommands, - tasks.host.SetRegion, + host.SetRegion, loopback.Create, - tasks.filesystem.S3FStab, - tasks.ami.BundleImage, - tasks.ami.UploadImage, - tasks.ami.RemoveBundle, + filesystem.S3FStab, + ami.BundleImage, + ami.UploadImage, + ami.RemoveBundle, ]) - taskset.discard(filesystem.FStab) + taskset.discard(bootstrapvz.common.tasks.filesystem.FStab) if manifest.provider.get('enhanced_networking', None) == 'simple': taskset.update([kernel.AddDKMSPackages, - tasks.network.InstallEnhancedNetworking, - tasks.network.InstallENANetworking, + network.InstallEnhancedNetworking, + network.InstallENANetworking, kernel.UpdateInitramfs]) - taskset.update([filesystem.Format, + taskset.update([bootstrapvz.common.tasks.filesystem.Format, volume.Delete, ]) def resolve_rollback_tasks(taskset, manifest, completed, counter_task): taskset.update(task_groups.get_standard_rollback_tasks(completed)) - counter_task(taskset, tasks.ebs.Create, volume.Delete) - counter_task(taskset, tasks.ebs.Attach, volume.Detach) - counter_task(taskset, tasks.ami.BundleImage, tasks.ami.RemoveBundle) + counter_task(taskset, ebs.Create, volume.Delete) + counter_task(taskset, ebs.Attach, volume.Detach) + counter_task(taskset, ami.BundleImage, ami.RemoveBundle) diff --git a/bootstrapvz/providers/gce/__init__.py b/bootstrapvz/providers/gce/__init__.py index b69b457..c31262e 100644 --- a/bootstrapvz/providers/gce/__init__.py +++ b/bootstrapvz/providers/gce/__init__.py @@ -1,11 +1,9 @@ +import bootstrapvz.common.tasks.apt +import bootstrapvz.common.tasks.boot +import bootstrapvz.common.tasks.image +from bootstrapvz.common.tasks import loopback, initd, ssh, volume, grub from bootstrapvz.common import task_groups -from . import tasks.apt -from . import tasks.boot -from . import tasks.configuration -from . import tasks.image -from . import tasks.packages -from bootstrapvz.common.tasks import apt, boot, image, loopback, initd -from bootstrapvz.common.tasks import ssh, volume, grub +from .tasks import apt, boot, configuration, image, packages def validate_manifest(data, validator, error): @@ -15,30 +13,30 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): taskset.update(task_groups.get_standard_groups(manifest)) - taskset.update([apt.AddBackports, - apt.AddDefaultSources, + taskset.update([bootstrapvz.common.tasks.apt.AddBackports, + bootstrapvz.common.tasks.apt.AddDefaultSources, loopback.AddRequiredCommands, loopback.Create, - tasks.packages.DefaultPackages, - tasks.configuration.GatherReleaseInformation, - tasks.boot.ConfigureGrub, + packages.DefaultPackages, + configuration.GatherReleaseInformation, + boot.ConfigureGrub, initd.InstallInitScripts, - boot.BlackListModules, - boot.UpdateInitramfs, + bootstrapvz.common.tasks.boot.BlackListModules, + bootstrapvz.common.tasks.boot.UpdateInitramfs, ssh.AddSSHKeyGeneration, ssh.DisableSSHPasswordAuthentication, ssh.DisableRootLogin, - tasks.apt.AddBaselineAptCache, - image.MoveImage, - tasks.image.CreateTarball, + apt.AddBaselineAptCache, + bootstrapvz.common.tasks.image.MoveImage, + image.CreateTarball, volume.Delete, ]) taskset.discard(grub.SetGrubConsolOutputDeviceToSerial) if 'gcs_destination' in manifest.provider: - taskset.add(tasks.image.UploadImage) + taskset.add(image.UploadImage) if 'gce_project' in manifest.provider: - taskset.add(tasks.image.RegisterImage) + taskset.add(image.RegisterImage) def resolve_rollback_tasks(taskset, manifest, completed, counter_task): diff --git a/bootstrapvz/providers/kvm/__init__.py b/bootstrapvz/providers/kvm/__init__.py index 3be8bf7..2674f4f 100644 --- a/bootstrapvz/providers/kvm/__init__.py +++ b/bootstrapvz/providers/kvm/__init__.py @@ -1,7 +1,6 @@ from bootstrapvz.common import task_groups -from . import tasks.packages -from . import tasks.boot from bootstrapvz.common.tasks import image, loopback, initd, ssh, logicalvolume +from .tasks import packages, boot def validate_manifest(data, validator, error): @@ -12,7 +11,7 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): taskset.update(task_groups.get_standard_groups(manifest)) - taskset.update([tasks.packages.DefaultPackages, + taskset.update([packages.DefaultPackages, initd.InstallInitScripts, ssh.AddOpenSSHPackage, ssh.ShredHostkeys, @@ -34,12 +33,12 @@ def resolve_tasks(taskset, manifest): if manifest.provider.get('console', False): if manifest.provider['console'] == 'virtual': - taskset.update([tasks.boot.SetGrubConsolOutputDeviceToVirtual]) + taskset.update([boot.SetGrubConsolOutputDeviceToVirtual]) from bootstrapvz.common.releases import jessie if manifest.release >= jessie: - taskset.update([tasks.boot.SetGrubConsolOutputDeviceToVirtual, - tasks.boot.SetSystemdTTYVTDisallocate, + taskset.update([boot.SetGrubConsolOutputDeviceToVirtual, + boot.SetSystemdTTYVTDisallocate, ]) diff --git a/bootstrapvz/providers/oracle/__init__.py b/bootstrapvz/providers/oracle/__init__.py index cd96922..3ae8fbc 100644 --- a/bootstrapvz/providers/oracle/__init__.py +++ b/bootstrapvz/providers/oracle/__init__.py @@ -1,9 +1,7 @@ +import bootstrapvz.common.tasks.image from bootstrapvz.common import task_groups -from bootstrapvz.common.tasks import image, loopback, ssh, volume -from . import tasks.api -from . import tasks.image -from . import tasks.network -from . import tasks.packages +from bootstrapvz.common.tasks import loopback, ssh, volume +from .tasks import api, image, network, packages def validate_manifest(data, validator, error): @@ -26,20 +24,20 @@ def resolve_tasks(taskset, manifest): taskset.update([loopback.AddRequiredCommands, loopback.Create, - image.MoveImage, + bootstrapvz.common.tasks.image.MoveImage, ssh.DisableRootLogin, volume.Delete, - tasks.image.CreateImageTarball, - tasks.network.InstallDHCPCD, - tasks.packages.DefaultPackages, + image.CreateImageTarball, + network.InstallDHCPCD, + packages.DefaultPackages, ]) if 'credentials' in manifest.provider: - taskset.add(tasks.api.Connect) - taskset.add(tasks.image.UploadImageTarball) + taskset.add(api.Connect) + taskset.add(image.UploadImageTarball) if manifest.provider.get('verify', False): - taskset.add(tasks.image.DownloadImageTarball) - taskset.add(tasks.image.CompareImageTarballs) + taskset.add(image.DownloadImageTarball) + taskset.add(image.CompareImageTarballs) def resolve_rollback_tasks(taskset, manifest, completed, counter_task): diff --git a/bootstrapvz/providers/virtualbox/__init__.py b/bootstrapvz/providers/virtualbox/__init__.py index 2459cd4..02d8d8f 100644 --- a/bootstrapvz/providers/virtualbox/__init__.py +++ b/bootstrapvz/providers/virtualbox/__init__.py @@ -1,8 +1,7 @@ from bootstrapvz.common import task_groups -from . import tasks.packages -from . import tasks.boot from bootstrapvz.common.tasks import image from bootstrapvz.common.tasks import loopback +from .tasks import packages, boot def validate_manifest(data, validator, error): @@ -13,8 +12,8 @@ def validate_manifest(data, validator, error): def resolve_tasks(taskset, manifest): taskset.update(task_groups.get_standard_groups(manifest)) - taskset.update([tasks.packages.DefaultPackages, - tasks.boot.AddVirtualConsoleGrubOutputDevice, + taskset.update([packages.DefaultPackages, + boot.AddVirtualConsoleGrubOutputDevice, loopback.AddRequiredCommands, loopback.Create, image.MoveImage, diff --git a/pylintrc b/pylintrc index 414f0f5..bdc99d4 100644 --- a/pylintrc +++ b/pylintrc @@ -27,7 +27,7 @@ load-plugins= # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option # multiple time. -enable=W0401,W0611 +enable=W0401,W0403,W0611 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option From d86f9e94b5f7ea36f54af05c86c767fea0fcf485 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:31:03 +0000 Subject: [PATCH 03/16] pylint W0404(reimported) --- bootstrapvz/base/fs/volume.py | 5 +++-- bootstrapvz/common/tasks/apt.py | 1 - bootstrapvz/plugins/cloud_init/__init__.py | 1 - bootstrapvz/plugins/puppet/tasks.py | 2 -- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/bootstrapvz/base/fs/volume.py b/bootstrapvz/base/fs/volume.py index d2f2013..a8e131c 100644 --- a/bootstrapvz/base/fs/volume.py +++ b/bootstrapvz/base/fs/volume.py @@ -82,7 +82,9 @@ class Volume(FSMProxy): :raises VolumeError: When a free block device cannot be found. """ import os.path + import string from bootstrapvz.common.fs import get_partitions + # Fetch information from /proc/partitions proc_partitions = get_partitions() device_name = os.path.basename(self.device_path) @@ -104,8 +106,7 @@ class Volume(FSMProxy): major=device_partition['major'], minor=device_partition['minor'], start_sec=start_sector)) - import string - import os.path + # Figure out the device letter and path for letter in string.ascii_lowercase: dev_name = 'vd' + letter diff --git a/bootstrapvz/common/tasks/apt.py b/bootstrapvz/common/tasks/apt.py index 0817b83..e7bf458 100644 --- a/bootstrapvz/common/tasks/apt.py +++ b/bootstrapvz/common/tasks/apt.py @@ -141,7 +141,6 @@ class WriteSources(Task): @classmethod def run(cls, info): if not info.source_lists.target_exists(info.manifest.system['release']): - import logging log = logging.getLogger(__name__) log.warn('No default target has been specified in the sources list, ' 'installing packages may fail') diff --git a/bootstrapvz/plugins/cloud_init/__init__.py b/bootstrapvz/plugins/cloud_init/__init__.py index 76458a8..7a4249d 100644 --- a/bootstrapvz/plugins/cloud_init/__init__.py +++ b/bootstrapvz/plugins/cloud_init/__init__.py @@ -4,7 +4,6 @@ assets = rel_path(__file__, 'assets') def validate_manifest(data, validator, error): - from bootstrapvz.common.tools import rel_path validator(data, rel_path(__file__, 'manifest-schema.yml')) diff --git a/bootstrapvz/plugins/puppet/tasks.py b/bootstrapvz/plugins/puppet/tasks.py index 70371f9..aedb312 100644 --- a/bootstrapvz/plugins/puppet/tasks.py +++ b/bootstrapvz/plugins/puppet/tasks.py @@ -19,7 +19,6 @@ class CheckRequestedDebianRelease(Task): @classmethod def run(cls, info): - from bootstrapvz.common.exceptions import TaskError if info.manifest.release not in (jessie, wheezy, stretch): msg = 'Debian {info.manifest.release} is not (yet) available in the Puppetlabs.com APT repository.' raise TaskError(msg) @@ -32,7 +31,6 @@ class CheckAssetsPath(Task): @classmethod def run(cls, info): - from bootstrapvz.common.exceptions import TaskError assets = info.manifest.plugins['puppet']['assets'] if not os.path.exists(assets): msg = 'The assets directory {assets} does not exist.'.format(assets=assets) From 149173ef629c4e8c8c4101702ae27b3e60a1a217 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:36:17 +0000 Subject: [PATCH 04/16] pylint W0622(redefined-builtin) --- bootstrapvz/plugins/puppet/tasks.py | 1 - bootstrapvz/remote/build_servers/callback.py | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/bootstrapvz/plugins/puppet/tasks.py b/bootstrapvz/plugins/puppet/tasks.py index aedb312..2607a76 100644 --- a/bootstrapvz/plugins/puppet/tasks.py +++ b/bootstrapvz/plugins/puppet/tasks.py @@ -5,7 +5,6 @@ from bootstrapvz.common.tasks import apt from bootstrapvz.common.exceptions import TaskError from bootstrapvz.common.releases import jessie, wheezy, stretch from bootstrapvz.common.tools import sed_i, log_check_call, rel_path -from __builtin__ import str ASSETS_DIR_STRETCH = rel_path(__file__, 'assets/gpg-keyrings-PC1/stretch') diff --git a/bootstrapvz/remote/build_servers/callback.py b/bootstrapvz/remote/build_servers/callback.py index 40223ba..395cebc 100644 --- a/bootstrapvz/remote/build_servers/callback.py +++ b/bootstrapvz/remote/build_servers/callback.py @@ -22,7 +22,7 @@ class CallbackServer(object): self.thread.start() return self - def __exit__(self, type, value, traceback): + def __exit__(self, exception_type, exception_value, traceback): log.debug('Shutting down callback server') self.daemon.shutdown() self.thread.join() From 8608858651c553f986624c51b2380ca949b882f0 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:39:46 +0000 Subject: [PATCH 05/16] pylint W0104(pointless-statement) --- bootstrapvz/providers/oracle/tasks/api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bootstrapvz/providers/oracle/tasks/api.py b/bootstrapvz/providers/oracle/tasks/api.py index b2bedc0..6a6c632 100644 --- a/bootstrapvz/providers/oracle/tasks/api.py +++ b/bootstrapvz/providers/oracle/tasks/api.py @@ -16,4 +16,4 @@ class Connect(Task): container=info.manifest.provider['container'], ) # Try to fetch the token, so it will fail early if the credentials are wrong - info._oracle['client'].auth_token + info._oracle['client'].auth_token # pylint: disable=pointless-statement From ce42d889cdcaa7e0c32fa58063d6c6ff9726a622 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:48:41 +0000 Subject: [PATCH 06/16] pylint W0406(import-self) --- bootstrapvz/common/releases.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bootstrapvz/common/releases.py b/bootstrapvz/common/releases.py index b6e63d1..7a6808c 100644 --- a/bootstrapvz/common/releases.py +++ b/bootstrapvz/common/releases.py @@ -58,7 +58,7 @@ def get_release(release_name): """Normalizes the release codenames This allows tasks to query for release codenames rather than 'stable', 'unstable' etc. """ - from . import releases + from . import releases # pylint: disable=import-self release = getattr(releases, release_name, None) if release is None or not isinstance(release, _Release): raise UnknownReleaseException('The release `{name}\' is unknown'.format(name=release)) From d4314c64bb8c8ed6675e3707ebd2e02159910469 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:54:37 +0000 Subject: [PATCH 07/16] pylint W0235(useless-super-delegation) --- bootstrapvz/base/log.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bootstrapvz/base/log.py b/bootstrapvz/base/log.py index 5c9a441..ea6064e 100644 --- a/bootstrapvz/base/log.py +++ b/bootstrapvz/base/log.py @@ -100,5 +100,4 @@ class FileFormatter(SourceFormatter): """Formats log statements for output to file Currently this is just a stub """ - def format(self, record): - return super(FileFormatter, self).format(record) + pass From 7bdd9bdaa3bacb414d4062ea6bb190ccae6ce609 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 06:54:54 +0000 Subject: [PATCH 08/16] add warnings to pylint --- pylintrc | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/pylintrc b/pylintrc index bdc99d4..f1d924c 100644 --- a/pylintrc +++ b/pylintrc @@ -27,12 +27,13 @@ load-plugins= # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option # multiple time. -enable=W0401,W0403,W0611 +enable=W0401,W0403,W0404,W0406,W0611,W0614 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=C0111,I0011,I0020,R0201,R0801,R0914,R1704,R1705,R1710,W,E0632,E1101,E1121,E1601,E1608,C0103,C0301,C0325,C0326,C0330,C0411,R0401 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1704,R1705,R1710 +# W0511 fixme # C0111 mssing-docstring # I0011 locally-disabled # I0020 suppressed-message @@ -44,6 +45,22 @@ disable=C0111,I0011,I0020,R0201,R0801,R0914,R1704,R1705,R1710,W,E0632,E1101,E112 # E1121(too-many-function-args) # E1601(print-statement) # E1608(old-octal-literal) +# W0102(dangerous-default-value) +# W0106(expression-not-assigned) +# W0108(unnecessary-lambda) +# W0110(deprecated-lambda) +# W0201(attribute-defined-outside-init) +# W0212(protected-access) +# W0311(bad-indentation) +# W0402(deprecated-module) +# W0612(unused-variable) +# W0613(unused-argument) +# W0621(redefined-outer-name) +# W0640(cell-var-from-loop) +# W0703(broad-except) +# W1201(logging-not-lazy) +# W1202(logging-format-interpolation) +# W1401(anomalous-backslash-in-string) # C0103(invalid-name) # C0411(wrong-import-order) # C0301(line-too-long) From 4d5732dbd7d0e6ba52a5f5461e7e3e367b1a4c6c Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 08:07:31 +0000 Subject: [PATCH 09/16] pylint R1705(no-else-return) --- bootstrapvz/base/fs/partitions/base.py | 8 +++----- bootstrapvz/base/pkg/packagelist.py | 3 +-- bootstrapvz/remote/build_servers/__init__.py | 3 ++- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/bootstrapvz/base/fs/partitions/base.py b/bootstrapvz/base/fs/partitions/base.py index 849dc20..a52a68a 100644 --- a/bootstrapvz/base/fs/partitions/base.py +++ b/bootstrapvz/base/fs/partitions/base.py @@ -52,9 +52,8 @@ class BasePartition(AbstractPartition): if self.previous is None: # Partitions are 1 indexed return 1 - else: - # Recursive call to the previous partition, walking up the chain... - return self.previous.get_index() + 1 + # Recursive call to the previous partition, walking up the chain... + return self.previous.get_index() + 1 def get_start(self): """Gets the starting byte of this partition @@ -64,8 +63,7 @@ class BasePartition(AbstractPartition): """ if self.previous is None: return Sectors(0, self.size.sector_size) - else: - return self.previous.get_end() + return self.previous.get_end() def map(self, device_path): """Maps the partition to a device_path diff --git a/bootstrapvz/base/pkg/packagelist.py b/bootstrapvz/base/pkg/packagelist.py index bd50e2b..6aafe4e 100644 --- a/bootstrapvz/base/pkg/packagelist.py +++ b/bootstrapvz/base/pkg/packagelist.py @@ -22,8 +22,7 @@ class PackageList(object): """ if self.target is None: return self.name - else: - return self.name + '/' + self.target + return self.name + '/' + self.target class Local(object): """A local package diff --git a/bootstrapvz/remote/build_servers/__init__.py b/bootstrapvz/remote/build_servers/__init__.py index 8865558..c33e38f 100644 --- a/bootstrapvz/remote/build_servers/__init__.py +++ b/bootstrapvz/remote/build_servers/__init__.py @@ -25,12 +25,13 @@ def pick_build_server(build_servers, manifest, preferences={}): for name, settings in build_servers.iteritems(): if not matches(name, settings): continue - if settings['type'] == 'local': + if settings['type'] == 'local': # pylint: disable=no-else-return from .local import LocalBuildServer return LocalBuildServer(name, settings) else: from .remote import RemoteBuildServer return RemoteBuildServer(name, settings) + raise Exception('Unable to find a build server that matches your preferences.') From 05abccda0bf104574ab82054ccd8a444d757e42c Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 08:20:13 +0000 Subject: [PATCH 10/16] pylint R1704(redefined-argument-from-local) --- bootstrapvz/common/fs/qemuvolume.py | 4 ++-- tests/__init__.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bootstrapvz/common/fs/qemuvolume.py b/bootstrapvz/common/fs/qemuvolume.py index b8c09d7..6783ec1 100644 --- a/bootstrapvz/common/fs/qemuvolume.py +++ b/bootstrapvz/common/fs/qemuvolume.py @@ -62,8 +62,8 @@ class QEMUVolume(LoopbackVolume): def _module_param(self, module, param): import os.path param_path = os.path.join('/sys/module', module, 'parameters', param) - with open(param_path) as param: - return param.read().strip() + with open(param_path) as param_file: + return param_file.read().strip() # From http://lists.gnu.org/archive/html/qemu-devel/2011-11/msg02201.html # Apparently it's not in the current qemu-nbd shipped with wheezy diff --git a/tests/__init__.py b/tests/__init__.py index cd41a18..b0fd5e2 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -4,6 +4,6 @@ def recursive_glob(path, pattern): import fnmatch import os - for path, dirnames, filenames in os.walk(path): + for root, dirnames, filenames in os.walk(path): for filename in fnmatch.filter(filenames, pattern): - yield os.path.join(path, filename) + yield os.path.join(root, filename) From 7c3dac85aa4f352c150bb2c54cddceb105be95c7 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 08:41:01 +0000 Subject: [PATCH 11/16] update pylintrc --- pylintrc | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pylintrc b/pylintrc index f1d924c..add83b5 100644 --- a/pylintrc +++ b/pylintrc @@ -32,7 +32,7 @@ enable=W0401,W0403,W0404,W0406,W0611,W0614 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1704,R1705,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme # C0111 mssing-docstring # I0011 locally-disabled @@ -70,10 +70,7 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102, # R0201(no-self-use) # R0401(cyclic-import) # R0914(too-many-locals) -# R1704(redefined-argument-from-local) -# R1705(no-else-return) # R1710(inconsistent-return-statements) -# W all warnings [REPORTS] From b180f66ef022631ba46849158940829dc0896db6 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 09:34:12 +0000 Subject: [PATCH 12/16] pylint E1101(no-member) --- bootstrapvz/common/fs/qemuvolume.py | 7 ++++++- bootstrapvz/plugins/apt_proxy/tasks.py | 3 ++- bootstrapvz/plugins/prebootstrapped/__init__.py | 3 ++- bootstrapvz/remote/server.py | 1 + pylintrc | 5 ++--- 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/bootstrapvz/common/fs/qemuvolume.py b/bootstrapvz/common/fs/qemuvolume.py index 6783ec1..e5d7eb7 100644 --- a/bootstrapvz/common/fs/qemuvolume.py +++ b/bootstrapvz/common/fs/qemuvolume.py @@ -9,7 +9,12 @@ class QEMUVolume(LoopbackVolume): def _before_create(self, e): self.image_path = e.image_path vol_size = str(self.size.bytes.get_qty_in('MiB')) + 'M' - log_check_call(['qemu-img', 'create', '-f', self.qemu_format, self.image_path, vol_size]) + log_check_call([ + 'qemu-img', + 'create', '-f', + self.qemu_format, # pylint: disable=no-member + self.image_path, + vol_size]) def _check_nbd_module(self): from bootstrapvz.base.fs.partitionmaps.none import NoPartitions diff --git a/bootstrapvz/plugins/apt_proxy/tasks.py b/bootstrapvz/plugins/apt_proxy/tasks.py index 9ce5304..e09f410 100644 --- a/bootstrapvz/plugins/apt_proxy/tasks.py +++ b/bootstrapvz/plugins/apt_proxy/tasks.py @@ -16,8 +16,9 @@ class CheckAptProxy(Task): proxy_url = 'http://{address}:{port}'.format(address=proxy_address, port=proxy_port) try: urllib2.urlopen(proxy_url, timeout=5) - except Exception as e: + except urllib2.URLError as e: # Default response from `apt-cacher-ng` + # pylint: disable=no-member if isinstance(e, urllib2.HTTPError) and e.code in [404, 406] and e.msg == 'Usage Information': pass else: diff --git a/bootstrapvz/plugins/prebootstrapped/__init__.py b/bootstrapvz/plugins/prebootstrapped/__init__.py index 364509b..8250b2f 100644 --- a/bootstrapvz/plugins/prebootstrapped/__init__.py +++ b/bootstrapvz/plugins/prebootstrapped/__init__.py @@ -10,6 +10,7 @@ from bootstrapvz.common.tasks import apt from bootstrapvz.common.tasks import bootstrap from bootstrapvz.common.tasks import filesystem from bootstrapvz.common.tasks import partitioning +import bootstrapvz.common.tasks.dpkg def validate_manifest(data, validator, error): @@ -31,7 +32,7 @@ def resolve_tasks(taskset, manifest): apt.DisableDaemonAutostart, dpkg.InitializeBootstrapFilterList, - dpkg.CreateDpkgCfg, + bootstrapvz.common.tasks.dpkg.CreateDpkgCfg, dpkg.CreateBootstrapFilterScripts, dpkg.FilterLocales, dpkg.ExcludeDocs, diff --git a/bootstrapvz/remote/server.py b/bootstrapvz/remote/server.py index 72e874e..f0db204 100644 --- a/bootstrapvz/remote/server.py +++ b/bootstrapvz/remote/server.py @@ -69,6 +69,7 @@ class Server(object): @Pyro4.expose def ping(self): if hasattr(self, 'connection_timeout'): + # pylint: disable=no-member self.connection_timeout.cancel() del self.connection_timeout return 'pong' diff --git a/pylintrc b/pylintrc index add83b5..403f987 100644 --- a/pylintrc +++ b/pylintrc @@ -32,7 +32,7 @@ enable=W0401,W0403,W0404,W0406,W0611,W0614 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme # C0111 mssing-docstring # I0011 locally-disabled @@ -41,7 +41,6 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1101,E1121,E1601,E1608,W0102, #TODO # E0632(unbalanced-tuple-unpacking) -# E1101(no-member) # E1121(too-many-function-args) # E1601(print-statement) # E1608(old-octal-literal) @@ -204,7 +203,7 @@ ignore-mixin-members=yes # List of classes names for which member attributes should not be checked # (useful for classes with attributes dynamically set). -ignored-classes=SQLObject +ignored-classes=Fysom,AbstractPartitionMap,OracleStorageAPIClient # When zope mode is activated, add a predefined set of Zope acquired attributes # to generated-members. From 23ec568d3c51d87903ed25ebb592bdc08ae9eb27 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 09:43:47 +0000 Subject: [PATCH 13/16] pylint W0703(broad-except) --- bootstrapvz/plugins/ec2_launch/tasks.py | 2 +- bootstrapvz/remote/server.py | 2 +- pylintrc | 3 +-- tests/system/providers/docker/image.py | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/bootstrapvz/plugins/ec2_launch/tasks.py b/bootstrapvz/plugins/ec2_launch/tasks.py index f7134e0..e86d899 100644 --- a/bootstrapvz/plugins/ec2_launch/tasks.py +++ b/bootstrapvz/plugins/ec2_launch/tasks.py @@ -61,7 +61,7 @@ class PrintPublicIPAddress(Task): info._ec2['instance'] = conn.describe_instances(InstanceIds=[info._ec2['instance']['InstanceId']])['Reservations'][0]['Instances'][0] logger.info('******* EC2 IP ADDRESS: %s *******' % info._ec2['instance']['PublicIpAddress']) f.write(info._ec2['instance']['PublicIpAddress']) - except Exception: + except Exception: # pylint: disable=broad-except logger.error('Could not get IP address for the instance') f.write('') diff --git a/bootstrapvz/remote/server.py b/bootstrapvz/remote/server.py index f0db204..584631f 100644 --- a/bootstrapvz/remote/server.py +++ b/bootstrapvz/remote/server.py @@ -115,7 +115,7 @@ class Server(object): try: bootstrap_info = run(manifest, debug=debug, dry_run=dry_run) queue.put(bootstrap_info) - except (Exception, KeyboardInterrupt) as e: + except (Exception, KeyboardInterrupt) as e: # pylint: disable=broad-except queue.put(e) from multiprocessing import Queue diff --git a/pylintrc b/pylintrc index 403f987..96a711d 100644 --- a/pylintrc +++ b/pylintrc @@ -32,7 +32,7 @@ enable=W0401,W0403,W0404,W0406,W0611,W0614 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W0703,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme # C0111 mssing-docstring # I0011 locally-disabled @@ -56,7 +56,6 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106, # W0613(unused-argument) # W0621(redefined-outer-name) # W0640(cell-var-from-loop) -# W0703(broad-except) # W1201(logging-not-lazy) # W1202(logging-format-interpolation) # W1401(anomalous-backslash-in-string) diff --git a/tests/system/providers/docker/image.py b/tests/system/providers/docker/image.py index af4f1f8..0d377fa 100644 --- a/tests/system/providers/docker/image.py +++ b/tests/system/providers/docker/image.py @@ -23,7 +23,7 @@ class Image(object): try: self.container.stop() self.container.destroy() - except Exception as e: + except Exception as e: # pylint: disable=broad-except log.exception(e) From 4e1a5922f7d4111258a7c258dabd75f16855b294 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Sun, 25 Feb 2018 09:57:59 +0000 Subject: [PATCH 14/16] pylint W0621(redefined-outer-name) --- bootstrapvz/common/tasks/packages.py | 1 - bootstrapvz/common/tasks/ssh.py | 1 - bootstrapvz/common/tools.py | 1 - bootstrapvz/plugins/prebootstrapped/tasks.py | 6 +++--- bootstrapvz/remote/build_servers/callback.py | 1 - pylintrc | 3 +-- tests/system/manifests/__init__.py | 4 ++-- 7 files changed, 6 insertions(+), 11 deletions(-) diff --git a/bootstrapvz/common/tasks/packages.py b/bootstrapvz/common/tasks/packages.py index fe84f9c..8051bc8 100644 --- a/bootstrapvz/common/tasks/packages.py +++ b/bootstrapvz/common/tasks/packages.py @@ -41,7 +41,6 @@ class InstallPackages(Task): @classmethod def install_remote(cls, info, remote_packages): import os - from ..tools import log_check_call from subprocess import CalledProcessError try: env = os.environ.copy() diff --git a/bootstrapvz/common/tasks/ssh.py b/bootstrapvz/common/tasks/ssh.py index 6cd5183..46addaf 100644 --- a/bootstrapvz/common/tasks/ssh.py +++ b/bootstrapvz/common/tasks/ssh.py @@ -134,6 +134,5 @@ class ShredHostkeys(Task): private = [os.path.join(info.root, 'etc/ssh', name) for name in ssh_hostkeys] public = [path + '.pub' for path in private] - from ..tools import log_check_call log_check_call(['shred', '--remove'] + [key for key in private + public if os.path.isfile(key)]) diff --git a/bootstrapvz/common/tools.py b/bootstrapvz/common/tools.py index eb55712..c14f67a 100644 --- a/bootstrapvz/common/tools.py +++ b/bootstrapvz/common/tools.py @@ -136,5 +136,4 @@ def copy_tree(from_path, to_path): def rel_path(base, path): - import os.path return os.path.normpath(os.path.join(os.path.dirname(base), path)) diff --git a/bootstrapvz/plugins/prebootstrapped/tasks.py b/bootstrapvz/plugins/prebootstrapped/tasks.py index d1f6294..85240ff 100644 --- a/bootstrapvz/plugins/prebootstrapped/tasks.py +++ b/bootstrapvz/plugins/prebootstrapped/tasks.py @@ -103,10 +103,10 @@ class CreateFromFolder(Task): info.volume.fsm.current = 'attached' -def set_fs_states(volume): - volume.fsm.current = 'detached' +def set_fs_states(vol): + vol.fsm.current = 'detached' - p_map = volume.partition_map + p_map = vol.partition_map from bootstrapvz.base.fs.partitionmaps.none import NoPartitions if not isinstance(p_map, NoPartitions): p_map.fsm.current = 'unmapped' diff --git a/bootstrapvz/remote/build_servers/callback.py b/bootstrapvz/remote/build_servers/callback.py index 395cebc..35d5ab4 100644 --- a/bootstrapvz/remote/build_servers/callback.py +++ b/bootstrapvz/remote/build_servers/callback.py @@ -31,7 +31,6 @@ class CallbackServer(object): def handle_log(self, pickled_record): import pickle record = pickle.loads(pickled_record) - log = logging.getLogger() record.extra = getattr(record, 'extra', {}) record.extra['source'] = 'remote' log.handle(record) diff --git a/pylintrc b/pylintrc index 96a711d..11e90bc 100644 --- a/pylintrc +++ b/pylintrc @@ -32,7 +32,7 @@ enable=W0401,W0403,W0404,W0406,W0611,W0614 # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0621,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme # C0111 mssing-docstring # I0011 locally-disabled @@ -54,7 +54,6 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106, # W0402(deprecated-module) # W0612(unused-variable) # W0613(unused-argument) -# W0621(redefined-outer-name) # W0640(cell-var-from-loop) # W1201(logging-not-lazy) # W1202(logging-format-interpolation) diff --git a/tests/system/manifests/__init__.py b/tests/system/manifests/__init__.py index 26b205d..f922bff 100644 --- a/tests/system/manifests/__init__.py +++ b/tests/system/manifests/__init__.py @@ -39,8 +39,8 @@ def merge_dicts(*args): copy = set([clone(value) for value in obj]) return copy - def merge(a, b, path=[]): - for key in b: + def merge(a, b, path=[]): # pylint: disable=redefined-outer-name + for key in b: # pylint: disable=redefined-outer-name if key in a: if isinstance(a[key], dict) and isinstance(b[key], dict): merge(a[key], b[key], path + [str(key)]) From 43e54d26cc94b46075bb8b7c6f049abf6b0286f6 Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Mon, 9 Apr 2018 22:13:21 -0700 Subject: [PATCH 15/16] pylint E1601(print-statement) --- bootstrapvz/common/tools.py | 3 ++- bootstrapvz/plugins/cloud_init/tasks.py | 6 ++++-- bootstrapvz/plugins/ntp/tasks.py | 6 ++++-- pylintrc | 7 +++---- tests/system/docker_tests.py | 2 +- tests/system/ec2_ebs_hvm_tests.py | 2 ++ tests/system/ec2_ebs_pvm_tests.py | 2 ++ tests/system/ec2_s3_pvm_tests.py | 2 ++ tests/system/virtualbox_tests.py | 2 ++ 9 files changed, 22 insertions(+), 10 deletions(-) diff --git a/bootstrapvz/common/tools.py b/bootstrapvz/common/tools.py index c14f67a..9fdceb8 100644 --- a/bootstrapvz/common/tools.py +++ b/bootstrapvz/common/tools.py @@ -1,3 +1,4 @@ +from __future__ import print_function import os @@ -82,7 +83,7 @@ def inline_replace(file_path, pattern, subst): for line in fileinput.input(files=file_path, inplace=True): (replacement, count) = re.subn(pattern, subst, line) replacement_count += count - print replacement, + print(replacement, end=' ') return replacement_count diff --git a/bootstrapvz/plugins/cloud_init/tasks.py b/bootstrapvz/plugins/cloud_init/tasks.py index 57ffa06..85f0d1c 100644 --- a/bootstrapvz/plugins/cloud_init/tasks.py +++ b/bootstrapvz/plugins/cloud_init/tasks.py @@ -1,3 +1,5 @@ +from __future__ import print_function + from bootstrapvz.base import Task from bootstrapvz.common import phases from bootstrapvz.common.tools import log_check_call @@ -98,7 +100,7 @@ class DisableModules(Task): import fileinput for line in fileinput.input(files=cloud_cfg, inplace=True): if not regex.match(line): - print line, + print(line, end=' ') class EnableModules(Task): @@ -122,7 +124,7 @@ class EnableModules(Task): count = count + 1 if int(entry['position']) == int(count): print(" - %s" % entry['module']) - print line, + print(line, end=' ') class SetCloudInitMountOptions(Task): diff --git a/bootstrapvz/plugins/ntp/tasks.py b/bootstrapvz/plugins/ntp/tasks.py index 126ba9f..5e8e674 100644 --- a/bootstrapvz/plugins/ntp/tasks.py +++ b/bootstrapvz/plugins/ntp/tasks.py @@ -1,3 +1,5 @@ +from __future__ import print_function + from bootstrapvz.base import Task from bootstrapvz.common import phases @@ -27,6 +29,6 @@ class SetNtpServers(Task): # Will write all the specified servers on the first match, then supress all other default servers if re.match(debian_ntp_server, line): while servers: - print 'server {server_address} iburst'.format(server_address=servers.pop(0)) + print('server {server_address} iburst'.format(server_address=servers.pop(0))) else: - print line, + print(line, end=' ') diff --git a/pylintrc b/pylintrc index 11e90bc..f219b38 100644 --- a/pylintrc +++ b/pylintrc @@ -27,14 +27,14 @@ load-plugins= # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option # multiple time. -enable=W0401,W0403,W0404,W0406,W0611,W0614 +enable= # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme -# C0111 mssing-docstring +# C0111 missing-docstring # I0011 locally-disabled # I0020 suppressed-message # R0801 duplicate-code @@ -42,7 +42,6 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1601,E1608,W0102,W0106, #TODO # E0632(unbalanced-tuple-unpacking) # E1121(too-many-function-args) -# E1601(print-statement) # E1608(old-octal-literal) # W0102(dangerous-default-value) # W0106(expression-not-assigned) diff --git a/tests/system/docker_tests.py b/tests/system/docker_tests.py index 9aa30dd..c56c279 100644 --- a/tests/system/docker_tests.py +++ b/tests/system/docker_tests.py @@ -26,4 +26,4 @@ def test_stable(): custom_partials = [partials['docker']] manifest_data = merge_manifest_data(std_partials, custom_partials) with boot_manifest(manifest_data) as instance: - print('\n'.join(instance.run(['echo', 'test']))) + print('\n'.join(instance.run(['echo', 'test']))) # pylint: disable=print-statement diff --git a/tests/system/ec2_ebs_hvm_tests.py b/tests/system/ec2_ebs_hvm_tests.py index ebd2c8e..e041ac0 100644 --- a/tests/system/ec2_ebs_hvm_tests.py +++ b/tests/system/ec2_ebs_hvm_tests.py @@ -1,6 +1,8 @@ from .manifests import merge_manifest_data from .tools import boot_manifest +# pylint: disable=print-statement + partials = {'ebs_hvm': ''' provider: name: ec2 diff --git a/tests/system/ec2_ebs_pvm_tests.py b/tests/system/ec2_ebs_pvm_tests.py index 56e2d37..9ad458e 100644 --- a/tests/system/ec2_ebs_pvm_tests.py +++ b/tests/system/ec2_ebs_pvm_tests.py @@ -1,6 +1,8 @@ from .manifests import merge_manifest_data from .tools import boot_manifest +# pylint: disable=print-statement + partials = {'ebs_pvm': ''' provider: name: ec2 diff --git a/tests/system/ec2_s3_pvm_tests.py b/tests/system/ec2_s3_pvm_tests.py index 7389123..fdb3f10 100644 --- a/tests/system/ec2_s3_pvm_tests.py +++ b/tests/system/ec2_s3_pvm_tests.py @@ -2,6 +2,8 @@ from .manifests import merge_manifest_data from .tools import boot_manifest import random +# pylint: disable=print-statement + s3_bucket_name = '{id:x}'.format(id=random.randrange(16 ** 16)) partials = {'s3_pvm': ''' provider: diff --git a/tests/system/virtualbox_tests.py b/tests/system/virtualbox_tests.py index 87cf6b4..f1ed5e7 100644 --- a/tests/system/virtualbox_tests.py +++ b/tests/system/virtualbox_tests.py @@ -1,6 +1,8 @@ from .manifests import merge_manifest_data from .tools import boot_manifest +# pylint: disable=print-statement + partials = {'vdi': '{provider: {name: virtualbox}, volume: {backing: vdi}}', 'vmdk': '{provider: {name: virtualbox}, volume: {backing: vmdk}}', } From 1ec736038c7024214f1c60dfdb9a8d628707dbba Mon Sep 17 00:00:00 2001 From: Carlos Meza Date: Mon, 9 Apr 2018 22:25:58 -0700 Subject: [PATCH 16/16] pylint E1608(old-octal-literal) --- bootstrapvz/common/tasks/apt.py | 4 ++-- bootstrapvz/common/tasks/ssh.py | 2 +- bootstrapvz/plugins/admin_user/tasks.py | 2 +- bootstrapvz/plugins/cloud_init/tasks.py | 2 +- bootstrapvz/plugins/docker_daemon/tasks.py | 2 +- bootstrapvz/plugins/expand_root/tasks.py | 2 +- bootstrapvz/plugins/minimize_size/tasks/dpkg.py | 2 +- bootstrapvz/plugins/minimize_size/tasks/shrink.py | 2 +- bootstrapvz/providers/ec2/tasks/boot.py | 2 +- bootstrapvz/providers/ec2/tasks/network.py | 4 ++-- bootstrapvz/providers/ec2/tasks/tuning.py | 2 +- bootstrapvz/providers/kvm/tasks/boot.py | 2 +- pylintrc | 3 +-- 13 files changed, 15 insertions(+), 16 deletions(-) diff --git a/bootstrapvz/common/tasks/apt.py b/bootstrapvz/common/tasks/apt.py index e7bf458..1ef2977 100644 --- a/bootstrapvz/common/tasks/apt.py +++ b/bootstrapvz/common/tasks/apt.py @@ -180,12 +180,12 @@ class DisableDaemonAutostart(Task): with open(rc_policy_path, 'w') as rc_policy: rc_policy.write(('#!/bin/sh\n' 'exit 101')) - os.chmod(rc_policy_path, 0755) + os.chmod(rc_policy_path, 0o755) initictl_path = os.path.join(info.root, 'sbin/initctl') with open(initictl_path, 'w') as initctl: initctl.write(('#!/bin/sh\n' 'exit 0')) - os.chmod(initictl_path, 0755) + os.chmod(initictl_path, 0o755) class AptUpdate(Task): diff --git a/bootstrapvz/common/tasks/ssh.py b/bootstrapvz/common/tasks/ssh.py index 46addaf..05c7358 100644 --- a/bootstrapvz/common/tasks/ssh.py +++ b/bootstrapvz/common/tasks/ssh.py @@ -49,7 +49,7 @@ class AddSSHKeyGeneration(Task): shutil.copy(ssh_keygen_host_service, ssh_keygen_host_service_dest) shutil.copy(ssh_keygen_host_script, ssh_keygen_host_script_dest) - os.chmod(ssh_keygen_host_script_dest, 0750) + os.chmod(ssh_keygen_host_script_dest, 0o750) # Enable systemd service log_check_call(['chroot', info.root, 'systemctl', 'enable', 'ssh-generate-hostkeys.service']) diff --git a/bootstrapvz/plugins/admin_user/tasks.py b/bootstrapvz/plugins/admin_user/tasks.py index 9ba33bf..a1bb302 100644 --- a/bootstrapvz/plugins/admin_user/tasks.py +++ b/bootstrapvz/plugins/admin_user/tasks.py @@ -112,7 +112,7 @@ class AdminUserPublicKey(Task): # Create the ssh dir if nobody has created it yet if not os.path.exists(ssh_dir_abs): - os.mkdir(ssh_dir_abs, 0700) + os.mkdir(ssh_dir_abs, 0o700) # Create (or append to) the authorized keys file (and chmod u=rw,go=) import stat diff --git a/bootstrapvz/plugins/cloud_init/tasks.py b/bootstrapvz/plugins/cloud_init/tasks.py index 85f0d1c..9504cf9 100644 --- a/bootstrapvz/plugins/cloud_init/tasks.py +++ b/bootstrapvz/plugins/cloud_init/tasks.py @@ -136,4 +136,4 @@ class SetCloudInitMountOptions(Task): cloud_init_src = os.path.join(assets, 'cloud-init/debian_cloud.cfg') cloud_init_dst = os.path.join(info.root, 'etc/cloud/cloud.cfg.d/01_debian_cloud.cfg') copy(cloud_init_src, cloud_init_dst) - os.chmod(cloud_init_dst, 0644) + os.chmod(cloud_init_dst, 0o644) diff --git a/bootstrapvz/plugins/docker_daemon/tasks.py b/bootstrapvz/plugins/docker_daemon/tasks.py index bdbfc1b..f207794 100644 --- a/bootstrapvz/plugins/docker_daemon/tasks.py +++ b/bootstrapvz/plugins/docker_daemon/tasks.py @@ -38,7 +38,7 @@ class AddDockerBinary(Task): docker_url += 'latest' bin_docker = os.path.join(info.root, 'usr/bin/docker') log_check_call(['wget', '-O', bin_docker, docker_url]) - os.chmod(bin_docker, 0755) + os.chmod(bin_docker, 0o755) class AddDockerInit(Task): diff --git a/bootstrapvz/plugins/expand_root/tasks.py b/bootstrapvz/plugins/expand_root/tasks.py index ede2acf..08ab937 100644 --- a/bootstrapvz/plugins/expand_root/tasks.py +++ b/bootstrapvz/plugins/expand_root/tasks.py @@ -46,7 +46,7 @@ class InstallExpandRootScripts(Task): # Copy files over shutil.copy(expand_root_script, expand_root_script_dest) - os.chmod(expand_root_script_dest, 0750) + os.chmod(expand_root_script_dest, 0o750) shutil.copy(expand_root_service, expand_root_service_dest) # Expand out options into expand-root script. diff --git a/bootstrapvz/plugins/minimize_size/tasks/dpkg.py b/bootstrapvz/plugins/minimize_size/tasks/dpkg.py index 73d2aa6..48b2f3e 100644 --- a/bootstrapvz/plugins/minimize_size/tasks/dpkg.py +++ b/bootstrapvz/plugins/minimize_size/tasks/dpkg.py @@ -48,7 +48,7 @@ class CreateBootstrapFilterScripts(Task): include_list = '\n'.join(map(lambda p: '.' + p, filter_lists['include'])) sed_i(filter_script, r'EXCLUDE_PATTERN', exclude_list) sed_i(filter_script, r'INCLUDE_PATHS', include_list) - os.chmod(filter_script, 0755) + os.chmod(filter_script, 0o755) info.bootstrap_script = bootstrap_script info._minimize_size['filter_script'] = filter_script diff --git a/bootstrapvz/plugins/minimize_size/tasks/shrink.py b/bootstrapvz/plugins/minimize_size/tasks/shrink.py index de1fc0c..c58eccd 100644 --- a/bootstrapvz/plugins/minimize_size/tasks/shrink.py +++ b/bootstrapvz/plugins/minimize_size/tasks/shrink.py @@ -57,7 +57,7 @@ class ShrinkVolumeWithVDiskManager(Task): @classmethod def run(cls, info): - perm = os.stat(info.volume.image_path).st_mode & 0777 + perm = os.stat(info.volume.image_path).st_mode & 0o777 log_check_call(['/usr/bin/vmware-vdiskmanager', '-k', info.volume.image_path]) os.chmod(info.volume.image_path, perm) diff --git a/bootstrapvz/providers/ec2/tasks/boot.py b/bootstrapvz/providers/ec2/tasks/boot.py index 7163fb8..15426a5 100644 --- a/bootstrapvz/providers/ec2/tasks/boot.py +++ b/bootstrapvz/providers/ec2/tasks/boot.py @@ -44,7 +44,7 @@ class CreatePVGrubCustomRule(Task): script_src = os.path.join(assets, 'grub.d/40_custom') script_dst = os.path.join(info.root, 'etc/grub.d/40_custom') copy(script_src, script_dst) - os.chmod(script_dst, 0755) + os.chmod(script_dst, 0o755) from bootstrapvz.base.fs.partitionmaps.none import NoPartitions if not isinstance(info.volume.partition_map, NoPartitions): diff --git a/bootstrapvz/providers/ec2/tasks/network.py b/bootstrapvz/providers/ec2/tasks/network.py index ae05f9a..eb8894f 100644 --- a/bootstrapvz/providers/ec2/tasks/network.py +++ b/bootstrapvz/providers/ec2/tasks/network.py @@ -56,8 +56,8 @@ class InstallNetworkingUDevHotplugAndDHCPSubinterface(Task): os.path.join(script_dst, 'udev/rules.d/53-ec2-network-interfaces.rules')) os.chmod(os.path.join(script_dst, 'udev/rules.d/53-ec2-network-interfaces.rules'), rwxr_xr_x) - os.mkdir(os.path.join(script_dst, 'sysconfig'), 0755) - os.mkdir(os.path.join(script_dst, 'sysconfig/network-scripts'), 0755) + os.mkdir(os.path.join(script_dst, 'sysconfig'), 0o755) + os.mkdir(os.path.join(script_dst, 'sysconfig/network-scripts'), 0o755) copy(os.path.join(script_src, 'ec2net.hotplug'), os.path.join(script_dst, 'sysconfig/network-scripts/ec2net.hotplug')) os.chmod(os.path.join(script_dst, 'sysconfig/network-scripts/ec2net.hotplug'), rwxr_xr_x) diff --git a/bootstrapvz/providers/ec2/tasks/tuning.py b/bootstrapvz/providers/ec2/tasks/tuning.py index ddfa1c9..8a007ae 100644 --- a/bootstrapvz/providers/ec2/tasks/tuning.py +++ b/bootstrapvz/providers/ec2/tasks/tuning.py @@ -14,7 +14,7 @@ class TuneSystem(Task): sysctl_src = os.path.join(assets, 'sysctl.d/tuning.conf') sysctl_dst = os.path.join(info.root, 'etc/sysctl.d/01_ec2.conf') copy(sysctl_src, sysctl_dst) - os.chmod(sysctl_dst, 0644) + os.chmod(sysctl_dst, 0o644) class BlackListModules(Task): diff --git a/bootstrapvz/providers/kvm/tasks/boot.py b/bootstrapvz/providers/kvm/tasks/boot.py index 123d2e3..6064580 100644 --- a/bootstrapvz/providers/kvm/tasks/boot.py +++ b/bootstrapvz/providers/kvm/tasks/boot.py @@ -39,5 +39,5 @@ class SetSystemdTTYVTDisallocate(Task): src = os.path.join(assets, 'noclear.conf') dst_dir = os.path.join(info.root, 'etc/systemd/system/getty@tty1.service.d') dst = os.path.join(dst_dir, 'noclear.conf') - os.mkdir(dst_dir, 0755) + os.mkdir(dst_dir, 0o755) copy(src, dst) diff --git a/pylintrc b/pylintrc index f219b38..3177adf 100644 --- a/pylintrc +++ b/pylintrc @@ -32,7 +32,7 @@ enable= # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifier separated by comma (,) or put this option # multiple time. -disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1608,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 +disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,W0102,W0106,W0108,W0110,W0201,W0212,W0311,W0402,W0612,W0613,W0640,W1201,W1202,W1401,C0103,C0301,C0325,C0326,C0330,C0411,R0401,R0914,R1710 # W0511 fixme # C0111 missing-docstring # I0011 locally-disabled @@ -42,7 +42,6 @@ disable=W0511,C0111,I0011,I0020,R0201,R0801,E0632,E1121,E1608,W0102,W0106,W0108, #TODO # E0632(unbalanced-tuple-unpacking) # E1121(too-many-function-args) -# E1608(old-octal-literal) # W0102(dangerous-default-value) # W0106(expression-not-assigned) # W0108(unnecessary-lambda)