summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.coveragerc2
-rw-r--r--ceilometer/hacking/checks.py4
-rw-r--r--ceilometer/openstack/__init__.py0
-rw-r--r--ceilometer/openstack/common/__init__.py0
-rw-r--r--ceilometer/openstack/common/_i18n.py45
-rw-r--r--ceilometer/openstack/common/fileutils.py149
-rw-r--r--ceilometer/tests/agent/agentbase.py2
-rw-r--r--ceilometer/tests/meter/test_notifications.py2
-rw-r--r--ceilometer/tests/test_bin.py2
-rw-r--r--ceilometer/tests/test_hacking.py3
-rw-r--r--ceilometer/tests/test_notification.py2
-rw-r--r--openstack-common.conf7
-rwxr-xr-xtools/lintstack.py4
-rw-r--r--tox.ini2
14 files changed, 7 insertions, 217 deletions
diff --git a/.coveragerc b/.coveragerc
index 964f6679..780f06f5 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -1,7 +1,7 @@
[run]
branch = True
source = ceilometer
-omit = ceilometer/tests/*, ceilometer/openstack/common/*
+omit = ceilometer/tests/*
[report]
ignore-errors = True
diff --git a/ceilometer/hacking/checks.py b/ceilometer/hacking/checks.py
index d09bc9b9..d04058a3 100644
--- a/ceilometer/hacking/checks.py
+++ b/ceilometer/hacking/checks.py
@@ -36,10 +36,6 @@ oslo_namespace_imports = re.compile(
def check_oslo_namespace_imports(logical_line, physical_line, filename):
- # ignore openstack.common since they are not maintained by us
- if 'ceilometer/openstack/common/' in filename:
- return
-
if re.match(oslo_namespace_imports, logical_line):
msg = ("C300: '%s' must be used instead of '%s'." % (
logical_line.replace('oslo.', 'oslo_'),
diff --git a/ceilometer/openstack/__init__.py b/ceilometer/openstack/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/ceilometer/openstack/__init__.py
+++ /dev/null
diff --git a/ceilometer/openstack/common/__init__.py b/ceilometer/openstack/common/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/ceilometer/openstack/common/__init__.py
+++ /dev/null
diff --git a/ceilometer/openstack/common/_i18n.py b/ceilometer/openstack/common/_i18n.py
deleted file mode 100644
index 09b1152b..00000000
--- a/ceilometer/openstack/common/_i18n.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-"""oslo.i18n integration module.
-
-See http://docs.openstack.org/developer/oslo.i18n/usage.html
-
-"""
-
-try:
- import oslo_i18n
-
- # NOTE(dhellmann): This reference to o-s-l-o will be replaced by the
- # application name when this module is synced into the separate
- # repository. It is OK to have more than one translation function
- # using the same domain, since there will still only be one message
- # catalog.
- _translators = oslo_i18n.TranslatorFactory(domain='ceilometer')
-
- # The primary translation function using the well-known name "_"
- _ = _translators.primary
-
- # Translators for log levels.
- #
- # The abbreviated names are meant to reflect the usual use of a short
- # name like '_'. The "L" is for "log" and the other letter comes from
- # the level.
- _LI = _translators.log_info
- _LW = _translators.log_warning
- _LE = _translators.log_error
- _LC = _translators.log_critical
-except ImportError:
- # NOTE(dims): Support for cases where a project wants to use
- # code from oslo-incubator, but is not ready to be internationalized
- # (like tempest)
- _ = _LI = _LW = _LE = _LC = lambda x: x
diff --git a/ceilometer/openstack/common/fileutils.py b/ceilometer/openstack/common/fileutils.py
deleted file mode 100644
index 9097c35d..00000000
--- a/ceilometer/openstack/common/fileutils.py
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 2011 OpenStack Foundation.
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-import contextlib
-import errno
-import logging
-import os
-import stat
-import tempfile
-
-from oslo_utils import excutils
-
-LOG = logging.getLogger(__name__)
-
-_FILE_CACHE = {}
-DEFAULT_MODE = stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO
-
-
-def ensure_tree(path, mode=DEFAULT_MODE):
- """Create a directory (and any ancestor directories required)
-
- :param path: Directory to create
- :param mode: Directory creation permissions
- """
- try:
- os.makedirs(path, mode)
- except OSError as exc:
- if exc.errno == errno.EEXIST:
- if not os.path.isdir(path):
- raise
- else:
- raise
-
-
-def read_cached_file(filename, force_reload=False):
- """Read from a file if it has been modified.
-
- :param force_reload: Whether to reload the file.
- :returns: A tuple with a boolean specifying if the data is fresh
- or not.
- """
- global _FILE_CACHE
-
- if force_reload:
- delete_cached_file(filename)
-
- reloaded = False
- mtime = os.path.getmtime(filename)
- cache_info = _FILE_CACHE.setdefault(filename, {})
-
- if not cache_info or mtime > cache_info.get('mtime', 0):
- LOG.debug("Reloading cached file %s" % filename)
- with open(filename) as fap:
- cache_info['data'] = fap.read()
- cache_info['mtime'] = mtime
- reloaded = True
- return (reloaded, cache_info['data'])
-
-
-def delete_cached_file(filename):
- """Delete cached file if present.
-
- :param filename: filename to delete
- """
- global _FILE_CACHE
-
- if filename in _FILE_CACHE:
- del _FILE_CACHE[filename]
-
-
-def delete_if_exists(path, remove=os.unlink):
- """Delete a file, but ignore file not found error.
-
- :param path: File to delete
- :param remove: Optional function to remove passed path
- """
-
- try:
- remove(path)
- except OSError as e:
- if e.errno != errno.ENOENT:
- raise
-
-
-@contextlib.contextmanager
-def remove_path_on_error(path, remove=delete_if_exists):
- """Protect code that wants to operate on PATH atomically.
- Any exception will cause PATH to be removed.
-
- :param path: File to work with
- :param remove: Optional function to remove passed path
- """
-
- try:
- yield
- except Exception:
- with excutils.save_and_reraise_exception():
- remove(path)
-
-
-def file_open(*args, **kwargs):
- """Open file
-
- see built-in open() documentation for more details
-
- Note: The reason this is kept in a separate module is to easily
- be able to provide a stub module that doesn't alter system
- state at all (for unit tests)
- """
- return open(*args, **kwargs)
-
-
-def write_to_tempfile(content, path=None, suffix='', prefix='tmp'):
- """Create temporary file or use existing file.
-
- This util is needed for creating temporary file with
- specified content, suffix and prefix. If path is not None,
- it will be used for writing content. If the path doesn't
- exist it'll be created.
-
- :param content: content for temporary file.
- :param path: same as parameter 'dir' for mkstemp
- :param suffix: same as parameter 'suffix' for mkstemp
- :param prefix: same as parameter 'prefix' for mkstemp
-
- For example: it can be used in database tests for creating
- configuration files.
- """
- if path:
- ensure_tree(path)
-
- (fd, path) = tempfile.mkstemp(suffix=suffix, dir=path, prefix=prefix)
- try:
- os.write(fd, content)
- finally:
- os.close(fd)
- return path
diff --git a/ceilometer/tests/agent/agentbase.py b/ceilometer/tests/agent/agentbase.py
index 26a92a65..f8840ecb 100644
--- a/ceilometer/tests/agent/agentbase.py
+++ b/ceilometer/tests/agent/agentbase.py
@@ -30,6 +30,7 @@ import eventlet
import mock
from oslo_config import fixture as fixture_config
from oslo_service import service as os_service
+from oslo_utils import fileutils
from oslo_utils import timeutils
from oslotest import mockpatch
import six
@@ -37,7 +38,6 @@ from stevedore import extension
import yaml
from ceilometer.agent import plugin_base
-from ceilometer.openstack.common import fileutils
from ceilometer import pipeline
from ceilometer import publisher
from ceilometer.publisher import test as test_publisher
diff --git a/ceilometer/tests/meter/test_notifications.py b/ceilometer/tests/meter/test_notifications.py
index a4f516e3..bffef641 100644
--- a/ceilometer/tests/meter/test_notifications.py
+++ b/ceilometer/tests/meter/test_notifications.py
@@ -17,9 +17,9 @@ import six
import yaml
from oslo_config import fixture as fixture_config
+from oslo_utils import fileutils
from ceilometer.meter import notifications
-from ceilometer.openstack.common import fileutils
from ceilometer.tests import base as test
NOTIFICATION = {
diff --git a/ceilometer/tests/test_bin.py b/ceilometer/tests/test_bin.py
index 6cf1de06..817c0e52 100644
--- a/ceilometer/tests/test_bin.py
+++ b/ceilometer/tests/test_bin.py
@@ -22,9 +22,9 @@ import subprocess
import time
import httplib2
+from oslo_utils import fileutils
import six
-from ceilometer.openstack.common import fileutils
from ceilometer.tests import base
diff --git a/ceilometer/tests/test_hacking.py b/ceilometer/tests/test_hacking.py
index dea08ca3..f009e68f 100644
--- a/ceilometer/tests/test_hacking.py
+++ b/ceilometer/tests/test_hacking.py
@@ -85,6 +85,3 @@ class HackingTestCase(testcase.TestCase):
for code in codes:
self._assert_has_errors(code, checks.check_oslo_namespace_imports,
expected_errors=[(1, 0, "C300")])
- self._assert_has_errors(
- code, checks.check_oslo_namespace_imports,
- filename="ceilometer/openstack/common/xyz.py")
diff --git a/ceilometer/tests/test_notification.py b/ceilometer/tests/test_notification.py
index 3337d6ba..be3f4325 100644
--- a/ceilometer/tests/test_notification.py
+++ b/ceilometer/tests/test_notification.py
@@ -23,6 +23,7 @@ from oslo_context import context
import oslo_messaging
import oslo_messaging.conffixture
import oslo_service.service
+from oslo_utils import fileutils
from oslo_utils import timeutils
import six
from stevedore import extension
@@ -31,7 +32,6 @@ import yaml
from ceilometer.compute.notifications import instance
from ceilometer import messaging
from ceilometer import notification
-from ceilometer.openstack.common import fileutils
from ceilometer.publisher import test as test_publisher
from ceilometer.tests import base as tests_base
diff --git a/openstack-common.conf b/openstack-common.conf
deleted file mode 100644
index 56b4a26e..00000000
--- a/openstack-common.conf
+++ /dev/null
@@ -1,7 +0,0 @@
-[DEFAULT]
-
-# The list of modules to copy from oslo-incubator
-module=fileutils
-
-# The base module to hold the copy of openstack.common
-base=ceilometer
diff --git a/tools/lintstack.py b/tools/lintstack.py
index ddea7993..9ac6b439 100755
--- a/tools/lintstack.py
+++ b/tools/lintstack.py
@@ -29,9 +29,7 @@ from six.moves import cStringIO as StringIO # noqa
# These variables will be useful if we will need to skip some pylint checks
ignore_codes = []
ignore_messages = []
-# We ignore all errors in openstack.common because it should be checked
-# elsewhere.
-ignore_modules = ["ceilometer/openstack/common/"]
+ignore_modules = []
KNOWN_PYLINT_EXCEPTIONS_FILE = "tools/pylint_exceptions"
diff --git a/tox.ini b/tox.ini
index d6b0c169..5a603879 100644
--- a/tox.ini
+++ b/tox.ini
@@ -150,7 +150,7 @@ commands = bash -x {toxinidir}/setup-test-env-elastic.sh oslo_debug_helper {posa
[flake8]
ignore =
-exclude=.venv,.git,.tox,dist,doc,./ceilometer/openstack/common,*lib/python*,*egg,build
+exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
show-source = True
[hacking]