Permalink
Switch branches/tags
2503 BuildVagrantBasebox_FLOC-2494 FLOC-2690_catchup_with_master FLOC-3712-do-not-overwrite-cluster-crt FLOC-3725_OfflineSlaves FLOC-4031-refactor-cluster-and-benchmark-options FLOC-4124-acceptance-eliot-to-stdout FLOC-4548-sql-configuration FLOC-4551-flocker-control-failover-tests acceptance-jobs-junit-FLOC3810 acceptance-tests-artifacts-FLOC-3799 acceptance-tests-prep-for-node-shutdown-FLOC-3983 acceptance-tests-use-tty-FLOC-4313 acceptance_tests_changes accurate-device-path-FLOC-3010 accurate-device-path-lab add-flocker-volumes-to-cluster add-rackspace-15.04-to-client-builders-FLOC-2190 add-rhel-documentation-FLOC-4255 add-snapshot-opts add-volume-status-FLOC-4453 add_cronie_jobs alternative-content-reuse always-restart-systemd-services-FLOC-2154 amp-logging amp-toolong-FLOC-3099 apply-port-changes-353 arch-docs-orchestration-71021756 avoid-broken-docker-FLOC-1272 aws-HACKS aws-tty bash-for-docker-install-FLOC-3013 benchmark-docker-api-FLOC-4511 benchmark-fixes benchmark-with-exposed-ports benchmarking-integration-branch-of-jp-for-richard benchmarking-throw-leftovers-away-FLOC-3966 benchmarks-jenkins benchmarks-wo-container-agent better-API-names-FLOC-1189 big-benchmark-integration-branch boto-config-FLOC-2028 branch-by-abstraction-FLOC-4276 break_profiles_for_debugging_demo broken-virsh-tests build-all-flocker-jobs-on-medium-instances-FLOC-4167 build-vagrant-destroy-unconditionally-FLOC-1135 buildslave-path-FLOC-1597 ca-cluster-uuid-FLOC-1785 cache-pclass-hash-test-bleh-moshez cache-pclass-hash-test-bleh cache-pclass-hash-test ceph-driver ceph changes_between_BB_jenkins_FLOC-3384 choose-backend-FLOC-1741 choose-backend-FLOC-1791 ci-homebrew-FLOC-1206 cinder-detach-failure-FLOC-3736 cinder-overlimit-FLOC-2227 cinder-transient-states-unordered clean-acceptance-nodes-faster-FLOC-1168 cleanup-s3-after-cloudformation-floc-4181 cli-eliot-logs-FLOC-1724 cluster-tools-FLOC-3128 collapse-FLOC-2094 colorise_logs compute-instance-id conch-acceptance config-indexupdate-FLOC-3360 configuration-plugins-FLOC-4547 consul-configuration-FLOC-4478 container-command-line-FLOC-1711 containerized-handoff-coreos containerized-handoff continue-on-volume-errors-FLOC-2643 control-service-backpressure-FLOC-3140 convergence-error-logging-FLOC-1357 cust0-cinder-timeout-and-fix-logging cust0-testing-2015-09-30-coalesce-reboot-restart data-focused-docker-clustering-253 dataset-bind-mount-layer-protects-FLOC-3822 dataset-timeout dataset_path_security_FLOC-3254 debug-slow-loop debugging deployer-cache-FLOC-2086 deployment-namespacing-737 design-for-leases-in-container-agent-FLOC-3207 design-for-plugin-based-container-agent-FLOC-3207 destroy-container-FLOC-3262 devstack-acceptance-test-runner-FLOC-3017 devstack-vagrant-FLOC-1236 disable-output-validation disconnnect-datasets-from-containers-FLOC-2163 do-some-logging-FLOC-1317 docker-1.8.1-functional-FLOC-2902 docker-acceptance-failure-FLOC-2977 docker-image-flocker-docker-plugin-FLOC-4540 docker-plugin-test-FLOC-2977 docker-py-FLOC-1879 docker-rm-FLOC-4377 docker-volume-rm-FLOC-4377 docker-volume-status-FLOC-4453 docs-links-FLOC-1310 dont_build_jobs_for_every_branch downgrade_pip_FLOC-2690 easier-development-vm easy-req-spike ebs-check-attachment-state-FLOC-3686 ensure-attached-device-FLOC-2021 ephemeral-node-state-identity-FLOC-3261 etcd-persistency-LABS-105 fail-skips-FLOC-1064 fail_on_traceback failover-acceptance-test-FLOC-3739 faster-tox fix-compute-instance-id-on-ubuntu-rackspace-FLOC-3358 fix-docker-add-with-environment-FLOC-1194 fix-docker-client-test-FLOC-3742 fix-mac-docker fix-openstack-logging-FLOC-2259 fix-tox-root-FLOC-2270 fix-vagrant-silliness flocker-acceptance-tests-env-FLOC-1931 flocker-cli-homebrew-rb-FLOC-1464 flocker-cli-stub-FLOC-1463 flocker-labsdoc-FLOC-2032 flocker-lite flocker-manage-dataset-blockdevice-mapping-FLOC-3219 flocker-provisioner-FLOC-4320 flongle-profiles-acceptance-FLOC-3272 functional-testing-configuration gce-benchmarking gce-blockdevice-threadsafe-FLOC-4309-2 gce-blockdevice-threadsafe-FLOC-4309-3 gce-plus-speedups gce-staging-branch-FLOC-4275 getting-started-layout-FLOC-1167 hacks-debugging-stdin-race in-process-acceptance increase-mewert-again-FLOC-4363 increase-timeouts-again-again-FLOC-4363 install-and-docs-FLOC-2539 install-kubernetes-FLOC-4514 install-kubernetes-flocker-plugin-FLOC-4534 integrate-3077-and-3199 intermittent-test-failure-940 investigate-docker-keyboardinterrupt-FLOC-3933 jenkins_job_config_downgrade_docker_FLOC-2690 jon-pypy-lab jp-experiment-run_trial-config keep-insecure-key kubernetes-1.5-docs labs-titlecase-FLOC-3338 leases-prototype libzfs_core-cffi-731 list-volumes-904 log-info-393 logging-caching-integration loop-back-testing make-flocker-fast-ish-FLOC-4317 make-flocker-services-depend-on-network-FLOC-2136 manage-dataset-blockdevice-mapping-FLOC-3219 master mewert-aws-logging-test mewert-diff-attempt-implementation mewert-diff-attempt-plus-node-map mewert-diff-attempt mewert-hacky-client-mods mewert-hash-pyrsistent mewert-last-day-with-pyrsistent mewert-last-week mewert-profiles-full mewert_add_set_verification_test michael-edits mongo-acceptance-flaky-FLOC-3501 mongo-docker-image-383 monitoring-stuff more-acceptance-logging more-cleanup-FLOC-3572 move-configure+upgrade-docker-DO_NOT_MERGE move-it-around move-osx-job-to-vagrant-take-2 network-simulator new-docs-theme-FLOC-1166 new-vagrant-FLOC-1244 new_debug_environment_FLOC-2503 new_debug_environment_FLOC-2513 node_uuid nsenter-mount objgraph-control ongoing-doc-updates-FLOC-561 openstack-log-FLOC-2295 openstack-resize-FLOC-1484 pants pin-everything-in-master-FLOC-2516 profile_metadata prototype-remotefs-3847 provision-RHEL-acceptance-env-FLOC-4312 provision-cli-FLOC-1635 public-ips-FLOC-2137 pylint-redefined-outer pypy-build-FLOC-3131 pypy-control-FLOC-3131 pythonexample-doc-FLOC-2087 pyzfs-FLOC-2683 rebase-master-no-agent-yaml-FLOC-2210 reduce-api-calls-FLOC-3178 refactor-create-node-FLOC-4265 register-at-create release-maintenance/flocker-0.4.0/addAPIheaders-FLOC-1867 release-maintenance/flocker-1.0.0/blockdevicedeployer-upgrade-old-filesystems-FLOC-2376 release-maintenance/flocker-1.0.0/deployment-config-FLOC-2399 release-maintenance/flocker-1.0.0/flocker-deploy-certs-FLOC-2398 release-maintenance/flocker-1.0.0pre1/openstack-FLOC-2257 release-maintenance/flocker-1.0.1/fix-dataset-logging-FLOC-2531 release-maintenance/flocker-1.0.1/skip-conch-tests-FLOC-2576 release-maintenance/flocker-1.15.0/segment-docs-FLOC-4254 release-maintenance/flocker-1.15.0/swappiness-for-real-FLOC-4530 release-notes-warning-FLOC-2300 release/flocker-0.3.1 release/flocker-0.3.2 release/flocker-0.3.3dev5 release/flocker-0.3.3dev6 release/flocker-0.3.3dev7 release/flocker-0.3.3dev8 release/flocker-0.4.0pre1 release/flocker-0.4.0 release/flocker-0.4.1dev2 release/flocker-1.0.0+doc1 release/flocker-1.0.0pre1 release/flocker-1.0.0 release/flocker-1.0.1 release/flocker-1.0.2pre1 release/flocker-1.0.2 release/flocker-1.0.3pre1 release/flocker-1.0.3 release/flocker-1.1.0dev1 release/flocker-1.1.0.dev3 release/flocker-1.1.0rc1 release/flocker-1.1.0 release/flocker-1.2.0 release/flocker-1.3.0 release/flocker-1.3.1 release/flocker-1.4.0.dev1 release/flocker-1.4.0.dev2 release/flocker-1.4.0 release/flocker-1.5.0 release/flocker-1.6.0 release/flocker-1.6.1 release/flocker-1.7.0 release/flocker-1.7.1 release/flocker-1.7.2 release/flocker-1.8 release/flocker-1.9.0.dev1 release/flocker-1.9.0 release/flocker-1.10.1 release/flocker-1.10.2.post1 release/flocker-1.10.2 release/flocker-1.10.3 release/flocker-1.11.0 release/flocker-1.12.0 release/flocker-1.13.0 release/flocker-1.14.0 release/flocker-1.15.0 remove-container-api-FLOC-4505 remove-deprecated-apply_changes-FLOC-3864 remove-flaky-decorators-FLOC-3766 remove_unused_var renamed_jobs_back_to_long_names reorg-integrations-FLOC-3718 reorganize-serialization-helpers retry-all revert-2182-add-favicon-FLOC-2390 revert-2289-revert-2270-FLOC-3596-add-retries-to-jenkins s3-packages-FLOC-1716 separate-container-discovery-FLOC-1542 set-docker-client-timeout-FLOC-4183 setup-cluster-logging shrink_jobname_lenght simplify-state-changes-932 slow-container-startup-FLOC-4468 some-times-jenkins-does-not-build-prs-FLOC-3635 split-fs-spike-FLOC-1576 staging-artifacts-FLOC-1843 state-change-acceptance-tests-FLOC-267 storage-profiles switch-restartpolicy-pclass-FLOC-2501 switch-to-dev-bucket-FLOC-4000 tabs-using-FLOC-2764 teardown-cluster-FLOC-3981 tern-prototype test-detach-volume-FLOC-2540 test-docker-plugin-bug test-jenkins-notifications test_data.set_move-FLOC-3341 test_j tmp_FLOC-2690 top-level-dataset-info-FLOC-1513 tp-ceph travis-acceptance-tests-aws-FLOC-4541 twisted-152-FLOC-1918 ubuntu-15.04-FLOC-1989 ubuntu-1604-release-process-FLOC-4475 ubuntu-docker-upstream unexpected_device_FLOC-3578 update-packages-spike update-pyrsistent-FLOC-4353 update-release-process-FLOC-2894 upgrade-docker-py-FLOC-2029 use-persistent-connections-benchmarking use_caching_platform use_different_merge_strategy use_docker_fpm_img use_macros_always user-stories-roadmap-236 usingAPI-withGo-FLOC-1859 usingAPI-withPython-FLOC-1857 usingAPI-withPython-FLOC-2087 usingAPI-withcURL-FLOC-1858 vagrant-install vagrant-keyerror-FLOC-2113 vagrant-test-deleteme vagrant+new-zfs-DO_NOT_MERGE verify-released-documentation-version-FLOC-4199 volume-actions-368 volume-hub-benchmarking-dogfooding volume-manager-71231014 volume-manager-model-prototype volume-state-monitoring-FLOC-3957 volumes-from-snapshots wait-before-provisioning-FLOC-1842 wait-for-container-to-stop-FLOC-2488 wakeup-loop-if-changes-matter-mewert-add windows-tutorial-333 xenial-acceptance-tests-pyrsistent-fixes zfs-on-coreos-tutorial-667-rebase zfs-on-coreos-tutorial-667 zfs-quotas-729
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
54 lines (42 sloc) 1.79 KB
# Copyright ClusterHQ Inc. See LICENSE file for details.
"""
Shared flocker components.
:var bitmath.GiB RACKSPACE_MINIMUM_VOLUME_SIZE: The minimum size allowed for a
Cinder volume on Rackspace Public Cloud.
:var bitmath.GiB DEVICEMAPPER_LOOPBACK_SIZE: The default size of the loopback
device used by the Docker devicemapper storage driver.
"""
from bitmath import GiB as _GiB
from ._ipc import INode, FakeNode, ProcessNode
from ._defer import gather_deferreds
from ._thread import auto_threaded
from ._filepath import make_directory, make_file, temporary_directory
from ._interface import (
interface_decorator, provides, validate_signature_against_kwargs,
InvalidSignature,
)
from ._net import get_all_ips, ipaddress_from_string
from ._retry import (
loop_until, timeout, poll_until, retry_failure, retry_effect_with_timeout,
get_default_retry_steps,
retry_if, decorate_methods, with_retry,
)
from .version import parse_version, UnparseableVersion
__all__ = [
'INode', 'FakeNode', 'ProcessNode', 'gather_deferreds',
'auto_threaded', 'interface_decorator', 'provides',
'validate_signature_against_kwargs', 'InvalidSignature', 'get_all_ips',
'ipaddress_from_string', 'loop_until', 'timeout', 'retry_failure',
'poll_until', 'retry_effect_with_timeout',
'decorate_methods',
'get_default_retry_steps', 'retry_if', 'with_retry',
'parse_version', 'UnparseableVersion',
'RACKSPACE_MINIMUM_VOLUME_SIZE',
'DEVICEMAPPER_LOOPBACK_SIZE',
'make_directory', 'make_file', 'temporary_directory'
]
# This is currently set to the minimum size for a SATA based Rackspace Cloud
# Block Storage volume. See:
# * http://www.rackspace.com/knowledge_center/product-faq/cloud-block-storage
RACKSPACE_MINIMUM_VOLUME_SIZE = _GiB(75)
DEVICEMAPPER_LOOPBACK_SIZE = _GiB(100)