[ARVADOS] updated: c9b47645638c848bfbc27d21d536995072395106

Git user git at public.curoverse.com
Mon Apr 25 18:00:40 EDT 2016


Summary of changes:
 build/package-build-dockerfiles/centos6/Dockerfile |  2 +-
 build/package-build-dockerfiles/debian7/Dockerfile |  2 +-
 build/package-build-dockerfiles/debian8/Dockerfile |  2 +-
 .../ubuntu1204/Dockerfile                          |  2 +-
 .../ubuntu1404/Dockerfile                          |  2 +-
 build/run-build-packages.sh                        |  9 ++-
 .../install-compute-node.html.textile.liquid       |  4 +-
 doc/install/install-keepstore.html.textile.liquid  |  2 +-
 .../install-shell-server.html.textile.liquid       |  4 +-
 sdk/cli/bin/arv-run-pipeline-instance              |  4 +-
 sdk/cwl/setup.py                                   |  2 +-
 sdk/go/keepclient/perms.go                         | 14 ++--
 sdk/go/keepclient/perms_test.go                    | 29 ++++----
 sdk/go/manifest/manifest.go                        |  2 +-
 sdk/go/streamer/transfer.go                        |  4 +-
 sdk/ruby/arvados.gemspec                           | 10 +--
 sdk/ruby/lib/arvados.rb                            |  4 +-
 sdk/ruby/lib/arvados/collection.rb                 | 12 ++--
 sdk/ruby/lib/arvados/keep.rb                       |  8 +--
 sdk/ruby/test/test_keep_manifest.rb                | 15 +++++
 services/api/app/models/blob.rb                    | 11 +--
 services/api/config/application.default.yml        | 17 +++--
 services/api/test/unit/blob_test.rb                | 21 +++++-
 services/crunch-run/crunchrun_test.go              |  2 +-
 services/datamanager/loggerutil/loggerutil.go      |  2 +-
 services/datamanager/summary/pull_list.go          |  2 +-
 services/keepproxy/keepproxy.go                    |  2 +-
 services/keepstore/keepstore.go                    |  2 +-
 services/keepstore/perms.go                        |  4 +-
 services/keepstore/perms_test.go                   |  7 +-
 services/keepstore/trash_worker_test.go            |  2 +-
 .../arvnodeman/computenode/dispatch/transitions.py |  6 +-
 .../tests/test_computenode_dispatch_slurm.py       | 25 +++----
 services/nodemanager/tests/test_daemon.py          |  8 +--
 services/nodemanager/tests/testutil.py             |  7 ++
 tools/arvbox/bin/arvbox                            |  3 +-
 tools/arvbox/lib/arvbox/docker/Dockerfile.base     |  2 +-
 .../{service/api/run-service => api-setup.sh}      | 18 +----
 tools/arvbox/lib/arvbox/docker/common.sh           |  1 +
 .../lib/arvbox/docker/service/api/run-service      | 78 +---------------------
 .../{workbench => websockets}/log/main/.gitstub    |  0
 .../service/{workbench => websockets}/log/run      |  0
 .../arvbox/docker/service/{sso => websockets}/run  |  0
 .../arvbox/docker/service/websockets/run-service   | 30 +++++++++
 tools/keep-block-check/keep-block-check.go         | 26 ++++++--
 tools/keep-block-check/keep-block-check_test.go    | 32 ++++++---
 tools/keep-rsync/keep-rsync.go                     | 40 +++++++----
 tools/keep-rsync/keep-rsync_test.go                | 29 +++++---
 48 files changed, 283 insertions(+), 227 deletions(-)
 copy tools/arvbox/lib/arvbox/docker/{service/api/run-service => api-setup.sh} (83%)
 copy tools/arvbox/lib/arvbox/docker/service/{workbench => websockets}/log/main/.gitstub (100%)
 copy tools/arvbox/lib/arvbox/docker/service/{workbench => websockets}/log/run (100%)
 copy tools/arvbox/lib/arvbox/docker/service/{sso => websockets}/run (100%)
 create mode 100755 tools/arvbox/lib/arvbox/docker/service/websockets/run-service

  discards  a39a1973c40896c7dff2414b3acabce6b94cab9e (commit)
       via  c9b47645638c848bfbc27d21d536995072395106 (commit)
       via  8cc6fc047506e3bead524f18416b78fe068c70fd (commit)
       via  a6401a8c59a582633de2ae197e71aad493de291a (commit)
       via  eebcb5e6a6cb98562212f30841a0411872ac3e89 (commit)
       via  6279c22bd0e85db1bdb21ad9d95ae8816ac87a5a (commit)
       via  da6f122ed9c8ff0e79c7b3969c4f0960039b9bc7 (commit)
       via  655e654e99a00a248639a910923e0ce66c16581c (commit)
       via  d021d4a0549210dd513d4d28735ad81db85cafbf (commit)
       via  f5617be935a121dc339effcaafebb569109ebe5b (commit)
       via  628f2f2e1bfabdb7221badab3d5189011aee5a54 (commit)
       via  08d8c1af187132692baf70a531f87c8082f72cdc (commit)
       via  3c88abd3cb33cbe80bb81a7cca779fe668036c9e (commit)
       via  469102b30008b4ee73c9f44b03a6bd82a2a91fb2 (commit)
       via  83332c0e546ad5e6332ce507224d9c6f64552ce6 (commit)
       via  2b152757ce494145c10971c36754c473d21dfcc7 (commit)
       via  0cacef6ec2b553052e3897fee3067951f65117cd (commit)
       via  899af276f73189b0581b65c6d77b19f5c041312a (commit)
       via  5784c9a32528a7795181a837660f7f21a7393cce (commit)
       via  4d9ece42c8482948e4eca9f587cdb36f62a00e2b (commit)
       via  aec99288fab5ceed8dc746e62efaeee33ff38a82 (commit)
       via  f2e0e32c7ab0f1de29e6e90a6af87c1969dfd640 (commit)
       via  b2cfb1a8873ee8c4128bd3bdd9fb32b9d9e8ee6e (commit)
       via  d7b6ec65cfd774f0d17c96d2baf9b6620c55ad8d (commit)
       via  af754a64c48e30aec75bbcb1b741a768faacb94c (commit)
       via  6a202a2765bdbac5062fd34231804527edfb6a14 (commit)
       via  ecf4a87ac687b713d3eb4f191f4c5ead293fa046 (commit)
       via  fd696fac8234ff799aa6ac63819e5e6ac0a8a9d4 (commit)
       via  3a31612fdc5e1ccdfa91d04ff5a089d6e06c0f60 (commit)
       via  065cefa6e87c8b668af5a4abc065514b84db83b5 (commit)
       via  40ad5fb3f699c348222c90692b9ae27a8f716af9 (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (a39a1973c40896c7dff2414b3acabce6b94cab9e)
            \
             N -- N -- N (c9b47645638c848bfbc27d21d536995072395106)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit c9b47645638c848bfbc27d21d536995072395106
Author: Tom Clegg <tom at curoverse.com>
Date:   Fri Apr 22 10:40:02 2016 -0400

    9017: Add run-tests.sh --short flag to skip (some) slow tests.

diff --git a/build/run-tests.sh b/build/run-tests.sh
index 884eda3..41ef191 100755
--- a/build/run-tests.sh
+++ b/build/run-tests.sh
@@ -105,6 +105,7 @@ PYTHONPATH=
 GEMHOME=
 PERLINSTALLBASE=
 
+short=
 skip_install=
 temp=
 temp_preserve=
@@ -203,6 +204,9 @@ do
         --only)
             only="$1"; skip[$1]=""; shift
             ;;
+        --short)
+            short=1
+            ;;
         --skip-install)
             skip_install=1
             ;;
@@ -494,12 +498,12 @@ do_test_once() {
                 # does:
                 cd "$WORKSPACE/$1" && \
                     go get -t "git.curoverse.com/arvados.git/$1" && \
-                    go test ${coverflags[@]} ${testargs[$1]}
+                    go test ${short:+-short} ${coverflags[@]} ${testargs[$1]}
             else
                 # The above form gets verbose even when testargs is
                 # empty, so use this form in such cases:
                 go get -t "git.curoverse.com/arvados.git/$1" && \
-                    go test ${coverflags[@]} "git.curoverse.com/arvados.git/$1"
+                    go test ${short:+-short} ${coverflags[@]} "git.curoverse.com/arvados.git/$1"
             fi
             result="$?"
             go tool cover -html="$WORKSPACE/tmp/.$covername.tmp" -o "$WORKSPACE/tmp/$covername.html"
@@ -509,7 +513,7 @@ do_test_once() {
             # $3 can name a path directory for us to use, including trailing
             # slash; e.g., the bin/ subdirectory of a virtualenv.
             cd "$WORKSPACE/$1" \
-                && "${3}python" setup.py test ${testargs[$1]}
+                && "${3}python" setup.py ${short:+--short-tests-only} test ${testargs[$1]}
         elif [[ "$2" != "" ]]
         then
             "test_$2"
diff --git a/sdk/python/setup.py b/sdk/python/setup.py
index 17f9cb4..e0aae96 100644
--- a/sdk/python/setup.py
+++ b/sdk/python/setup.py
@@ -15,6 +15,11 @@ try:
 except ImportError:
     tagger = egg_info_cmd.egg_info
 
+short_tests_only = False
+if '--short-tests-only' in sys.argv:
+    short_tests_only = True
+    sys.argv.remove('--short-tests-only')
+
 setup(name='arvados-python-client',
       version='0.1',
       description='Arvados client library',
diff --git a/sdk/python/tests/slow_test.py b/sdk/python/tests/slow_test.py
new file mode 100644
index 0000000..643ba92
--- /dev/null
+++ b/sdk/python/tests/slow_test.py
@@ -0,0 +1,7 @@
+import __main__
+import os
+import unittest
+
+slow_test = lambda _: unittest.skipIf(
+    __main__.short_tests_only,
+    "running --short tests only")
diff --git a/services/fuse/setup.py b/services/fuse/setup.py
index fca1edf..d7e1a8a 100644
--- a/services/fuse/setup.py
+++ b/services/fuse/setup.py
@@ -15,6 +15,11 @@ try:
 except ImportError:
     tagger = egg_info_cmd.egg_info
 
+short_tests_only = False
+if '--short-tests-only' in sys.argv:
+    short_tests_only = True
+    sys.argv.remove('--short-tests-only')
+
 setup(name='arvados_fuse',
       version='0.1',
       description='Arvados FUSE driver',
diff --git a/services/fuse/tests/mount_test_base.py b/services/fuse/tests/mount_test_base.py
index c79daf8..12395d7 100644
--- a/services/fuse/tests/mount_test_base.py
+++ b/services/fuse/tests/mount_test_base.py
@@ -36,6 +36,7 @@ class MountTestBase(unittest.TestCase):
         run_test_server.run()
         run_test_server.authorize_with("admin")
         self.api = api if api else arvados.safeapi.ThreadSafeApiCache(arvados.config.settings())
+        self.llfuse_thread = None
 
     # This is a copy of Mount's method.  TODO: Refactor MountTestBase
     # to use a Mount instead of copying its code.
@@ -67,12 +68,13 @@ class MountTestBase(unittest.TestCase):
         self.pool.join()
         del self.pool
 
-        subprocess.call(["fusermount", "-u", "-z", self.mounttmp])
-        self.llfuse_thread.join(timeout=1)
-        if self.llfuse_thread.is_alive():
-            logger.warning("MountTestBase.tearDown():"
-                           " llfuse thread still alive 1s after umount"
-                           " -- abandoning and exiting anyway")
+        if self.llfuse_thread:
+            subprocess.call(["fusermount", "-u", "-z", self.mounttmp])
+            self.llfuse_thread.join(timeout=1)
+            if self.llfuse_thread.is_alive():
+                logger.warning("MountTestBase.tearDown():"
+                               " llfuse thread still alive 1s after umount"
+                               " -- abandoning and exiting anyway")
 
         os.rmdir(self.mounttmp)
         if self.keeptmp:
diff --git a/services/fuse/tests/performance/test_collection_performance.py b/services/fuse/tests/performance/test_collection_performance.py
index c4eadca..a975db5 100644
--- a/services/fuse/tests/performance/test_collection_performance.py
+++ b/services/fuse/tests/performance/test_collection_performance.py
@@ -7,6 +7,7 @@ import sys
 import unittest
 from .. import run_test_server
 from ..mount_test_base import MountTestBase
+from ..slow_test import slow_test
 
 logger = logging.getLogger('arvados.arv-mount')
 
@@ -80,6 +81,7 @@ class CreateCollectionWithMultipleBlocksAndMoveAndDeleteFile(MountTestBase):
     def setUp(self):
         super(CreateCollectionWithMultipleBlocksAndMoveAndDeleteFile, self).setUp()
 
+    @slow_test
     def test_CreateCollectionWithManyBlocksAndMoveAndDeleteFile(self):
         collection = arvados.collection.Collection(api_client=self.api)
         collection.save_new()
@@ -215,6 +217,7 @@ class CreateCollectionWithManyFilesAndMoveAndDeleteFile(MountTestBase):
     def setUp(self):
         super(CreateCollectionWithManyFilesAndMoveAndDeleteFile, self).setUp()
 
+    @slow_test
     def test_CreateCollectionWithManyFilesAndMoveAndDeleteFile(self):
         collection = arvados.collection.Collection(api_client=self.api)
         collection.save_new()
@@ -327,6 +330,7 @@ class UsingMagicDir_CreateCollectionWithManyFilesAndMoveAndDeleteFile(MountTestB
             with open(os.path.join(self.mounttmp, collection, k)) as f:
                 self.assertEqual(v, f.read())
 
+    @slow_test
     def test_UsingMagicDirCreateCollectionWithManyFilesAndMoveAndDeleteFile(self):
         streams = 2
         files_per_stream = 200
@@ -382,6 +386,7 @@ class UsingMagicDir_CreateCollectionWithManyFilesAndMoveAllFilesIntoAnother(Moun
         collection.save_new()
         return collection
 
+    @slow_test
     def test_UsingMagicDirCreateCollectionWithManyFilesAndMoveAllFilesIntoAnother(self):
         streams = 2
         files_per_stream = 200
@@ -428,6 +433,7 @@ class UsingMagicDir_CreateCollectionWithManyFilesAndMoveEachFileIntoAnother(Moun
             self.pool.apply(magicDirTest_MoveFileFromCollection, (self.mounttmp, from_collection.manifest_locator(),
                   to_collection.manifest_locator(), 'stream0', 'file'+str(j)+'.txt',))
 
+    @slow_test
     def test_UsingMagicDirCreateCollectionWithManyFilesAndMoveEachFileIntoAnother(self):
         streams = 2
         files_per_stream = 200
@@ -470,6 +476,7 @@ class FuseListLargeProjectContents(MountTestBase):
             collection_contents = llfuse.listdir(os.path.join(self.mounttmp, collection_name))
             self.assertIn('baz', collection_contents)
 
+    @slow_test
     def test_listLargeProjectContents(self):
         self.make_mount(fuse.ProjectDirectory,
                         project_object=run_test_server.fixture('groups')['project_with_201_collections'])
diff --git a/services/fuse/tests/slow_test.py b/services/fuse/tests/slow_test.py
new file mode 120000
index 0000000..c7e1f7f
--- /dev/null
+++ b/services/fuse/tests/slow_test.py
@@ -0,0 +1 @@
+../../../sdk/python/tests/slow_test.py
\ No newline at end of file
diff --git a/services/keep-web/server_test.go b/services/keep-web/server_test.go
index cda8b17..324588a 100644
--- a/services/keep-web/server_test.go
+++ b/services/keep-web/server_test.go
@@ -84,8 +84,14 @@ func (s *IntegrationSuite) Test1GBFile(c *check.C) {
 	s.test100BlockFile(c, 10000000)
 }
 
-func (s *IntegrationSuite) Test300MBFile(c *check.C) {
-	s.test100BlockFile(c, 3000000)
+func (s *IntegrationSuite) Test100BlockFile(c *check.C) {
+	if testing.Short() {
+		// 3 MB
+		s.test100BlockFile(c, 30000)
+	} else {
+		// 300 MB
+		s.test100BlockFile(c, 3000000)
+	}
 }
 
 func (s *IntegrationSuite) test100BlockFile(c *check.C, blocksize int) {

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list