Skip to content

Instantly share code, notes, and snippets.

@shade34321
Last active August 29, 2015 14:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shade34321/2101c077430cd8b75160 to your computer and use it in GitHub Desktop.
Save shade34321/2101c077430cd8b75160 to your computer and use it in GitHub Desktop.
Openstack Failure
Paritions:
root@khazid:/home/shade34321#df -h
Filesystem Size Used Avail Use% Mount on
/dev/sda1 28G 1.4G 25G 6% / #ext4
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 991M 4.0K 991M 1% /dev
tmpfs 201M 404K 200M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 1001M 0 1001M 0% /run/shm
none 100M 0 100M 0% /run/user
/dev/sda5 9.4G 33M 9.3G 1% /data #XFS
/etc/fstab:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=ddbb8575-b85e-478c-8b6e-5c44aed57fac / ext4 errors=remount-ro 0 1
# /data was on /dev/sda5 during installation
UUID=b8f343db-5583-48c0-92bf-3db4e745d140 /data xfs noatime,nodiratime,nobarrier,logbugs=8 0 0
# swap was on /dev/sda6 during installation
UUID=26ca2055-56c5-4ed7-aed6-72cf1d20e1c8 none swap sw 0 0
apt-get update
apt-get install -y curl gcc memcached rsync sqlite3 xfsprogs git-core libffi-dev python-setuptools pastebinit
apt-get install -y python-coverage python-dev python-nose python-simplejson python-xattr python-eventlet python-greenlet python-pastedeploy python-netifaces python-pip python-dnspython python-mock
mkdir /data/1 /data/2 /data/3 /data/4
chown root:root /data/*
mkdir /srv
mkdir: cannot create directory ‘/srv’: File exists
for x in {1..4};do ln -s /data/4 /srv/4;done
mkdir -p /srv/1/node/data1 /srv/2/node/data2 /srv/3/node/data3 /srv/4/node/data4 /var/run/swift
chown -R root:root /var/run/swift/
for x in {1..4};do chown -R root:root /srv/4/;done
cd ~
git clone https://github.com/openstack/python-swiftclient.git
Cloning into 'python-swiftclient'...
cd python-swiftclient/
python setup.py develop
Installed /root/python-swiftclient/pbr-0.8.0-py2.7.egg
running develop
running egg_info
creating python_swiftclient.egg-info
writing requirements to python_swiftclient.egg-info/requires.txt
writing python_swiftclient.egg-info/PKG-INFO
writing top-level names to python_swiftclient.egg-info/top_level.txt
writing dependency_links to python_swiftclient.egg-info/dependency_links.txt
[pbr] Processing SOURCES.txt
writing manifest file 'python_swiftclient.egg-info/SOURCES.txt'
[pbr] In git context, generating filelist from git
warning: no files found matching 'AUTHORS'
warning: no files found matching 'ChangeLog'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
reading manifest template 'MANIFEST.in'
warning: no files found matching 'AUTHORS'
warning: no files found matching 'ChangeLog'
warning: no files found matching '*' under directory 'tools'
writing manifest file 'python_swiftclient.egg-info/SOURCES.txt'
running build_ext
Creating /usr/local/lib/python2.7/dist-packages/python-swiftclient.egg-link (link to .)
python-swiftclient 2.0.3.73.g4e85183 is already the active version in easy-install.pth
Installing swift script to /usr/local/bin
Installed /root/python-swiftclient
Processing dependencies for python-swiftclient==2.0.3.73.g4e85183
Searching for six==1.5.2
Best match: six 1.5.2
six 1.5.2 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for simplejson==3.3.1
Best match: simplejson 3.3.1
simplejson 3.3.1 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for requests==2.2.1
Best match: requests 2.2.1
requests 2.2.1 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Finished processing dependencies for python-swiftclient==2.0.3.73.g4e85183
cd -
git clone https://github.com/openstack/swift.git
Cloning into 'swift'...
cd swift
python setup.py develop
running develop
running egg_info
creating swift.egg-info
writing requirements to swift.egg-info/requires.txt
writing swift.egg-info/PKG-INFO
writing top-level names to swift.egg-info/top_level.txt
writing dependency_links to swift.egg-info/dependency_links.txt
writing entry points to swift.egg-info/entry_points.txt
[pbr] Processing SOURCES.txt
writing manifest file 'swift.egg-info/SOURCES.txt'
[pbr] In git context, generating filelist from git
warning: no files found matching 'ChangeLog'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
reading manifest template 'MANIFEST.in'
writing manifest file 'swift.egg-info/SOURCES.txt'
running build_ext
Creating /usr/local/lib/python2.7/dist-packages/swift.egg-link (link to .)
Adding swift 1.13.1.64.g08dba08 to easy-install.pth file
Installing swift-account-audit script to /usr/local/bin
Installing swift-account-auditor script to /usr/local/bin
Installing swift-account-info script to /usr/local/bin
Installing swift-account-reaper script to /usr/local/bin
Installing swift-account-replicator script to /usr/local/bin
Installing swift-account-server script to /usr/local/bin
Installing swift-config script to /usr/local/bin
Installing swift-container-auditor script to /usr/local/bin
Installing swift-container-info script to /usr/local/bin
Installing swift-container-replicator script to /usr/local/bin
Installing swift-container-server script to /usr/local/bin
Installing swift-container-sync script to /usr/local/bin
Installing swift-container-updater script to /usr/local/bin
Installing swift-dispersion-populate script to /usr/local/bin
Installing swift-dispersion-report script to /usr/local/bin
Installing swift-drive-audit script to /usr/local/bin
Installing swift-form-signature script to /usr/local/bin
Installing swift-get-nodes script to /usr/local/bin
Installing swift-init script to /usr/local/bin
Installing swift-object-auditor script to /usr/local/bin
Installing swift-object-expirer script to /usr/local/bin
Installing swift-object-info script to /usr/local/bin
Installing swift-object-replicator script to /usr/local/bin
Installing swift-object-server script to /usr/local/bin
Installing swift-object-updater script to /usr/local/bin
Installing swift-oldies script to /usr/local/bin
Installing swift-orphans script to /usr/local/bin
Installing swift-proxy-server script to /usr/local/bin
Installing swift-recon script to /usr/local/bin
Installing swift-recon-cron script to /usr/local/bin
Installing swift-ring-builder script to /usr/local/bin
Installing swift-temp-url script to /usr/local/bin
Installed /root/swift
Processing dependencies for swift==1.13.1.64.g08dba08
Searching for xattr==0.6.4
Best match: xattr 0.6.4
xattr 0.6.4 is already the active version in easy-install.pth
Installing xattr script to /usr/local/bin
Using /usr/lib/python2.7/dist-packages
Searching for simplejson==3.3.1
Best match: simplejson 3.3.1
simplejson 3.3.1 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for PasteDeploy==1.5.2
Best match: PasteDeploy 1.5.2
PasteDeploy 1.5.2 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for netifaces==0.8
Best match: netifaces 0.8
netifaces 0.8 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for greenlet==0.4.2
Best match: greenlet 0.4.2
greenlet 0.4.2 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for eventlet==0.13.0
Best match: eventlet 0.13.0
eventlet 0.13.0 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Searching for dnspython==1.11.1
Best match: dnspython 1.11.1
dnspython 1.11.1 is already the active version in easy-install.pth
Using /usr/lib/python2.7/dist-packages
Finished processing dependencies for swift==1.13.1.64.g08dba08
cd -
pip install -r swift/test-requirements.txt
Downloading/unpacking hacking>=0.8.0,<0.9 (from -r swift/test-requirements.txt (line 2))
Running setup.py (path:/tmp/pip_build_root/hacking/setup.py) egg_info for package hacking
[pbr] Processing SOURCES.txt
warning: LocalManifestMaker: standard file '-c' not found
warning: no previously-included files found matching '.gitignore'
warning: no previously-included files found matching '.gitreview'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files found matching '.gitignore'
warning: no previously-included files found matching '.gitreview'
warning: no previously-included files matching '*.pyc' found anywhere in distribution
Requirement already satisfied (use --upgrade to upgrade): coverage in /usr/lib/python2.7/dist-packages (from -r swift/test-requirements.txt (line 3))
Requirement already satisfied (use --upgrade to upgrade): nose in /usr/lib/python2.7/dist-packages (from -r swift/test-requirements.txt (line 4))
Downloading/unpacking nosexcover (from -r swift/test-requirements.txt (line 5))
Downloading nosexcover-1.0.10.tar.gz
Running setup.py (path:/tmp/pip_build_root/nosexcover/setup.py) egg_info for package nosexcover
Downloading/unpacking openstack.nose-plugin (from -r swift/test-requirements.txt (line 6))
Downloading openstack.nose_plugin-0.11.tar.gz
Running setup.py (path:/tmp/pip_build_root/openstack.nose-plugin/setup.py) egg_info for package openstack.nose-plugin
Downloading/unpacking nosehtmloutput (from -r swift/test-requirements.txt (line 7))
Downloading nosehtmloutput-0.0.5.tar.gz
Running setup.py (path:/tmp/pip_build_root/nosehtmloutput/setup.py) egg_info for package nosehtmloutput
Downloading/unpacking sphinx>=1.1.2,<1.2 (from -r swift/test-requirements.txt (line 8))
Running setup.py (path:/tmp/pip_build_root/sphinx/setup.py) egg_info for package sphinx
no previously-included directories found matching 'doc/_build'
Requirement already satisfied (use --upgrade to upgrade): mock>=1.0 in /usr/lib/python2.7/dist-packages (from -r swift/test-requirements.txt (line 9))
Requirement already satisfied (use --upgrade to upgrade): python-swiftclient in ./python-swiftclient (from -r swift/test-requirements.txt (line 10))
Requirement already satisfied (use --upgrade to upgrade): pbr>=0.5.21,<1.0 in ./python-swiftclient/pbr-0.8.0-py2.7.egg (from hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Downloading/unpacking pep8==1.4.5 (from hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Running setup.py (path:/tmp/pip_build_root/pep8/setup.py) egg_info for package pep8
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
warning: no previously-included files matching '*.pyc' found under directory 'testsuite'
warning: no previously-included files matching '*.pyo' found under directory 'testsuite'
no previously-included directories found matching 'docs/_build'
Downloading/unpacking pyflakes>=0.7.2,<0.7.4 (from hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Downloading pyflakes-0.7.3.tar.gz
Running setup.py (path:/tmp/pip_build_root/pyflakes/setup.py) egg_info for package pyflakes
Downloading/unpacking flake8==2.0 (from hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Downloading flake8-2.0.tar.gz
Running setup.py (path:/tmp/pip_build_root/flake8/setup.py) egg_info for package flake8
Requirement already satisfied (use --upgrade to upgrade): six>=1.4.1 in /usr/lib/python2.7/dist-packages (from hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Requirement already satisfied (use --upgrade to upgrade): colorama in /usr/lib/python2.7/dist-packages (from openstack.nose-plugin->-r swift/test-requirements.txt (line 6))
Downloading/unpacking termcolor (from openstack.nose-plugin->-r swift/test-requirements.txt (line 6))
Downloading termcolor-1.1.0.tar.gz
Running setup.py (path:/tmp/pip_build_root/termcolor/setup.py) egg_info for package termcolor
Downloading/unpacking Pygments>=1.2 (from sphinx>=1.1.2,<1.2->-r swift/test-requirements.txt (line 8))
Running setup.py (path:/tmp/pip_build_root/Pygments/setup.py) egg_info for package Pygments
Downloading/unpacking Jinja2>=2.3 (from sphinx>=1.1.2,<1.2->-r swift/test-requirements.txt (line 8))
Running setup.py (path:/tmp/pip_build_root/Jinja2/setup.py) egg_info for package Jinja2
warning: no files found matching '*' under directory 'custom_fixers'
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'jinja2'
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'jinja2'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
Downloading/unpacking docutils>=0.7 (from sphinx>=1.1.2,<1.2->-r swift/test-requirements.txt (line 8))
Running setup.py (path:/tmp/pip_build_root/docutils/setup.py) egg_info for package docutils
warning: no files found matching 'MANIFEST'
warning: no files found matching '*' under directory 'extras'
warning: no previously-included files matching '.cvsignore' found under directory '*'
warning: no previously-included files matching '*.pyc' found under directory '*'
warning: no previously-included files matching '*~' found under directory '*'
warning: no previously-included files matching '.DS_Store' found under directory '*'
Requirement already satisfied (use --upgrade to upgrade): requests>=1.1 in /usr/lib/python2.7/dist-packages (from python-swiftclient->-r swift/test-requirements.txt (line 10))
Requirement already satisfied (use --upgrade to upgrade): simplejson>=2.0.9 in /usr/lib/python2.7/dist-packages (from python-swiftclient->-r swift/test-requirements.txt (line 10))
Requirement already satisfied (use --upgrade to upgrade): pip in /usr/lib/python2.7/dist-packages (from pbr>=0.5.21,<1.0->hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Requirement already satisfied (use --upgrade to upgrade): setuptools in /usr/lib/python2.7/dist-packages (from flake8==2.0->hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Downloading/unpacking mccabe>=0.2 (from flake8==2.0->hacking>=0.8.0,<0.9->-r swift/test-requirements.txt (line 2))
Downloading mccabe-0.2.1.tar.gz
Running setup.py (path:/tmp/pip_build_root/mccabe/setup.py) egg_info for package mccabe
Downloading/unpacking markupsafe (from Jinja2>=2.3->sphinx>=1.1.2,<1.2->-r swift/test-requirements.txt (line 8))
Downloading MarkupSafe-0.21.tar.gz
Running setup.py (path:/tmp/pip_build_root/markupsafe/setup.py) egg_info for package markupsafe
Installing collected packages: hacking, nosexcover, openstack.nose-plugin, nosehtmloutput, sphinx, pep8, pyflakes, flake8, termcolor, Pygments, Jinja2, docutils, mccabe, markupsafe
Running setup.py install for hacking
[pbr] Reusing existing SOURCES.txt
Running setup.py install for nosexcover
Running setup.py install for openstack.nose-plugin
Skipping installation of /usr/local/lib/python2.7/dist-packages/openstack/__init__.py (namespace package)
Installing /usr/local/lib/python2.7/dist-packages/openstack.nose_plugin-0.11-nspkg.pth
Running setup.py install for nosehtmloutput
Running setup.py install for sphinx
no previously-included directories found matching 'doc/_build'
Installing sphinx-apidoc script to /usr/local/bin
Installing sphinx-build script to /usr/local/bin
Installing sphinx-quickstart script to /usr/local/bin
Installing sphinx-autogen script to /usr/local/bin
Running setup.py install for pep8
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
warning: no previously-included files matching '*.pyc' found under directory 'testsuite'
warning: no previously-included files matching '*.pyo' found under directory 'testsuite'
no previously-included directories found matching 'docs/_build'
Installing pep8 script to /usr/local/bin
Running setup.py install for pyflakes
Installing pyflakes script to /usr/local/bin
Running setup.py install for flake8
Installing flake8 script to /usr/local/bin
Running setup.py install for termcolor
Running setup.py install for Pygments
Installing pygmentize script to /usr/local/bin
Running setup.py install for Jinja2
warning: no files found matching '*' under directory 'custom_fixers'
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'jinja2'
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'jinja2'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
Running setup.py install for docutils
changing mode of build/scripts-2.7/rst2html.py from 644 to 755
changing mode of build/scripts-2.7/rst2s5.py from 644 to 755
changing mode of build/scripts-2.7/rst2latex.py from 644 to 755
changing mode of build/scripts-2.7/rst2xetex.py from 644 to 755
changing mode of build/scripts-2.7/rst2man.py from 644 to 755
changing mode of build/scripts-2.7/rst2xml.py from 644 to 755
changing mode of build/scripts-2.7/rst2pseudoxml.py from 644 to 755
changing mode of build/scripts-2.7/rstpep2html.py from 644 to 755
changing mode of build/scripts-2.7/rst2odt.py from 644 to 755
changing mode of build/scripts-2.7/rst2odt_prepstyles.py from 644 to 755
warning: no files found matching 'MANIFEST'
warning: no files found matching '*' under directory 'extras'
warning: no previously-included files matching '.cvsignore' found under directory '*'
warning: no previously-included files matching '*.pyc' found under directory '*'
warning: no previously-included files matching '*~' found under directory '*'
warning: no previously-included files matching '.DS_Store' found under directory '*'
changing mode of /usr/local/bin/rst2latex.py to 755
changing mode of /usr/local/bin/rst2odt.py to 755
changing mode of /usr/local/bin/rst2odt_prepstyles.py to 755
changing mode of /usr/local/bin/rst2xetex.py to 755
changing mode of /usr/local/bin/rst2xml.py to 755
changing mode of /usr/local/bin/rst2man.py to 755
changing mode of /usr/local/bin/rst2s5.py to 755
changing mode of /usr/local/bin/rst2html.py to 755
changing mode of /usr/local/bin/rst2pseudoxml.py to 755
changing mode of /usr/local/bin/rstpep2html.py to 755
Running setup.py install for mccabe
Running setup.py install for markupsafe
building 'markupsafe._speedups' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c markupsafe/_speedups.c -o build/temp.linux-x86_64-2.7/markupsafe/_speedups.o
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/markupsafe/_speedups.o -o build/lib.linux-x86_64-2.7/markupsafe/_speedups.so
Successfully installed hacking nosexcover openstack.nose-plugin nosehtmloutput sphinx pep8 pyflakes flake8 termcolor Pygments Jinja2 docutils mccabe markupsafe
Cleaning up...
cp ~/swift/doc/saio/rsyncd.conf /etc/
sed -i 's/<your-user-name>/root/ /etc/rsyncd.conf'
sed: -e expression #1, char 29: unknown option to `s'
cat /etc/rsyncd.conf
uid = <your-user-name>
gid = <your-user-name>
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = 127.0.0.1
[account6012]
max connections = 25
path = /srv/1/node/
read only = false
lock file = /var/lock/account6012.lock
[account6022]
max connections = 25
path = /srv/2/node/
read only = false
lock file = /var/lock/account6022.lock
[account6032]
max connections = 25
path = /srv/3/node/
read only = false
lock file = /var/lock/account6032.lock
[account6042]
max connections = 25
path = /srv/4/node/
read only = false
lock file = /var/lock/account6042.lock
[container6011]
max connections = 25
path = /srv/1/node/
read only = false
lock file = /var/lock/container6011.lock
[container6021]
max connections = 25
path = /srv/2/node/
read only = false
lock file = /var/lock/container6021.lock
[container6031]
max connections = 25
path = /srv/3/node/
read only = false
lock file = /var/lock/container6031.lock
[container6041]
max connections = 25
path = /srv/4/node/
read only = false
lock file = /var/lock/container6041.lock
[object6010]
max connections = 25
path = /srv/1/node/
read only = false
lock file = /var/lock/object6010.lock
[object6020]
max connections = 25
path = /srv/2/node/
read only = false
lock file = /var/lock/object6020.lock
[object6030]
max connections = 25
path = /srv/3/node/
read only = false
lock file = /var/lock/object6030.lock
[object6040]
max connections = 25
path = /srv/4/node/
read only = false
lock file = /var/lock/object6040.lock
vim /etc/default/rsync
cat /etc/default/rsync
# defaults file for rsync daemon mode
# start rsync in daemon mode from init.d script?
# only allowed values are "true", "false", and "inetd"
# Use "inetd" if you want to start the rsyncd from inetd,
# all this does is prevent the init.d script from printing a message
# about not starting rsyncd (you still need to modify inetd's config yourself).
RSYNC_ENABLE=true
# which file should be used as the configuration file for rsync.
# This file is used instead of the default /etc/rsyncd.conf
# Warning: This option has no effect if the daemon is accessed
# using a remote shell. When using a different file for
# rsync you might want to symlink /etc/rsyncd.conf to
# that file.
# RSYNC_CONFIG_FILE=
# what extra options to give rsync --daemon?
# that excludes the --daemon; that's always done in the init.d script
# Possibilities are:
# --address=123.45.67.89 (bind to a specific IP address)
# --port=8730 (bind to specified port; default 873)
RSYNC_OPTS=''
# run rsyncd at a nice level?
# the rsync daemon can impact performance due to much I/O and CPU usage,
# so you may want to run it at a nicer priority than the default priority.
# Allowed values are 0 - 19 inclusive; 10 is a reasonable value.
RSYNC_NICE=''
# run rsyncd with ionice?
# "ionice" does for IO load what "nice" does for CPU load.
# As rsync is often used for backups which aren't all that time-critical,
# reducing the rsync IO priority will benefit the rest of the system.
# See the manpage for ionice for allowed options.
# -c3 is recommended, this will run rsync IO at "idle" priority. Uncomment
# the next line to activate this.
# RSYNC_IONICE='-c3'
# Don't forget to create an appropriate config file,
# else the daemon will not start.
service rsync restart
* Restarting rsync daemon rsync
* rsync daemon not running, attempting to start.
...done.
rsync rsync://pub@localhost/
account6012
account6022
account6032
account6042
container6011
container6021
container6031
container6041
object6010
object6020
object6030
object6040
cp ~/swift/doc/saio/rsyslog.d/10-swift.conf /etc/rsyslog.d/
cat /etc/rsyslog.d/10-swift.conf
# Uncomment the following to have a log containing all logs together
local1,local2,local3,local4,local5.* /var/log/swift/all.log
# Uncomment the following to have hourly proxy logs for stats processing
$template HourlyProxyLog,"/var/log/swift/hourly/%$YEAR%%$MONTH%%$DAY%%$HOUR%"
local1.*;local1.!notice ?HourlyProxyLog
local1.*;local1.!notice /var/log/swift/proxy.log
local1.notice /var/log/swift/proxy.error
local1.* ~
local2.*;local2.!notice /var/log/swift/storage1.log
local2.notice /var/log/swift/storage1.error
local2.* ~
local3.*;local3.!notice /var/log/swift/storage2.log
local3.notice /var/log/swift/storage2.error
local3.* ~
local4.*;local4.!notice /var/log/swift/storage3.log
local4.notice /var/log/swift/storage3.error
local4.* ~
local5.*;local5.!notice /var/log/swift/storage4.log
local5.notice /var/log/swift/storage4.error
local5.* ~
local6.*;local6.!notice /var/log/swift/expirer.log
local6.notice /var/log/swift/expirer.error
local6.* ~
cat /etc/rsyslog.conf
# /etc/rsyslog.conf Configuration file for rsyslog.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
# Default logging rules can be found in /etc/rsyslog.d/50-default.conf
#################
#### MODULES ####
#################
$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog # provides kernel logging support
#$ModLoad immark # provides --MARK-- message capability
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514
###########################
#### GLOBAL DIRECTIVES ####
###########################
#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# Filter duplicated messages
$RepeatedMsgReduction on
#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup adm
#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog
#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
mkdir -p /var/log/swift/hourly
chown -R syslog.adm /var/log/swift
chmod -R g+w /var/log/swift
cd ~/swift/doc/
cp -r saio/swift/ /etc/swift
cd -
chown -R root:root /etc/swift
find /etc/swift/ -name \*.conf | xargs sed -i "s/<your-user-name>/root/"
sed: -e expression #1, char 17: Invalid content of \{\}
cat /etc/swift/proxy-server.conf
[DEFAULT]
bind_port = 8080
workers = 1
user = root
log_facility = LOG_LOCAL1
eventlet_debug = true
[pipeline:main]
# Yes, proxy-logging appears twice. This is so that
# middleware-originated requests get logged too.
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache bulk tempurl slo dlo ratelimit crossdomain tempauth staticweb container-quotas account-quotas proxy-logging proxy-server
[filter:catch_errors]
use = egg:swift#catch_errors
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:proxy-logging]
use = egg:swift#proxy_logging
[filter:bulk]
use = egg:swift#bulk
[filter:ratelimit]
use = egg:swift#ratelimit
[filter:crossdomain]
use = egg:swift#crossdomain
[filter:dlo]
use = egg:swift#dlo
[filter:slo]
use = egg:swift#slo
[filter:tempurl]
use = egg:swift#tempurl
[filter:tempauth]
use = egg:swift#tempauth
user_admin_admin = admin .admin .reseller_admin
user_test_tester = testing .admin
user_test2_tester2 = testing2 .admin
user_test_tester3 = testing3
[filter:staticweb]
use = egg:swift#staticweb
[filter:account-quotas]
use = egg:swift#account_quotas
[filter:container-quotas]
use = egg:swift#container_quotas
[filter:cache]
use = egg:swift#memcache
[filter:gatekeeper]
use = egg:swift#gatekeeper
[app:proxy-server]
use = egg:swift#proxy
allow_account_management = true
account_autocreate = true
cat /etc/swift/swift.conf
[swift-hash]
# random unique strings that can never change (DO NOT LOSE)
swift_hash_path_prefix = changeme
swift_hash_path_suffix = changeme
cat /etc/swift/object-expirer.conf
[DEFAULT]
# swift_dir = /etc/swift
user = root
# You can specify default log routing here if you want:
log_name = object-expirer
log_facility = LOG_LOCAL6
log_level = INFO
#log_address = /dev/log
#
# comma separated list of functions to call to setup custom log handlers.
# functions get passed: conf, name, log_to_console, log_route, fmt, logger,
# adapted_logger
# log_custom_handlers =
#
# If set, log_udp_host will override log_address
# log_udp_host =
# log_udp_port = 514
#
# You can enable StatsD logging here:
# log_statsd_host = localhost
# log_statsd_port = 8125
# log_statsd_default_sample_rate = 1.0
# log_statsd_sample_rate_factor = 1.0
# log_statsd_metric_prefix =
[object-expirer]
interval = 300
# auto_create_account_prefix = .
# report_interval = 300
# concurrency is the level of concurrency o use to do the work, this value
# must be set to at least 1
# concurrency = 1
# processes is how many parts to divide the work into, one part per process
# that will be doing the work
# processes set 0 means that a single process will be doing all the work
# processes can also be specified on the command line and will override the
# config value
# processes = 0
# process is which of the parts a particular process will work on
# process can also be specified on the command line and will overide the config
# value
# process is "zero based", if you want to use 3 processes, you should run
# processes with process set to 0, 1, and 2
# process = 0
[pipeline:main]
pipeline = catch_errors cache proxy-server
[app:proxy-server]
use = egg:swift#proxy
# See proxy-server.conf-sample for options
[filter:cache]
use = egg:swift#memcache
# See proxy-server.conf-sample for options
[filter:catch_errors]
use = egg:swift#catch_errors
# See proxy-server.conf-sample for options
cat /etc/swift/account-server/1.conf
[DEFAULT]
devices = /srv/1/node
mount_check = false
disable_fallocate = true
bind_port = 6012
workers = 1
user = root
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift
eventlet_debug = true
[pipeline:main]
pipeline = recon account-server
[app:account-server]
use = egg:swift#account
[filter:recon]
use = egg:swift#recon
[account-replicator]
vm_test_mode = yes
[account-auditor]
[account-reaper]
cat /etc/swift/account-server/2.conf
[DEFAULT]
devices = /srv/2/node
mount_check = false
disable_fallocate = true
bind_port = 6022
workers = 1
user = root
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2
eventlet_debug = true
[pipeline:main]
pipeline = recon account-server
[app:account-server]
use = egg:swift#account
[filter:recon]
use = egg:swift#recon
[account-replicator]
vm_test_mode = yes
[account-auditor]
[account-reaper]
cat /etc/swift/account-server/3.conf
[DEFAULT]
devices = /srv/3/node
mount_check = false
disable_fallocate = true
bind_port = 6032
workers = 1
user = root
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3
eventlet_debug = true
[pipeline:main]
pipeline = recon account-server
[app:account-server]
use = egg:swift#account
[filter:recon]
use = egg:swift#recon
[account-replicator]
vm_test_mode = yes
[account-auditor]
[account-reaper]
cat /etc/swift/account-server/4.conf
[DEFAULT]
devices = /srv/4/node
mount_check = false
disable_fallocate = true
bind_port = 6042
workers = 1
user = root
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4
eventlet_debug = true
[pipeline:main]
pipeline = recon account-server
[app:account-server]
use = egg:swift#account
[filter:recon]
use = egg:swift#recon
[account-replicator]
vm_test_mode = yes
[account-auditor]
[account-reaper]
cat /etc/swift/container-server/1.conf
[DEFAULT]
devices = /srv/1/node
mount_check = false
disable_fallocate = true
bind_port = 6011
workers = 1
user = root
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift
eventlet_debug = true
allow_versions = true
[pipeline:main]
pipeline = recon container-server
[app:container-server]
use = egg:swift#container
[filter:recon]
use = egg:swift#recon
[container-replicator]
vm_test_mode = yes
[container-updater]
[container-auditor]
[container-sync]
cat /etc/swift/container-server/2.conf
[DEFAULT]
devices = /srv/2/node
mount_check = false
disable_fallocate = true
bind_port = 6021
workers = 1
user = root
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2
eventlet_debug = true
allow_versions = true
[pipeline:main]
pipeline = recon container-server
[app:container-server]
use = egg:swift#container
[filter:recon]
use = egg:swift#recon
[container-replicator]
vm_test_mode = yes
[container-updater]
[container-auditor]
[container-sync]
cat /etc/swift/container-server/3.conf
[DEFAULT]
devices = /srv/3/node
mount_check = false
disable_fallocate = true
bind_port = 6031
workers = 1
user = root
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3
eventlet_debug = true
allow_versions = true
[pipeline:main]
pipeline = recon container-server
[app:container-server]
use = egg:swift#container
[filter:recon]
use = egg:swift#recon
[container-replicator]
vm_test_mode = yes
[container-updater]
[container-auditor]
[container-sync]
cat /etc/swift/container-server/4.conf
[DEFAULT]
devices = /srv/4/node
mount_check = false
disable_fallocate = true
bind_port = 6041
workers = 1
user = root
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4
eventlet_debug = true
allow_versions = true
[pipeline:main]
pipeline = recon container-server
[app:container-server]
use = egg:swift#container
[filter:recon]
use = egg:swift#recon
[container-replicator]
vm_test_mode = yes
[container-updater]
[container-auditor]
[container-sync]
cat /etc/swift/object-server/1.conf
[DEFAULT]
devices = /srv/1/node
mount_check = false
disable_fallocate = true
bind_port = 6010
workers = 1
user = root
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift
eventlet_debug = true
[pipeline:main]
pipeline = recon object-server
[app:object-server]
use = egg:swift#object
[filter:recon]
use = egg:swift#recon
[object-replicator]
vm_test_mode = yes
[object-updater]
[object-auditor]
cat /etc/swift/object-server/2.conf
[DEFAULT]
devices = /srv/2/node
mount_check = false
disable_fallocate = true
bind_port = 6020
workers = 1
user = root
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2
eventlet_debug = true
[pipeline:main]
pipeline = recon object-server
[app:object-server]
use = egg:swift#object
[filter:recon]
use = egg:swift#recon
[object-replicator]
vm_test_mode = yes
[object-updater]
[object-auditor]
cat /etc/swift/object-server/3.conf
[DEFAULT]
devices = /srv/3/node
mount_check = false
disable_fallocate = true
bind_port = 6030
workers = 1
user = root
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3
eventlet_debug = true
[pipeline:main]
pipeline = recon object-server
[app:object-server]
use = egg:swift#object
[filter:recon]
use = egg:swift#recon
[object-replicator]
vm_test_mode = yes
[object-updater]
[object-auditor]
cat /etc/swift/object-server/4.conf
[DEFAULT]
devices = /srv/4/node
mount_check = false
disable_fallocate = true
bind_port = 6040
workers = 1
user = root
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4
eventlet_debug = true
[pipeline:main]
pipeline = recon object-server
[app:object-server]
use = egg:swift#object
[filter:recon]
use = egg:swift#recon
[object-replicator]
vm_test_mode = yes
[object-updater]
[object-auditor]
cd ~/swift/doc/
cp -r saio/bin ~/bin
cd -
chmod +x ~/bin/*
sed -i '/find \/var\/log\/swift/d' ~/bin/resetswift
cat ~/bin/resetswift
#!/bin/bash
swift-init all stop
# Remove the following line if you did not set up rsyslog for individual logging:
sudo umount /data
# If you are using a loopback device substitute "/dev/data1" with "/srv/swift-disk"
sudo mkfs.xfs -f /dev/sda5
sudo mount /data
sudo mkdir /data/1 /data/2 /data/3 /data/4
sudo chown ${USER}:${USER} /data/*
mkdir -p /srv/1/node/data1 /srv/2/node/data2 /srv/3/node/data3 /srv/4/node/data4
sudo rm -f /var/log/debug /var/log/messages /var/log/rsyncd.log /var/log/syslog
find /var/cache/swift* -type f -name *.recon -exec rm -f {} \;
# On Fedora use "systemctl restart <service>"
sudo service rsyslog restart
sudo service memcached restart
cp ~/swift/test/sample.conf /etc/swift/test.conf
cat ~/.bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# don't put duplicate lines in the history. See bash(1) for more options
# ... or force ignoredups and ignorespace
HISTCONTROL=ignoredups:ignorespace
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
# . /etc/bash_completion
#fi
export SWIFT_TEST_CONFIG_FILE=/etc/swift/test.conf
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/root/bin
. ~/.bashrc
remakerings
Device d0r1z1-127.0.0.1:6010R127.0.0.1:6010/sdb1_"" with 1.0 weight got id 0
Device d1r1z2-127.0.0.1:6020R127.0.0.1:6020/sdb2_"" with 1.0 weight got id 1
Device d2r1z3-127.0.0.1:6030R127.0.0.1:6030/sdb3_"" with 1.0 weight got id 2
Device d3r1z4-127.0.0.1:6040R127.0.0.1:6040/sdb4_"" with 1.0 weight got id 3
Reassigned 1024 (100.00%) partitions. Balance is now 0.00.
Device d0r1z1-127.0.0.1:6011R127.0.0.1:6011/sdb1_"" with 1.0 weight got id 0
Device d1r1z2-127.0.0.1:6021R127.0.0.1:6021/sdb2_"" with 1.0 weight got id 1
Device d2r1z3-127.0.0.1:6031R127.0.0.1:6031/sdb3_"" with 1.0 weight got id 2
Device d3r1z4-127.0.0.1:6041R127.0.0.1:6041/sdb4_"" with 1.0 weight got id 3
Reassigned 1024 (100.00%) partitions. Balance is now 0.00.
Device d0r1z1-127.0.0.1:6012R127.0.0.1:6012/sdb1_"" with 1.0 weight got id 0
Device d1r1z2-127.0.0.1:6022R127.0.0.1:6022/sdb2_"" with 1.0 weight got id 1
Device d2r1z3-127.0.0.1:6032R127.0.0.1:6032/sdb3_"" with 1.0 weight got id 2
Device d3r1z4-127.0.0.1:6042R127.0.0.1:6042/sdb4_"" with 1.0 weight got id 3
Reassigned 1024 (100.00%) partitions. Balance is now 0.00.
~/swift/.unittests &> unittest.log
ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 15846
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 15846
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
sestatus
The program 'sestatus' is currently not installed. You can install it by typing:
apt-get install policycoreutils
lsattr /
lsattr: Operation not supported While reading flags on /initrd.img
lsattr: Inappropriate ioctl for device While reading flags on /run
lsattr: Inappropriate ioctl for device While reading flags on /sys
lsattr: Inappropriate ioctl for device While reading flags on /proc
lsattr: Inappropriate ioctl for device While reading flags on /dev
lsattr: Operation not supported While reading flags on /vmlinuz
-------------e-- /root
-------------e-- /srv
---------------- /data
-------------e-- /mnt
-------------e-- /boot
-------------e-- /lib64
-------------e-- /sbin
-------------e-- /var
-------------e-- /bin
-------------e-- /home
-------------e-- /lost+found
-------------e-- /etc
-------------e-- /media
-------------e-- /opt
-------------e-- /lib
-------------e-- /tmp
-------------e-- /usr
lsattr /tmp
-------------e-- /tmp/tmpMjGcdE
-------------e-- /tmp/backups
-------------e-- /tmp/tmpY7oOUK
-------------e-- /tmp/tmp67eONm
-------------e-- /tmp/tmpdsN_bK
-------------e-- /tmp/tmpqm1m3J
ls -ld /tmp
drwxrwxrwt 8 root root 4096 May 7 21:22 /tmp
ls -ld /tmp/tmp*
drwx------ 2 root root 4096 May 7 21:11 /tmp/tmp67eONm
drwx------ 2 root root 4096 May 7 21:20 /tmp/tmpdsN_bK
drwx------ 2 root root 4096 May 7 21:05 /tmp/tmpMjGcdE
drwx------ 2 root root 4096 May 7 21:14 /tmp/tmpqm1m3J
drwx------ 2 root root 4096 May 7 21:17 /tmp/tmpY7oOUK
.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................F...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
======================================================================
FAIL: test_os_error (test.unit.common.test_container_sync_realms.TestUtils)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/root/swift/test/unit/common/test_container_sync_realms.py", line 51, in test_os_error
"'%s'" % (fpath, fpath)]})
AssertionError: defaultdict(<type 'list'>, {}) != {'error': ["Could not load '/tmp/tmpVXIkIw/container-sync-realms.conf': [Errno 13] Permission denied: '/tmp/tmpVXIkIw/container-sync-realms.conf'"]}
Name Stmts Miss Branch BrMiss Cover Missing
--------------------------------------------------------------------------------------
swift 14 6 0 0 57% 28-34, 41
swift.account 0 0 0 0 100%
swift.account.auditor 72 11 10 4 82% 57-70, 84-89
swift.account.backend 163 7 71 8 94% 48, 210, 216, 218, 313, 330, 385
swift.account.reaper 234 40 98 32 78% 82-84, 88-90, 94-96, 109-111, 131-132, 152, 156, 160, 164, 168, 243-248, 250-253, 255, 257, 259, 262, 264, 267, 270-273, 279, 352-353
swift.account.server 199 21 76 6 90% 120-121, 150, 230-240, 288-292, 301, 309-311
swift.account.utils 45 0 20 0 100%
swift.cli 0 0 0 0 100%
swift.cli.info 111 1 44 1 99% 177
swift.cli.recon 602 483 294 265 17% 27-28, 58, 87, 91, 96, 139, 148, 170-176, 203-224, 241, 250-252, 264-276, 285-308, 317-336, 345-401, 410-456, 465-482, 491-529, 542-547, 556-622, 631-650, 659-678, 687-711, 720-794, 800-941, 945-949, 953
swift.cli.ringbuilder 530 316 254 157 40% 51, 74-75, 78-79, 95, 99-100, 108-110, 113-118, 126-128, 138-160, 163-165, 178-181, 184-186, 195-201, 207-208, 219-220, 227, 237-279, 286-315, 327-350, 374-375, 380, 384-387, 405-408, 416-419, 421-427, 452-455, 470-476, 484-505, 516, 519-522, 524-530, 542-545, 564-567, 572-574, 576-582, 586-598, 611-672, 679-680, 690-701, 711-747, 750-752, 762-763, 781-782, 787-790, 793-794, 808, 811-829, 836-837, 844, 847, 851-856, 862
swift.common 0 0 0 0 100%
swift.common.bufferedhttp 70 11 20 7 80% 73-79, 120, 151-154
swift.common.constraints 108 1 43 0 99% 75
swift.common.container_sync_realms 96 1 26 4 96% 58
swift.common.daemon 48 5 10 3 86% 49-51, 93, 97
swift.common.db 394 43 116 28 86% 54-56, 92, 100, 173-174, 279, 306, 336, 339, 365-366, 393-396, 431-437, 512, 533, 540-541, 548-550, 559-561, 569, 609-611, 637, 668-674, 708-711, 745
swift.common.db_replicator 413 30 143 23 90% 64, 260, 297-302, 311, 438, 447-448, 452-453, 476-477, 500, 555-564, 611, 614, 621, 631, 637, 646
swift.common.direct_client 208 47 91 41 71% 38-39, 53, 55, 57, 59, 67-68, 142, 198, 230, 271-272, 281-286, 322, 327-328, 330, 334, 336, 363, 405, 440, 465-466, 469-470, 477-497
swift.common.exceptions 105 4 26 3 95% 123, 177, 182, 187
swift.common.http 77 0 0 0 100%
swift.common.internal_client 266 12 85 5 95% 733-736, 764, 768, 772, 776, 782-783, 788-789
swift.common.manager 348 5 144 10 97% 264, 368-369, 581, 651
swift.common.memcached 284 24 106 20 89% 115-117, 206-207, 215-219, 357, 377-380, 409, 428-429, 464-465, 480-481, 505-508, 522-523
swift.common.middleware 0 0 0 0 100%
swift.common.middleware.account_quotas 60 5 28 1 93% 75, 147-151
swift.common.middleware.acl 89 3 55 5 94% 180, 244, 293
swift.common.middleware.bulk 298 17 125 8 94% 289, 291, 310-312, 353-355, 403-405, 480, 488-489, 497-499
swift.common.middleware.catch_errors 39 0 2 1 98%
swift.common.middleware.cname_lookup 86 4 38 2 95% 37-39, 90, 119
swift.common.middleware.container_quotas 64 1 36 2 97% 99
swift.common.middleware.container_sync 58 0 25 2 98%
swift.common.middleware.crossdomain 23 6 2 0 76% 86-92
swift.common.middleware.dlo 168 2 77 1 99% 261-262
swift.common.middleware.domain_remap 58 5 26 0 94% 127-132
swift.common.middleware.formpost 245 10 96 8 95% 226, 367-368, 401, 432-433, 447-448, 480-481
swift.common.middleware.gatekeeper 36 0 8 0 100%
swift.common.middleware.healthcheck 28 2 4 0 94% 54-56
swift.common.middleware.keystoneauth 154 1 68 1 99% 138
swift.common.middleware.list_endpoints 53 0 18 1 99%
swift.common.middleware.memcache 49 0 18 0 100%
swift.common.middleware.name_check 55 3 16 2 93% 68, 85, 107
swift.common.middleware.proxy_logging 130 0 52 0 100%
swift.common.middleware.ratelimit 149 1 67 3 98% 225
swift.common.middleware.recon 243 53 108 31 76% 142, 146-150, 161, 165-166, 189, 225, 231-246, 250-263, 296-298, 302-306, 368-373
swift.common.middleware.slo 343 0 142 3 99%
swift.common.middleware.staticweb 199 2 88 4 98% 249, 479
swift.common.middleware.tempauth 333 42 157 18 88% 202-203, 266, 272, 279-288, 311-316, 345, 360-362, 484, 486-491, 504-506, 511-512, 544-546, 578, 595-596, 603
swift.common.middleware.tempurl 178 2 100 2 99% 337, 343
swift.common.request_helpers 128 0 43 0 100%
swift.common.ring 3 0 0 0 100%
swift.common.ring.builder 456 19 254 9 96% 100-101, 117-128, 431, 460, 669, 685, 1030
swift.common.ring.ring 231 5 114 9 96% 76, 116-117, 147, 211
swift.common.ring.utils 122 1 65 1 99% 299
swift.common.swob 664 5 256 10 98% 225, 270, 309, 579, 830
swift.common.utils 1310 99 537 63 91% 45-46, 112-113, 117-118, 125-127, 347-348, 458, 478, 498, 538, 543, 753, 842-843, 880-886, 889-891, 936, 1034, 1040, 1123, 1165-1176, 1196-1197, 1201, 1226-1228, 1274-1275, 1429, 1464, 1470-1471, 1499-1503, 1530-1535, 1699-1701, 1738-1741, 1750-1751, 1758-1759, 1766-1767, 1916, 2134-2135, 2142, 2160-2162, 2175, 2331, 2339-2340, 2480-2496, 2524
swift.common.wsgi 323 57 100 27 80% 47-48, 86, 168, 200-202, 348, 357-359, 394, 405-448, 458-459, 467, 475, 530, 596
swift.container 0 0 0 0 100%
swift.container.auditor 72 8 10 3 87% 57-70, 84-86
swift.container.backend 209 15 88 19 89% 45, 48, 104, 217, 223, 225, 253, 289, 307, 329-335, 409, 426
swift.container.replicator 12 0 4 0 100%
swift.container.server 303 31 153 19 89% 166, 168, 183, 205-206, 220, 223, 239, 257, 267-268, 292, 415, 433-443, 502-506, 511, 519-521
swift.container.sync 209 2 77 5 98% 271, 394
swift.container.updater 177 65 54 22 62% 83-84, 95-97, 99, 101-104, 110-111, 113-158, 160-165, 213, 215, 253-254, 281-297
swift.obj 0 0 0 0 100%
swift.obj.auditor 191 0 46 3 99%
swift.obj.diskfile 643 5 211 2 99% 386, 396, 404, 698-699
swift.obj.expirer 117 0 34 1 99%
swift.obj.mem_diskfile 187 50 55 31 67% 153-170, 173-187, 190, 194, 199, 211-212, 262, 283-284, 287, 293-301, 304-310, 317-319, 321, 334, 382-384
swift.obj.mem_server 36 7 8 5 73% 86-92, 103, 108-110
swift.obj.replicator 307 48 105 22 83% 126-129, 134-139, 144, 147, 162, 177, 193, 247-248, 369-373, 382, 392-395, 411-412, 419, 440-441, 479-480, 482-484, 491-493, 516-531
swift.obj.server 382 0 142 5 99%
swift.obj.ssync_receiver 163 5 76 2 97% 237-240, 294
swift.obj.ssync_sender 169 5 64 3 97% 45, 221-222, 229-230
swift.obj.updater 159 51 46 17 67% 66-108, 151, 154-159, 182-189, 204-205, 207-212, 219-220
swift.proxy 0 0 0 0 100%
swift.proxy.controllers 6 0 0 0 100%
swift.proxy.controllers.account 88 0 34 0 100%
swift.proxy.controllers.base 565 9 246 22 96% 629, 729, 733, 778, 780-781, 930, 978, 1027
swift.proxy.controllers.container 115 1 48 3 98% 183
swift.proxy.controllers.info 49 0 16 0 100%
swift.proxy.controllers.obj 534 94 243 67 79% 116-119, 123, 143-152, 213, 254, 391-392, 411-412, 466-470, 491, 497-504, 528-556, 569, 602, 618, 668-674, 695-696, 700, 707, 709-713, 718-726, 728-732, 738-740, 745-750, 777-783, 804, 807, 823-825, 832-836, 857
swift.proxy.server 272 16 109 13 92% 148, 153-155, 161-163, 168-169, 175, 216, 259, 263-265, 296-297, 305, 538
--------------------------------------------------------------------------------------
TOTAL 15727 1825 6271 1095 87%
----------------------------------------------------------------------
Ran 2337 tests in 107.378s
FAILED (failures=1)
/root/swift
stack@artemis:~/swift$ ./.unittests
.................................................................................................................................E...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
======================================================================
ERROR: test_create_ring (test.unit.cli.test_ringbuilder.TestCommands)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/opt/stack/swift/test/unit/cli/test_ringbuilder.py", line 79, in test_create_ring
self.assertRaises(SystemExit, swift.cli.ringbuilder.main, argv)
File "/usr/lib/python2.7/unittest/case.py", line 475, in assertRaises
callableObj(*args, **kwargs)
File "/opt/stack/swift/swift/cli/ringbuilder.py", line 858, in main
Commands.__dict__.get(command, Commands.unknown.im_func)()
File "/opt/stack/swift/swift/cli/ringbuilder.py", line 228, in create
builder.save(pathjoin(backup_dir, '%d.' % time() + basename(argv[1])))
File "/opt/stack/swift/swift/common/ring/builder.py", line 1014, in save
with open(builder_file, 'wb') as f:
IOError: [Errno 13] Permission denied: '/tmp/backups/1399550200.tmpwJLCUw'
Name Stmts Miss Branch BrMiss Cover Missing
--------------------------------------------------------------------------------------
swift 14 6 0 0 57% 28-34, 41
swift.account 0 0 0 0 100%
swift.account.auditor 72 11 10 4 82% 57-70, 84-89
swift.account.backend 163 7 71 8 94% 48, 210, 216, 218, 313, 330, 385
swift.account.reaper 234 40 98 32 78% 82-84, 88-90, 94-96, 109-111, 131-132, 152, 156, 160, 164, 168, 243-248, 250-253, 255, 257, 259, 262, 264, 267, 270-273, 279, 352-353
swift.account.server 199 21 76 6 90% 120-121, 150, 230-240, 288-292, 301, 309-311
swift.account.utils 45 0 20 0 100%
swift.cli 0 0 0 0 100%
swift.cli.info 111 1 44 1 99% 177
swift.cli.recon 602 483 294 265 17% 27-28, 58, 87, 91, 96, 139, 148, 170-176, 203-224, 241, 250-252, 264-276, 285-308, 317-336, 345-401, 410-456, 465-482, 491-529, 542-547, 556-622, 631-650, 659-678, 687-711, 720-794, 800-941, 945-949, 953
swift.cli.ringbuilder 530 318 254 157 39% 51, 74-75, 78-79, 95, 99-100, 108-110, 113-118, 126-128, 138-160, 163-165, 178-181, 184-186, 195-201, 207-208, 219-220, 227, 229-230, 237-279, 286-315, 327-350, 374-375, 380, 384-387, 405-408, 416-419, 421-427, 452-455, 470-476, 484-505, 516, 519-522, 524-530, 542-545, 564-567, 572-574, 576-582, 586-598, 611-672, 679-680, 690-701, 711-747, 750-752, 762-763, 781-782, 787-790, 793-794, 808, 811-829, 836-837, 844, 847, 851-856, 862
swift.common 0 0 0 0 100%
swift.common.bufferedhttp 70 10 20 6 82% 73-79, 120, 151, 153-154
swift.common.constraints 108 1 43 0 99% 75
swift.common.container_sync_realms 96 0 26 3 98%
swift.common.daemon 48 5 10 3 86% 49-51, 93, 97
swift.common.db 394 43 116 28 86% 54-56, 92, 100, 173-174, 279, 306, 336, 339, 365-366, 393-396, 431-437, 512, 533, 540-541, 548-550, 559-561, 569, 609-611, 637, 668-674, 708-711, 745
swift.common.db_replicator 413 30 143 23 90% 64, 260, 297-302, 311, 438, 447-448, 452-453, 476-477, 500, 555-564, 611, 614, 621, 631, 637, 646
swift.common.direct_client 208 47 91 41 71% 38-39, 53, 55, 57, 59, 67-68, 142, 198, 230, 271-272, 281-286, 322, 327-328, 330, 334, 336, 363, 405, 440, 465-466, 469-470, 477-497
swift.common.exceptions 105 4 26 3 95% 123, 177, 182, 187
swift.common.http 77 0 0 0 100%
swift.common.internal_client 266 12 85 5 95% 733-736, 764, 768, 772, 776, 782-783, 788-789
swift.common.manager 348 5 144 10 97% 264, 368-369, 581, 651
swift.common.memcached 284 24 106 20 89% 115-117, 206-207, 215-219, 357, 377-380, 409, 428-429, 464-465, 480-481, 505-508, 522-523
swift.common.middleware 0 0 0 0 100%
swift.common.middleware.account_quotas 60 5 28 1 93% 75, 147-151
swift.common.middleware.acl 89 3 55 5 94% 180, 244, 293
swift.common.middleware.bulk 298 17 125 8 94% 289, 291, 310-312, 353-355, 403-405, 480, 488-489, 497-499
swift.common.middleware.catch_errors 39 0 2 1 98%
swift.common.middleware.cname_lookup 86 4 38 2 95% 37-39, 90, 119
swift.common.middleware.container_quotas 64 1 36 2 97% 99
swift.common.middleware.container_sync 58 0 25 2 98%
swift.common.middleware.crossdomain 23 6 2 0 76% 86-92
swift.common.middleware.dlo 168 2 77 1 99% 261-262
swift.common.middleware.domain_remap 58 5 26 0 94% 127-132
swift.common.middleware.formpost 245 10 96 8 95% 226, 367-368, 401, 432-433, 447-448, 480-481
swift.common.middleware.gatekeeper 36 0 8 0 100%
swift.common.middleware.healthcheck 28 2 4 0 94% 54-56
swift.common.middleware.keystoneauth 154 1 68 1 99% 138
swift.common.middleware.list_endpoints 53 0 18 1 99%
swift.common.middleware.memcache 49 0 18 0 100%
swift.common.middleware.name_check 55 3 16 2 93% 68, 85, 107
swift.common.middleware.proxy_logging 130 0 52 0 100%
swift.common.middleware.ratelimit 149 1 67 3 98% 225
swift.common.middleware.recon 243 53 108 31 76% 142, 146-150, 161, 165-166, 189, 225, 231-246, 250-263, 296-298, 302-306, 368-373
swift.common.middleware.slo 343 0 142 3 99%
swift.common.middleware.staticweb 199 2 88 4 98% 249, 479
swift.common.middleware.tempauth 333 42 157 18 88% 202-203, 266, 272, 279-288, 311-316, 345, 360-362, 484, 486-491, 504-506, 511-512, 544-546, 578, 595-596, 603
swift.common.middleware.tempurl 178 2 100 2 99% 337, 343
swift.common.request_helpers 128 0 43 0 100%
swift.common.ring 3 0 0 0 100%
swift.common.ring.builder 456 19 254 9 96% 100-101, 117-128, 431, 460, 669, 685, 1030
swift.common.ring.ring 231 5 114 9 96% 76, 116-117, 147, 211
swift.common.ring.utils 122 1 65 1 99% 299
swift.common.swob 664 5 256 10 98% 225, 270, 309, 579, 830
swift.common.utils 1310 99 537 63 91% 45-46, 112-113, 117-118, 125-127, 347-348, 458, 478, 498, 538, 543, 753, 842-843, 880-886, 889-891, 936, 1034, 1040, 1123, 1165-1176, 1196-1197, 1201, 1226-1228, 1274-1275, 1429, 1464, 1470-1471, 1499-1503, 1530-1535, 1699-1701, 1738-1741, 1750-1751, 1758-1759, 1766-1767, 1916, 2134-2135, 2142, 2160-2162, 2175, 2331, 2339-2340, 2480-2496, 2524
swift.common.wsgi 323 57 100 27 80% 47-48, 86, 168, 200-202, 348, 357-359, 394, 405-448, 458-459, 467, 475, 530, 596
swift.container 0 0 0 0 100%
swift.container.auditor 72 8 10 3 87% 57-70, 84-86
swift.container.backend 209 15 88 19 89% 45, 48, 104, 217, 223, 225, 253, 289, 307, 329-335, 409, 426
swift.container.replicator 12 0 4 0 100%
swift.container.server 303 31 153 19 89% 166, 168, 183, 205-206, 220, 223, 239, 257, 267-268, 292, 415, 433-443, 502-506, 511, 519-521
swift.container.sync 209 2 77 5 98% 271, 394
swift.container.updater 177 65 54 22 62% 83-84, 95-97, 99, 101-104, 110-111, 113-158, 160-165, 213, 215, 248, 254, 281-297
swift.obj 0 0 0 0 100%
swift.obj.auditor 191 0 46 3 99%
swift.obj.diskfile 643 5 211 2 99% 386, 396, 404, 698-699
swift.obj.expirer 117 0 34 1 99%
swift.obj.mem_diskfile 187 50 55 31 67% 153-170, 173-187, 190, 194, 199, 211-212, 262, 283-284, 287, 293-301, 304-310, 317-319, 321, 334, 382-384
swift.obj.mem_server 36 7 8 5 73% 86-92, 103, 108-110
swift.obj.replicator 307 48 105 22 83% 126-129, 134-139, 144, 147, 162, 177, 193, 247-248, 369-373, 382, 392-395, 411-412, 419, 440-441, 479-480, 482-484, 491-493, 516-531
swift.obj.server 382 0 142 4 99%
swift.obj.ssync_receiver 163 5 76 2 97% 237-240, 294
swift.obj.ssync_sender 169 5 64 3 97% 45, 221-222, 229-230
swift.obj.updater 159 51 46 17 67% 66-108, 151, 154-159, 182-189, 204-205, 207-212, 219-220
swift.proxy 0 0 0 0 100%
swift.proxy.controllers 6 0 0 0 100%
swift.proxy.controllers.account 88 0 34 0 100%
swift.proxy.controllers.base 565 12 246 23 96% 249, 424-425, 629, 729, 733, 778, 780-781, 930, 978, 1027
swift.proxy.controllers.container 115 1 48 3 98% 183
swift.proxy.controllers.info 49 0 16 0 100%
swift.proxy.controllers.obj 534 94 243 67 79% 116-119, 123, 143-152, 213, 254, 391-392, 411-412, 466-470, 491, 497-504, 528-556, 569, 602, 618, 668-674, 695-696, 700, 707, 709-713, 718-726, 728-732, 738-740, 745-750, 777-783, 804, 807, 823-825, 832-836, 857
swift.proxy.server 272 16 109 13 92% 148, 153-155, 161-163, 168-169, 175, 216, 259, 263-265, 296-297, 305, 538
--------------------------------------------------------------------------------------
TOTAL 15727 1828 6271 1093 87%
----------------------------------------------------------------------
Ran 2337 tests in 142.092s
FAILED (errors=1)
/opt/stack/swift
stack@artemis:~/swift$ ls -ld /tmp/
backups/ .ICE-unix/ tmp4Soe8L/ tmp6ofnAo/ tmpBPRlW8/ tmpK7sBni/ tmpoQhqTY/ tmpSAT8BD/ tmpxYlqGf/ tmux-1000/ .X11-unix/
@portante
Copy link

portante commented May 8, 2014

Hmm, I have not run the unit tests as root, but i suspect that the unit tests rely on the user not having root privileges in order to simulate failure scenarios.

@zhouyuan
Copy link

zhouyuan commented May 8, 2014

Same here if i run the unit tests with 'root'. Seems root can ignore the permission umask

FAIL: test_os_error (test.unit.common.test_container_sync_realms.TestUtils)

Traceback (most recent call last):
File "/root/git/swift_upstream/test/unit/common/test_container_sync_realms.py", line 51, in test_os_error
"'%s'" % (fpath, fpath)]})
AssertionError: defaultdict(<type 'list'>, {}) != {'error': ["Could not load '/tmp/tmpxAZ29T/container-sync-realms.conf': [Errno 13] Permission denied: '/tmp/tmpxAZ29T/container-sync-realms.conf'"]}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment