[ARVADOS] updated: b9aef91effaa4ddeb115579cff4c1a47b09b606c

Git user git at public.curoverse.com
Fri Jan 27 15:37:30 EST 2017


Summary of changes:
 .gitignore                                         |   2 +
 .../app/assets/javascripts/work_unit_component.js  |  22 +-
 .../controllers/container_requests_controller.rb   |  28 ++
 .../controllers/pipeline_instances_controller.rb   |   2 +-
 .../app/controllers/projects_controller.rb         |  10 +-
 apps/workbench/app/models/proxy_work_unit.rb       |  23 +-
 .../application/_extra_tab_line_buttons.html.erb   |   0
 .../views/application/_title_and_buttons.html.erb  |   3 +
 .../_extra_tab_line_buttons.html.erb               |  10 +
 .../app/views/work_units/_show_child.html.erb      |   2 +-
 .../app/views/work_units/_show_component.html.erb  |   2 +-
 apps/workbench/config/application.default.yml      |   5 +
 apps/workbench/config/routes.rb                    |   1 +
 .../container_requests_controller_test.rb          |  27 ++
 .../test/controllers/projects_controller_test.rb   |   9 +-
 .../test/diagnostics/container_request_test.rb     |  49 ++
 apps/workbench/test/diagnostics/pipeline_test.rb   |  45 +-
 apps/workbench/test/diagnostics_test_helper.rb     |  43 ++
 apps/workbench/test/integration/projects_test.rb   |   8 -
 apps/workbench/test/unit/work_unit_test.rb         |  12 +-
 backports/deb-fuse/fpm-info.sh                     |   5 +
 backports/deb-libfuse-dev/fpm-info.sh              |   5 +
 backports/python-ciso8601/fpm-info.sh              |   3 -
 backports/python-llfuse/fpm-info.sh                |   9 +-
 backports/python-pycrypto/fpm-info.sh              |   3 -
 backports/python-pycurl/fpm-info.sh                |  44 --
 build/build.list                                   |  44 ++
 build/libcloud-pin                                 |   2 +-
 build/package-build-dockerfiles/Makefile           |  14 +-
 build/package-build-dockerfiles/centos6/Dockerfile |  37 --
 .../{debian7 => ubuntu1604}/Dockerfile             |  10 +-
 build/package-test-dockerfiles/centos6/Dockerfile  |  22 -
 .../centos6/localrepo.repo                         |   5 -
 build/package-test-dockerfiles/centos7/Dockerfile  |   4 +-
 build/package-test-dockerfiles/debian7/Dockerfile  |  14 -
 build/package-test-dockerfiles/debian8/Dockerfile  |   7 +-
 .../package-test-dockerfiles/ubuntu1204/Dockerfile |   9 +-
 .../package-test-dockerfiles/ubuntu1404/Dockerfile |   9 +-
 .../package-test-dockerfiles/ubuntu1604/Dockerfile |  20 +
 .../ubuntu1604/etc-apt-preferences.d-arvados       |   3 +
 build/package-testing/deb-common-test-packages.sh  |   2 +-
 build/package-testing/test-packages-centos6.sh     |   1 -
 ...ages-debian7.sh => test-packages-ubuntu1604.sh} |   0
 build/rails-package-scripts/postinst.sh            |   6 +-
 build/run-build-docker-images.sh                   |   2 +-
 build/run-build-packages-all-targets.sh            |   2 +-
 build/run-build-packages-one-target.sh             |  21 +-
 build/run-build-packages-sso.sh                    |   9 +-
 build/run-build-packages.sh                        | 450 +++++++++---------
 build/run-build-test-packages-one-target.sh        |   4 +-
 build/run-library.sh                               | 105 ++++-
 build/run-tests.sh                                 | 263 ++++++-----
 doc/_includes/_install_git.liquid                  |   8 +-
 doc/_includes/_install_postgres_database.liquid    |   4 +-
 doc/_includes/_install_ruby_and_bundler.liquid     |   4 +-
 doc/_includes/_navbar_top.liquid                   |   2 +-
 doc/api/methods.html.textile.liquid                |   2 +
 .../install-compute-node.html.textile.liquid       |   9 +-
 .../install-compute-node.html.textile.liquid       |   9 +-
 .../install-crunch-dispatch.html.textile.liquid    |   2 +-
 doc/install/install-docker.html.textile.liquid     | 241 ----------
 ...nstall-manual-prerequisites.html.textile.liquid |  16 +-
 doc/install/install-postgresql.html.textile.liquid |  16 -
 .../install-shell-server.html.textile.liquid       |  20 +-
 .../install-workbench-app.html.textile.liquid      |  10 +-
 doc/install/install-ws.html.textile.liquid         | 204 +++++++++
 doc/sdk/cli/reference.html.textile.liquid          |  13 +-
 doc/sdk/python/sdk-python.html.textile.liquid      |   9 +-
 doc/user/index.html.textile.liquid                 |   2 +-
 doc/user/topics/arv-copy.html.textile.liquid       |  23 +
 doc/user/topics/arv-docker.html.textile.liquid     | 114 ++---
 sdk/cli/bin/crunch-job                             |  12 +-
 sdk/cli/test/test_arv-keep-put.rb                  |   8 +-
 sdk/cwl/arvados_cwl/__init__.py                    | 155 +++++--
 sdk/cwl/arvados_cwl/arvcontainer.py                |  83 ++--
 sdk/cwl/arvados_cwl/arvdocker.py                   |  75 +--
 sdk/cwl/arvados_cwl/arvjob.py                      |  65 ++-
 sdk/cwl/arvados_cwl/arvworkflow.py                 |  90 ++--
 sdk/cwl/arvados_cwl/crunch_script.py               |  24 +-
 sdk/cwl/arvados_cwl/done.py                        |  52 ++-
 sdk/cwl/arvados_cwl/fsaccess.py                    |  31 +-
 sdk/cwl/arvados_cwl/pathmapper.py                  |  37 +-
 sdk/cwl/arvados_cwl/runner.py                      | 250 ++++++----
 sdk/cwl/setup.py                                   |   7 +-
 sdk/cwl/tests/test_container.py                    |  21 +-
 sdk/cwl/tests/test_job.py                          |  47 +-
 sdk/cwl/tests/test_submit.py                       | 291 ++++++++----
 sdk/cwl/tests/wf/expect_arvworkflow.cwl            |  22 +-
 sdk/cwl/tests/wf/expect_packed.cwl                 |  43 +-
 sdk/cwl/tests/wf/scatter2_subwf.cwl                | 110 +++--
 sdk/cwl/tests/wf/submit_wf_packed.cwl              |  33 ++
 sdk/dev-jobs.dockerfile                            |   2 +-
 sdk/go/arvados/client.go                           |  97 +++-
 sdk/go/arvados/collection.go                       |  15 +-
 sdk/go/arvados/log.go                              |  25 +
 sdk/go/arvados/resource_list.go                    |  13 +-
 sdk/go/arvadosclient/arvadosclient.go              |  43 +-
 sdk/go/config/dump.go                              |  25 +
 sdk/go/config/load.go                              |   5 +
 sdk/go/crunchrunner/crunchrunner.go                |  20 -
 sdk/go/ctxlog/log.go                               |  59 +++
 sdk/go/keepclient/block_cache.go                   | 104 +++++
 sdk/go/keepclient/collectionreader.go              | 321 +++++--------
 sdk/go/keepclient/collectionreader_test.go         |  48 +-
 sdk/go/keepclient/keepclient.go                    |  16 +-
 sdk/go/keepclient/keepclient_test.go               |  31 +-
 sdk/go/stats/duration.go                           |  35 ++
 sdk/go/stats/duration_test.go                      |  23 +
 sdk/python/arvados/arvfile.py                      |  15 +-
 sdk/python/arvados/collection.py                   |  33 +-
 sdk/python/arvados/commands/arv_copy.py            |  64 ++-
 sdk/python/arvados/commands/put.py                 | 510 ++++++++++++++-------
 sdk/python/arvados/commands/run.py                 |  10 +-
 sdk/python/arvados/util.py                         |   2 +
 sdk/python/setup.py                                |   4 +-
 sdk/python/tests/nginx.conf                        |  16 +
 sdk/python/tests/run_test_server.py                |  71 ++-
 sdk/python/tests/test_arv_put.py                   | 155 ++++++-
 sdk/python/tests/test_arvfile.py                   |  21 +
 sdk/python/tests/test_collections.py               |   2 +
 sdk/python/tests/test_events.py                    |  85 ++--
 services/api/Gemfile                               |   5 +
 .../api/app/controllers/application_controller.rb  |  43 +-
 .../arvados/v1/collections_controller.rb           |  36 +-
 .../controllers/arvados/v1/schema_controller.rb    |  10 +-
 services/api/app/middlewares/rack_socket.rb        |  20 +-
 services/api/app/models/arvados_model.rb           |   9 +-
 services/api/app/models/collection.rb              | 100 +++-
 services/api/app/models/container.rb               |   2 +-
 services/api/app/models/container_request.rb       |  56 ++-
 services/api/app/models/job.rb                     |   6 +-
 services/api/app/models/pipeline_instance.rb       |  14 +
 services/api/app/models/user.rb                    |  90 ++--
 services/api/config/application.default.yml        |  10 +-
 services/api/config/application.rb                 |  17 +
 .../api/config/initializers/noop_deep_munge.rb     |   9 +
 services/api/config/routes.rb                      |   1 +
 .../20161213172944_full_text_search_indexes.rb     |  33 ++
 ...61222153434_split_expiry_to_trash_and_delete.rb |  42 ++
 ...090712_add_output_name_to_container_requests.rb |   9 +
 ...tput_name_to_container_request_search_index.rb} |   6 +-
 ...170105160301_add_output_name_to_cr_fts_index.rb |  22 +
 ...t_finished_at_on_finished_pipeline_instances.rb |   5 +
 services/api/db/structure.sql                      |  74 ++-
 services/api/lib/create_permission_view.sql        |  41 ++
 services/api/lib/create_superuser_token.rb         |  15 +-
 services/api/lib/crunch_dispatch.rb                |  24 +-
 services/api/lib/eventbus.rb                       |   1 +
 services/api/lib/load_param.rb                     |   3 +-
 services/api/lib/sweep_trashed_collections.rb      |  34 ++
 services/api/test/fixtures/collections.yml         |  41 +-
 services/api/test/fixtures/jobs.yml                |   2 +
 .../arvados/v1/collections_controller_test.rb      | 102 ++++-
 .../arvados/v1/groups_controller_test.rb           |   5 +-
 .../api/test/functional/arvados/v1/query_test.rb   |  29 ++
 services/api/test/integration/noop_deep_munge.rb   |  35 ++
 services/api/test/integration/select_test.rb       |   7 +
 services/api/test/unit/arvados_model_test.rb       |  22 +
 services/api/test/unit/collection_test.rb          | 140 +++++-
 services/api/test/unit/container_request_test.rb   |  36 ++
 .../api/test/unit/create_superuser_token_test.rb   |  21 +-
 services/api/test/unit/crunch_dispatch_test.rb     |   3 +-
 services/api/test/unit/job_test.rb                 |  18 +
 services/api/test/unit/pipeline_instance_test.rb   |   8 +
 services/api/test/unit/user_test.rb                |  10 +-
 services/arv-git-httpd/main.go                     |   5 +
 services/arv-web/arv-web.py                        |   2 +-
 .../crunch-dispatch-slurm/crunch-dispatch-slurm.go |  19 +-
 services/crunch-run/crunchrun.go                   |  31 +-
 services/crunch-run/crunchrun_test.go              |  48 +-
 services/crunchstat/crunchstat.go                  |  36 ++
 services/crunchstat/crunchstat_test.go             | 150 ++++++
 services/fuse/arvados_fuse/__init__.py             | 101 ++--
 services/fuse/arvados_fuse/command.py              |   2 +
 services/fuse/tests/mount_test_base.py             |   2 +
 services/fuse/tests/test_mount.py                  |  12 +-
 services/keep-balance/balance_run_test.go          |   9 +-
 services/keep-balance/collection.go                |  97 ++--
 services/keep-balance/collection_test.go           |  57 +++
 services/keep-balance/keep-balance.service         |   2 +-
 services/keep-balance/main.go                      |  12 +-
 services/keep-balance/usage.go                     |   2 +-
 services/keep-web/handler.go                       |  52 +--
 services/keep-web/handler_test.go                  |  43 --
 services/keep-web/main.go                          |   6 +
 services/keep-web/ranges_test.go                   |  90 ++++
 services/keepproxy/keepproxy.go                    |   9 +-
 services/keepstore/azure_blob_volume.go            | 247 +++++++++-
 services/keepstore/azure_blob_volume_test.go       | 137 +++++-
 services/keepstore/keepstore.go                    |   8 +-
 services/keepstore/logging_router.go               |  22 +-
 services/keepstore/pipe_adapters.go                |  89 ++++
 services/keepstore/s3_volume.go                    |  85 ++--
 services/keepstore/stats_ticker.go                 |  50 ++
 services/keepstore/volume.go                       |  12 +
 services/keepstore/volume_unix.go                  | 247 +++++++---
 services/keepstore/volume_unix_test.go             | 111 ++++-
 .../keepproxy.service => ws/arvados-ws.service}    |   6 +-
 services/ws/config.go                              |  40 ++
 services/ws/doc.go                                 |  55 +++
 services/ws/event.go                               |  65 +++
 services/ws/event_source.go                        | 216 +++++++++
 services/ws/handler.go                             | 235 ++++++++++
 services/ws/main.go                                |  67 +++
 services/ws/permission.go                          |  94 ++++
 services/ws/router.go                              | 140 ++++++
 services/ws/session.go                             |  33 ++
 services/ws/session_v0.go                          | 295 ++++++++++++
 services/ws/session_v1.go                          |  14 +
 tools/arvbox/lib/arvbox/docker/api-setup.sh        |   1 +
 tools/arvbox/lib/arvbox/docker/common.sh           |   9 +-
 tools/arvbox/lib/arvbox/docker/createusers.sh      |   4 +-
 .../lib/arvbox/docker/service/sso/run-service      |   1 +
 213 files changed, 7230 insertions(+), 2527 deletions(-)
 copy tools/crunchstat-summary/tests/__init__.py => apps/workbench/app/views/application/_extra_tab_line_buttons.html.erb (100%)
 create mode 100644 apps/workbench/app/views/container_requests/_extra_tab_line_buttons.html.erb
 create mode 100644 apps/workbench/test/diagnostics/container_request_test.rb
 create mode 100644 backports/deb-fuse/fpm-info.sh
 create mode 100644 backports/deb-libfuse-dev/fpm-info.sh
 create mode 100644 build/build.list
 delete mode 100644 build/package-build-dockerfiles/centos6/Dockerfile
 rename build/package-build-dockerfiles/{debian7 => ubuntu1604}/Dockerfile (72%)
 delete mode 100644 build/package-test-dockerfiles/centos6/Dockerfile
 delete mode 100644 build/package-test-dockerfiles/centos6/localrepo.repo
 delete mode 100644 build/package-test-dockerfiles/debian7/Dockerfile
 create mode 100644 build/package-test-dockerfiles/ubuntu1604/Dockerfile
 create mode 100644 build/package-test-dockerfiles/ubuntu1604/etc-apt-preferences.d-arvados
 delete mode 120000 build/package-testing/test-packages-centos6.sh
 rename build/package-testing/{test-packages-debian7.sh => test-packages-ubuntu1604.sh} (100%)
 delete mode 100644 doc/install/install-docker.html.textile.liquid
 create mode 100644 doc/install/install-ws.html.textile.liquid
 create mode 100644 sdk/cwl/tests/wf/submit_wf_packed.cwl
 create mode 100644 sdk/go/arvados/log.go
 create mode 100644 sdk/go/config/dump.go
 create mode 100644 sdk/go/ctxlog/log.go
 create mode 100644 sdk/go/keepclient/block_cache.go
 create mode 100644 sdk/go/stats/duration.go
 create mode 100644 sdk/go/stats/duration_test.go
 create mode 100644 services/api/config/initializers/noop_deep_munge.rb
 create mode 100644 services/api/db/migrate/20161213172944_full_text_search_indexes.rb
 create mode 100644 services/api/db/migrate/20161222153434_split_expiry_to_trash_and_delete.rb
 create mode 100644 services/api/db/migrate/20161223090712_add_output_name_to_container_requests.rb
 copy services/api/db/migrate/{20161115174218_add_output_and_log_uuids_to_container_request_search_index.rb => 20170102153111_add_output_name_to_container_request_search_index.rb} (87%)
 create mode 100644 services/api/db/migrate/20170105160301_add_output_name_to_cr_fts_index.rb
 create mode 100644 services/api/db/migrate/20170105160302_set_finished_at_on_finished_pipeline_instances.rb
 create mode 100644 services/api/lib/create_permission_view.sql
 create mode 100644 services/api/lib/sweep_trashed_collections.rb
 create mode 100644 services/api/test/integration/noop_deep_munge.rb
 create mode 100644 services/keep-balance/collection_test.go
 create mode 100644 services/keep-web/ranges_test.go
 create mode 100644 services/keepstore/pipe_adapters.go
 create mode 100644 services/keepstore/stats_ticker.go
 copy services/{keepproxy/keepproxy.service => ws/arvados-ws.service} (55%)
 create mode 100644 services/ws/config.go
 create mode 100644 services/ws/doc.go
 create mode 100644 services/ws/event.go
 create mode 100644 services/ws/event_source.go
 create mode 100644 services/ws/handler.go
 create mode 100644 services/ws/main.go
 create mode 100644 services/ws/permission.go
 create mode 100644 services/ws/router.go
 create mode 100644 services/ws/session.go
 create mode 100644 services/ws/session_v0.go
 create mode 100644 services/ws/session_v1.go

       via  b9aef91effaa4ddeb115579cff4c1a47b09b606c (commit)
       via  a61bee32ac9641c957593b9b25a763f3e95d8da1 (commit)
       via  d6579d95bacbba5682d0c085f139681c93cb005a (commit)
       via  827879be023e90d58eb681b3c930154739a0b27f (commit)
       via  24b137a5b3313778e2db7f5d1e0c82daf0634a9c (commit)
       via  b001425779a0189b357c4e3a47734eda6b77ce2d (commit)
       via  2b37f7a8e843638431dc9e8031c1c2c2a81c1e7e (commit)
       via  1b8106da867aafbe6e4653485d5e644faee4c35d (commit)
       via  dcb7f718a7bf31c6e1227d28cdaac64fa769015b (commit)
       via  95d8984418a5198639000f0a622da74af259b6c5 (commit)
       via  8675eec8206c0e39753741864636c8a05ce02408 (commit)
       via  799b5333c66ccd18fe1b0ee97c2a28be6e07b731 (commit)
       via  9dd66f4d896785e0c6dce839ed1b411dd3c77bf0 (commit)
       via  7dd717ca530fccae814c8c59a8c242d376fa0cef (commit)
       via  a7222f4df954c9ac973d58bb2f27a8f049dbbbc2 (commit)
       via  a3ca6693f522b59ea50d76cadde69b91c0a62cad (commit)
       via  13c27ef91fc2516bdcdee94ba1ff2f08361dc51d (commit)
       via  5ba9471d651c9f6235988d3ec680461ba4785453 (commit)
       via  0d7ceb1e3498210d20859516de4ffdd59530b6d7 (commit)
       via  da0aee751d8cb039c9b6b85a03e7d62cb973e3b3 (commit)
       via  a20c77028c182b684a3acb791c7de4183319737e (commit)
       via  1edd524ecd7b6776dd9b20ab81030e7c69c392b4 (commit)
       via  b172bbd9e4c780d9af79774aee81a1ac48b3a857 (commit)
       via  8e569c16ba035b131c148441ca5a590fb49811ac (commit)
       via  38ac8f3e065e74f6af172cee90144701d2f73b58 (commit)
       via  1e7d93d8dcc2d896a71c38910f4fb6ef35408c0d (commit)
       via  7fd60cc870863647127a438a085685d415c37a46 (commit)
       via  aea835bc965d42e225c2641b0210c4b521f6dc4e (commit)
       via  16fe80b0e93ed8c8416b2dcbc0e2ad49bc850738 (commit)
       via  b8de9b3e62e82b806576b237be5f317bf378169f (commit)
       via  39189b90bd2f73d4f4938049ffa4441a967ca24c (commit)
       via  dc5a33cbfc156c839515acb4fa6ea2f9162a0972 (commit)
       via  cd383b7168d9412f4f097438d590e919ff7a97d6 (commit)
       via  ddcaafee5dc10ee0104c108c9648f4d5024a83d9 (commit)
       via  685af7fb2ae3a8ea162edd89eec61fdd4ca376f0 (commit)
       via  ae9f71231ed50eb35097c10c84b0070bcdcd22cf (commit)
       via  01007e0a2c7cf5461ced83339f6abcfb6f9fac72 (commit)
       via  6143bba5421756c78b282ee6c4da793d45a4523e (commit)
       via  036c59ea6b19372e74f7ccacb5dcb2f522f99629 (commit)
       via  7fa95f2db716ebfdb6312fa67b9b07bebb815b39 (commit)
       via  f40364c4d42e111b9da3873afcfaed2b49e7f182 (commit)
       via  2f953026bc4baeccb78ca82acc4d07cad37625b8 (commit)
       via  60d986b8908487c086eb4e402ac69669cb26108b (commit)
       via  c40389e0f064d4ea379d5f5471116936239a467a (commit)
       via  b6e15a581be2e5b2387fe18ecb01714fbc21d3aa (commit)
       via  80f042bec0b25966498324cb6aafb7fc24a36e12 (commit)
       via  1cdb5cbf83d34cb1a19c78478a7d5a28738e7bbf (commit)
       via  e8521124b0b8e647c58e99905100171ea5e30abd (commit)
       via  b07d8a573c74e7be56a2fd8c5064032c37d90c67 (commit)
       via  de4ecbc700759ff22e76948a58f7d70e5d3c1464 (commit)
       via  e1fd558686c78d6edfd460b7531ec9b559299889 (commit)
       via  4696633ae5e955c267d50a14e790c93d833f41b0 (commit)
       via  a9ae80084e5b8897408a47fe081481cb913fd260 (commit)
       via  609646134bcd8fc3a7fd500848220741ecc4a9d2 (commit)
       via  6441ff0411fc0316c0825e8647150b1e079256ab (commit)
       via  afa8e5f3339bfe899c5c3d08032798f7977085f9 (commit)
       via  c8aa6553fd4af8be3ca9b1d9d9d660750cd59d1b (commit)
       via  c01ce0788adade520dc825152685aee0449a7da4 (commit)
       via  221c7d2f37a7a83a424597b11e13b638d6e1c21a (commit)
       via  df39fa6468ecb8d428a808392fc948426b602fc6 (commit)
       via  9adf8bd2a5e9e605a38026b70a52fb2ca63b33be (commit)
       via  b0e6c00576257cef24cfd0599073f58904a2b85c (commit)
       via  7bba7e6419737055ad26c23c9dd3bbacb983cb87 (commit)
       via  4dd318184615c0ff83501dfa7935daea5511bb17 (commit)
       via  88e0523b21ceab4bf56a4b5b130a92662c96e002 (commit)
       via  69f7fc66538ffa970bcf3b4169993ba1a146703f (commit)
       via  c21a47f1892748d0fd87771d4e033ddebf71faa5 (commit)
       via  1852b22218ae7b997cb1980d7b33fd1c8879163b (commit)
       via  beb640f493b0828898e83608e6994ff95811dada (commit)
       via  5add8076df3bb034a9e0029a52cbc61e4bb9275e (commit)
       via  6d03851fc13ee6cfb492185a44834bb9873314dd (commit)
       via  55727c5da7f9c5a549e42750d9966b53a486ca68 (commit)
       via  f447c6158d00bdd2c5ab01983065a24670d225df (commit)
       via  d424b38e1c9ca45ba2e845e1a66decf1d2eef75b (commit)
       via  735ffe841b0142d663c5f40b40ec55db2191b2b0 (commit)
       via  6a4e648c4818c2c53fa06984b433cd8dfbf1884f (commit)
       via  3794edbc25662a4df161933cac2e91bfbb3e163c (commit)
       via  935c8f81f0a041a58bbb45602ef44cdd6673163a (commit)
       via  1ccb1dbb6a3d342a647e2f5ab8d0f3d99d048a6b (commit)
       via  d3ae482ebaf8c3c489f4d410ff2f5b6a550515e2 (commit)
       via  7f105aaf983d67ef2c6f08bc4f18eb5d32ffc0c7 (commit)
       via  52c8ac88a924ffe9771876ed8e8399b801d79a56 (commit)
       via  f8b2e8039c96c6ad101f83012d7abf1c45b12ab2 (commit)
       via  eddb8f6851899df30ff40d053870e4cbf3c123fe (commit)
       via  99b571c9050f28525427c100f9072159a3145bc7 (commit)
       via  b97d14dbd377cc73854eefe77d6450859a41f6b7 (commit)
       via  565e1cc82ed0af5a4d58ea78d6e0294afdd1cba8 (commit)
       via  d28ddb0442c1d46fe443521a212faf9ccbbe4066 (commit)
       via  b8b7bec03f7e13f5703d37560d1019fbd3112bac (commit)
       via  2375573bd5a7f909433435c607803df8d2b7bb38 (commit)
       via  554fe927169e928d91c2d8c4bed158aef4d4d746 (commit)
       via  a6f289904b3960a9ffaf4be453ce82d3757fba23 (commit)
       via  f892f08b305dbac15d80b350c7a9192a5a7b2eaf (commit)
       via  6ac8cc38894119c40ec7f4ae7475a5798a3a87ce (commit)
       via  b38aee84aea043eb7bcb3acbab0a8ef64edf0838 (commit)
       via  b073de9a59cf1b19ea9f3bee0274eed71cf62495 (commit)
       via  6b30f7c9a223cc1d22974085f6df7aa62393cc55 (commit)
       via  6da5c2c733a3a3194887502d5cdb5a8446fbf7e0 (commit)
       via  12cf6dc14d6ee5b19ee5ede7dd53a16a75894544 (commit)
       via  16a1220278fdb7fd98d0332a0bc688e38a485daa (commit)
       via  2ecdf8f2362585a838199ad97b5c0497432c4bd7 (commit)
       via  3bfea9bfaeb0b5fcae276d5fd2f255e3ebeab64c (commit)
       via  85f8ab2ef898f8d0bb7187db6db59a93ac528ec5 (commit)
       via  035a48b3d93e3e1bf0d231c773accb8cd13e22e0 (commit)
       via  495a7df016f63ae348000b1c046f8e1c5f1c5903 (commit)
       via  83a0c3c06e3d6c58da44cd433573b732c59f3beb (commit)
       via  84968bdae36586c875a50cc82662de84a5118dfa (commit)
       via  45772b70191f0fa16b5b385f8e08b87561ed8b03 (commit)
       via  7eda5880411d1146c08f3e4a507fa24d5590d5dc (commit)
       via  c9199d296a74d21239da5f162e7594f6b4246ff1 (commit)
       via  2eafde8ff6f3228fce34a3e25dad6b2d2f171ba9 (commit)
       via  4695df7994cc54765681ac1f97111dbc065fadaf (commit)
       via  773a1afc99af74e8bb7c81cbbc9cb785d4f7920a (commit)
       via  364c520d4d47a5edcf6f0e79e42757477b51d33d (commit)
       via  e33f8c3fe2bd7b9d4d4f63540d38cd9732b7f854 (commit)
       via  4a00ceae73e8d76affe6b646832c525355e7897c (commit)
       via  e0fade6bbda39812854fdfc316e8904886d23fe2 (commit)
       via  74e9a4dd2edc0b17d08d9b5ac8c7293dd9e93503 (commit)
       via  066f9bcf5a74c255cb64cf89e554cf64ec719f5a (commit)
       via  3b1150386e2fd3513b98deca05ebd4a248ce3471 (commit)
       via  5f8e65c488277b3f259f791d1cd17361bd67009d (commit)
       via  d7b27f798a0298f5508842c5f7f03b8fccafa3ab (commit)
       via  6599088b45103087b4be743fd51a8330e694e57f (commit)
       via  05f94a7837527f79df122e9942eaab166e987b15 (commit)
       via  1d19121f1216a20fa5083ada76d5b77f7901a9d5 (commit)
       via  bab78d47d93fa6e0bf2e0d41bcdcd65799f683e4 (commit)
       via  863280201573355f380c59226015373885b50617 (commit)
       via  293f8a1d393d7fbfd12ed6c62260aa1b24c2e0fe (commit)
       via  49db3b740b861688eff2a872c8f69f65ee893ed2 (commit)
       via  1d34696de2fb46133e1d969d8d2aed1de3da2ff2 (commit)
       via  7ad611f636e849e255b0f66ca6d7a027193b65dc (commit)
       via  daafdb4c939f265b4604711d0fc946a830d9d54e (commit)
       via  6951a378515a726fa178e0d1554c72044a7f5f88 (commit)
       via  2cddd92e172cc20d0b7c1c8013b64fb32056f3df (commit)
       via  ba300c9e82f9fd2f853a7bfb4e0df58685071d0c (commit)
       via  8e6cd14b7884a691a110110b0f366577437c6d9e (commit)
       via  532be5dc8d48ec4839aca38032fa0b64ddf7cd75 (commit)
       via  a6afada6f023621d2725fccf31a214a6d9e0a3e3 (commit)
       via  fe1b0b43931dcefbf9308dc7b0a3639a4410ca53 (commit)
       via  87275ec769831e04982a714049ee9d67b6342d68 (commit)
       via  07a94c1d7f2fc3b0c18504c46de03abeec5da8fc (commit)
       via  3aee47f04fddb82b1887044de86f8824e9e2f5f2 (commit)
       via  b7ff345255551a5187ae7b2846b704a3c800256d (commit)
       via  4a5f17bc047eea3cc65ccee62315f2215ad5e936 (commit)
       via  837949653b69e357cfa90fb0b8855a37e9c406d7 (commit)
       via  f301a70fdcfda9872965835b26d1400a53d584a1 (commit)
       via  72007cdcdcc228f1ba04b6963fdd9864b30bf281 (commit)
       via  ccb95499d6eb46957cda2f060d0b931df2dd82d4 (commit)
       via  a6df6abd009da14b6fa0d111a3ae2f41af9208d2 (commit)
       via  8fc563f15301baa0a59bfae748e0c8cd2d5eefda (commit)
       via  ce42f38437ccda92142eda2e49d77226f78bd82d (commit)
       via  002042bd4a1eb6992313ef821053c4a38fd3b4a8 (commit)
       via  e9661d2d3e117fcb9b48848757b6dfe65210ba43 (commit)
       via  e7f29d3e4baa5c5d857a1a6f396b7c8047c45c82 (commit)
       via  bee1bf42b29780bcb28fd26edd78d384e1b578ac (commit)
       via  3fa0560c1c4892636c8c06c70b0f16190fac59b1 (commit)
       via  36352ce56096e4406344c531147236c355c73235 (commit)
       via  edf15f609d4eeccb2f693844e4df030f868dbd69 (commit)
       via  991a32dd18fb9be2862baca9d6b374d09ae8bc38 (commit)
       via  3cbe55d440788b0b9b1a9d9e642103929b57e8fd (commit)
       via  3121f0dfb9262ccd50d0637c9f7cedf9191f69bf (commit)
       via  f81427c5f93c159d26c3125aaa7ede4c5986dd07 (commit)
       via  b2da02379210a1d43914b36f412f76e639203a81 (commit)
       via  590e8c5e913576f947a7e28e45166770a8bd619e (commit)
       via  2aa6adffd7a89601510b39481a071ba03213f6fd (commit)
       via  1767cc94ddd427c6610c82e1b27f6a9f6793b39a (commit)
       via  d0d60bbbe1c60516334e5d56f3c923b79e611b21 (commit)
       via  9048749c1419cf5e130a4b5d992a2b9c5bafd9cf (commit)
       via  b405f0f487f35f62d8362dc06981b83176b77d44 (commit)
       via  4c76ae6b65612579e465a2862f3c2bdfea06b43a (commit)
       via  8d0b0fc4046a01a1aeaebb177c3b740237728c25 (commit)
       via  a12864a31d5569c74ed32157d5fe928a1c2563b7 (commit)
       via  29246b83f1b1c66eb12ed53c844ef37ee0b77568 (commit)
       via  3f556ca1b44b7e01874bd172abbb7cb3df0615db (commit)
       via  b4d9dfe1e7acb1f45c2cc699020bf9299a0db5c9 (commit)
       via  b3e5ea60bdecb41fbf954b67ab859dc4542d0c1a (commit)
       via  b9df977af1ca8d7fe942cbe13956fa19ed88b91d (commit)
       via  1fa9990d33e5cde82d5986b382851b8ea0314553 (commit)
       via  9c7a9a6e4660b3e7cc6419e5818ffaa3a78b6d19 (commit)
       via  7d6cb0405504a536a88aa8467e474f7fd13299a7 (commit)
       via  d02ba63331267f782e0bc5868ca4aab456e0f2b4 (commit)
       via  e367f2eea8974cc137b2c74bfbfcf0e5d334f15f (commit)
       via  48d810686a66ac2d554d4f5696fda9a61904992c (commit)
       via  7fc1b26a40065518dd5cfc8eaf6259fa1288bd92 (commit)
       via  e99a8f26537ef2356be5fc479bfe8c4f716c8d22 (commit)
       via  bfe7a62407aa0a6bc078659f259468f9b4105581 (commit)
       via  cc33861d2b29e1a0bd63f3c9b9322bd86e3fb5e4 (commit)
       via  973c9d87c964cd517704b8f0ba487a644f5d635d (commit)
       via  d1f91106df53f5333acdfc5ec299c852d8ddfb46 (commit)
       via  0d6b95b2e39407051a04ae246612ff4e2a2af85e (commit)
       via  25c212007d4c6ef14cf730526246bc8876700bb6 (commit)
       via  5627b1bf40d759cef1670afa6875005d9ca7e691 (commit)
       via  31d8056dbcaf236299729694b3e63882cb42dde2 (commit)
       via  42759ae4288f20646ae64bf7d09db26b713d531b (commit)
       via  31084ffe95eddee3469674b6f719e00e94de9b5d (commit)
       via  ea9d53175a0e7670ceb9bbeaf66cd6c89baa09dd (commit)
       via  a166056578bc02193e1a83f79b2477c9ccd98cc2 (commit)
       via  b3f306edf87bf1fe406f11b5c99947d73599f84f (commit)
       via  f82d2a3731310b55420f7dcfe9a7ad28c3b338f1 (commit)
       via  4030410ea30f122acb7e67844b1adcd7ed7107fa (commit)
       via  fabbab6fb71b4733260687cd58a455b16c00948a (commit)
       via  e821b673b8290ab848b0a071abf6c389f3f906ec (commit)
       via  568c7abf660b7a68f70b6ea47ae2e7352233f053 (commit)
       via  7f9a68fbef2de18f274437b6161cd7269d87f04e (commit)
       via  a4f7583ef9d76101415bace9b250df983ba7212d (commit)
       via  5af0f99a1dc3d6dbc9066c2649272abf27482ebf (commit)
       via  970835342e02cb7a97f228f67602b7f847ab6875 (commit)
       via  1f5fee78438f06ec9531939247321dfb30af2b1a (commit)
       via  25275859b01a1f8c8bff018878842d194d99c173 (commit)
       via  b9f7a8693579045f05d142dba8bffd2c5660dfce (commit)
       via  997479d1408139e96ecdb42a60b4f727f814f6c9 (commit)
       via  da2a4d9c13b80066400161cb7638425828de18d3 (commit)
       via  1847f3a94d355eed42e0d6ba7b5f929b7af7d143 (commit)
       via  af967503ee1c446ebed6451462f5ba725bcbbdf7 (commit)
       via  1e19bc12a83dacf4a40d1c0d358aae48b6588a58 (commit)
       via  0b3b1e9d91f06966cbeecd3d4a11e1fb7e8d8434 (commit)
       via  5c7c672a4cd0d8c5bd0e6c5218062214eb5751f3 (commit)
       via  e675daba8125b20e45e0c121f1fdcac85fb4b360 (commit)
       via  91b824a77fe19242de50e838f9f8c4fb30907fa3 (commit)
       via  2ecd4749bc9b3f8be8cf41864948108068e187d8 (commit)
       via  8d4ec10fc26d93d282845c789cd61da79e4b2836 (commit)
       via  692127b79071f419ef39fb4594a4193f8e4a7a37 (commit)
       via  b27f1106beb0fb321ee123501afb5ccf2354a363 (commit)
       via  fe060158c380fe92635cae24a12eb43680021169 (commit)
       via  6cec281e8653731602ab871cc41ddd21ca8182ab (commit)
       via  4ee5a6efb8b01afddddaa8ce5ed7d0de42a287d6 (commit)
       via  eebb0457f1bb69ec2084cbefcbff8c19e404d556 (commit)
       via  0aa01993bc8533d417dc510b1860a4a583e093b4 (commit)
       via  cdd8dc7bc4cca452e25c5b014e5f2bb592fb31ce (commit)
       via  f6e68adfecb95e42e984951794c96f54166b7f13 (commit)
       via  90633a9dd56502566731991dd4084a57e0366064 (commit)
       via  ec600fb1b5ab89d923e6e19529d568964c4f4137 (commit)
       via  9754971aff036b3532f2e4e4ee88b902f387d69a (commit)
       via  924b783e07028b17cd5403205361e4715f7a212f (commit)
       via  603de36ec435145259feea701acbc6a3cc46f115 (commit)
       via  5bdbbbf5137c6ef12d12362715dfc7ee6568dc93 (commit)
       via  8dc951d7f9a21a2429c38cbb3e119bb382618b95 (commit)
       via  b2cf2b9b857507effb31ec147e378558b5cf17bd (commit)
       via  cc94954f69ed2d26451bae6610b38de260d2252f (commit)
       via  96d90c859cede094d83cbaf5409418e9ab0c2c19 (commit)
       via  4f03b29b3efb42a48c3f397942d5b618b89390eb (commit)
       via  2eb7a28fa7900a005bf48dc40dd1af16d0bc455d (commit)
       via  cafa08eae78c6e29898164f8b5b2fc0127d69f48 (commit)
       via  b96bff759bb71ebb80d7ea33a7b7944eb7c0269f (commit)
       via  ebb2559b3a09636ff687316bbe512e0e8a86b168 (commit)
       via  3beb006fd2c533a192379c9730a3a730c5493b90 (commit)
       via  4115524460e89f36b99f2fb5de1adebd86daaf4a (commit)
       via  680bc629dc473d877218b1ed9351fac4020d4657 (commit)
       via  c1a8e01539932e2f0153cfb2ffc4eaa2c3dc00f1 (commit)
       via  53468cf5e609c4456d1bfd24aeb74c326ff6a8b7 (commit)
       via  5fe2a0ab78c82b67b92434596d554bedda1d4259 (commit)
       via  a092ab09fab941057e5cc44d93886676d542bdd6 (commit)
       via  ad0712ccdb7ad3d01ab4fc0d4f1a15dc7443b18a (commit)
       via  965565ddc62635928a6b043158fd683738961c8c (commit)
       via  697e73b0605b6c182f1051e97ed370d5afa7d954 (commit)
       via  fc390927833d14b6c439db8ea72d3d52b60a5e6d (commit)
       via  ffd4738242c61fa5acd423f927339f836dfb0ffb (commit)
       via  a619c2ce3c6d5bc00b9898dd084ac0e2efc2ee76 (commit)
       via  005cb811d937fe52cee11d76484252ed7167f9a8 (commit)
       via  6a370a002d008dffaf9f47b7db3da47b40e57254 (commit)
       via  dcca309415bc0683f57f38ad65c30b539d80e191 (commit)
       via  28db15c830a8f129283f43682727b470862572d8 (commit)
       via  409d130ddcc4b76def5fa8d61d2584725c61152a (commit)
       via  f987de07f96595851187ed2a4e0212fa0e10e999 (commit)
       via  ba57b6537679889b42693ecd839a94d59c716aaf (commit)
       via  57170c25230cf56c99c5b2cbc795f4599cbda87f (commit)
       via  d0dc273718a2f657643a2b2800d984c7a3a62f78 (commit)
       via  c856cb5095e454c1733bd6f0053e59e2b884d644 (commit)
       via  f3e02106cfc33ffe333af9e303a9e68f3ecfb2e4 (commit)
       via  08e03489e053779f7bbc168677deeebd86d6249c (commit)
       via  cc1dbda8f559ab43f326c77595d4af87e8ca7a33 (commit)
       via  55e9587e140e1621dcd374afcf30ee0aec2c6d24 (commit)
       via  738ecb0cd43e2ae728b04534697198d11d6bd85f (commit)
       via  80d4b6ebb20393507be7ecd0dcf888ebda623a35 (commit)
       via  7df118ca0c58dd65f3ec83e94941976d5073ff45 (commit)
       via  b94b54c25a57a26925eaf739dcf59a4ff94238ae (commit)
       via  18c3e601c065e5afd526b29e214b497fad04ce32 (commit)
       via  0b898bf7c9337ac0f2385159329d2f3e6a1694ec (commit)
       via  aa94204c3e88f5386d14cb90e3e13a5e9caaf251 (commit)
       via  83a4e42fb15030a9108e76dcf01a1a7d6c14cda5 (commit)
       via  e54cce12bbda235dcaebf3b7565804cd8c296100 (commit)
       via  f2e2487ddba3944d3acd46fae3424a87fc624be9 (commit)
       via  ae9c556899557f64acaa54b339a62c9f5c5966c9 (commit)
       via  d13cc16ebbe287fe81d06c5faa1d15fe588bcf16 (commit)
       via  62d8f575a93374a235097b88499fa65eef2f56ec (commit)
       via  ccc1201e103e168b04801b135b662577d7ea475b (commit)
       via  190e6d0b21800dcaec1c5d0b2346d2c2bf43eeea (commit)
       via  b5af6347690934f0a0fba10b79b6d8dcf2c84243 (commit)
       via  9f2fccd1c01823a762044c8a73e6fa0f7ed9086b (commit)
       via  5646f9476220ef151d1811acb4eff88ebe8ef530 (commit)
       via  ba1ec0f0b59ab871b6e4faf5e8ae87809fdb85b6 (commit)
       via  b9f0177e6a477a518fd5a89156fafde57f2dddf8 (commit)
       via  bdb92619b5f6d920119b8c32c3027cf4b751ed16 (commit)
       via  5d843ab702bd516257dda1a872d45755e5170678 (commit)
       via  c86fec0e51f30b2771c9ae95152f76b438db6542 (commit)
       via  2e104941dbf1e4bf92e0632cadeb946be0595d67 (commit)
       via  8be35986ae62ce39691c4c6d491601012255b1ba (commit)
       via  1c96d4eb740dc4285d9f30ba0ce73499f7b7d59e (commit)
       via  a62e41101a75e01f9b0dd7124eef81714443d8a1 (commit)
       via  a175a62538e4db86296e49e5412be41e026e73b6 (commit)
       via  8303a85b6c3fed92710a590fa5653557b73439cf (commit)
       via  90de410ff977f3669d33f532adf0cb71ac8ac261 (commit)
       via  2a1978f10b7dff4f239eb868648f404f070fccc3 (commit)
       via  2a62b82e96a6f56357e913117e04c36b1ccf7585 (commit)
       via  2ec950c960fa8e95de9593fdf09f40833861c36e (commit)
       via  324ffadbac85457cba901c7c195b8a20a32a8c4d (commit)
       via  83ec78f608d67622ccc87b67cc16276a48a0430a (commit)
       via  7ef471d9d0513b0b06cf0007e575f16eda93ec29 (commit)
       via  45dd8543ac140a3326e6a8063bd43bd6c4ad05c8 (commit)
       via  d63601c63f651ab9fe4fefb5a7e8d76bf0495da3 (commit)
       via  8595030d0314e6f88a245e66f90cce0a306b6867 (commit)
       via  dd2320c6877939365caf79767b5244d86a288437 (commit)
       via  fd717a88835be62ae1b5c4b1ecd74c21cab0e744 (commit)
       via  0f1fca27f3b4b40ff8f6be729e12f2feeba05f8f (commit)
       via  cc0cd658d3db6820fba9daf380da4fa177b38f5c (commit)
       via  44702d2cdc6f6f76c16d9d5da9ae3225ab07de2f (commit)
       via  15aca78766bda903480e327340d67d3d882ee69f (commit)
       via  2eaa77dc327c024f2faa3fbd322e7054454b6442 (commit)
       via  8c014223e42683d308798475c021bad7a794e998 (commit)
       via  a714babda599431fd509dff6dee87ab30a1793eb (commit)
       via  4f4f6f5fe9367d5cd6c57070fd8a223efc87cb21 (commit)
       via  a57f8602e4a89e526464587c78e91c2086aae8d8 (commit)
       via  2225be2cb92613495450528ba24a9ca14f232748 (commit)
       via  50128b53da4003912635b03fb27b5be2c5beaca1 (commit)
       via  0d2d039368f65490e9479bd7500a1f8bdf30849c (commit)
       via  fd7db907627aac75dae62430b6f2fa948719a3af (commit)
       via  161a519439dcad4d77ca400ec48bb58cb685b54a (commit)
       via  b0ba939812720869fca0a75b07d42518d4953345 (commit)
       via  05666b170533c79800bea1d472c284e23c9ec5e0 (commit)
       via  88ab51c83676a75efbb7b83e7d17927816ecaac4 (commit)
       via  74d5bfb293b2acf76d639df12ff8769bc333a5f2 (commit)
       via  3c1b51391b320539eb4cfbc02ea9e9363df1b370 (commit)
       via  53d8d85b53e445ffb8c16eed86145adee2ff9e37 (commit)
       via  261b9d42a367704e4815f3d59565467b98853787 (commit)
       via  c52c3788fbbf161db40118261c4cfff52ebf8ceb (commit)
       via  5413abe433a089f11f7ea595073a6a20ffa371de (commit)
       via  bfabb2a8fd5fc3914035a7e2be6bd29d14fc7850 (commit)
       via  a6d6a57a908b1cac8ebcc5bc4261b7c906d249a4 (commit)
       via  259252b7b9418c931e59d67257e50632c83261c5 (commit)
       via  1a17734f7264bc74463e1e6fe115cdad6ec4c521 (commit)
       via  d3a6d626ab4534865a14e8a34295a65e92036f37 (commit)
       via  ec5ec8c10756217482930b0ad763ff174b7843fd (commit)
       via  4032e4dc4284391f21f21630bdb7ca88f8329d8e (commit)
       via  f675fb2c202516021b961b5aa2de4528ba9f0d1f (commit)
       via  17b7582b6116a4891a27769ee06f9a604bbabdd7 (commit)
       via  dfb995ab9ea0f1d8808c812870db717164ac95f4 (commit)
       via  567269bca35ce82045643f86d38992f45d75f435 (commit)
       via  8e37378b2955346c2b4a3c1e38fcdfb2e74b7e07 (commit)
       via  bc4dd2d01cda24a71f95b62ae1fa72aa9fb1226d (commit)
       via  5ffb79040668114c58bf35c3e18a8302b8d94445 (commit)
       via  d6b6b39bfe67926490506125c88f3567e45e7dcc (commit)
       via  7ae5533a074d80882171b33f7b659c9bcace1bd3 (commit)
       via  0c6cbd8a07e31decd703ef7fd9eca591e5661c32 (commit)
       via  f6f8feeada332a55d1a966e9f4a240d99dc58b55 (commit)
       via  5a420beeb6c64efc3ca0ef13d4ab9ac6c654c3ab (commit)
       via  3e39ed33427a0c3000ed41b4826fcfa182934f71 (commit)
       via  e12c0414039f7e818e31aa4765a5e69666333069 (commit)
       via  f224b7ff4c38027309292a01516cd1df9f158a3e (commit)
       via  53b116a7dac30b01f4080ea2832a68e7b885db51 (commit)
       via  2a4aae5d6b865e959b97386b84386358e56ebd50 (commit)
       via  bbf8780255b9c04d0aaa95ef055cb8e777df11be (commit)
       via  87363153b74c9137b6113a5c62da475e02908d9a (commit)
       via  54aa46e52ff46fa667ec333e6bbaa00e0382f6f4 (commit)
       via  0f2a62815c97a47b610b76a748a7d092c89e3e7b (commit)
       via  83f085a0c405695d9840a0542eb9746e7b5d3f6f (commit)
       via  f1c316086c32a0c19cfbf4ac7bb122d3e8cd049b (commit)
       via  0040a5a5b2e82f20641278584ecae835c1c537d3 (commit)
       via  da44904bb64303db2ae01aa9978188c20d453445 (commit)
       via  f517492fccb7cec138621cd0e710668877be57ce (commit)
       via  104b2b5a46844e94a37c332b4ddd5a861dd8d63d (commit)
       via  dcb82d1101219a76df671a4f61738b764841d8dd (commit)
       via  f9eb135e4420352198729534f115f233cda8c261 (commit)
       via  39b1824cff7cae632a19dbe9c011b8b5d8fb9375 (commit)
       via  219daa3b227f147cb628a27b823b9b4e1f8d32b1 (commit)
       via  6e2b2d15e8c3b7926cd7b300660698fa23644efc (commit)
       via  7cb536fa58d8cc837b4cb59680c7355a1687648b (commit)
       via  1e094e23db422cabe013ecbf7a0b465c4b096e12 (commit)
       via  2dec79b036796df75885abf4e1a977958f9c541d (commit)
       via  a3d45597b1f4ea9443d35370ebfa7925fdd5ce90 (commit)
       via  0d0092442c009b8b3e387da18f828f3f0518b709 (commit)
       via  a4edc2a4a740d3908b907682a85e227eee80683b (commit)
       via  f65530a60d7b74da723d16eccd84576c53575401 (commit)
       via  be141b88fe871c7e72b19a5cf1e0aa56bf28283a (commit)
       via  43dcf83e8b5332004bddd01be22476e68b1cef0f (commit)
       via  bb037e3872214d2b709964405775f476c6b3b550 (commit)
       via  53d04f5af565604b9cf5fd2e84d75549f8bb1c4f (commit)
       via  333f65cfbdc3cc4e19fc5029de409522d707b319 (commit)
       via  99992d17f51e59ff80d52d10cca2102389ee2d9b (commit)
       via  e2bfcb8bc5f030828754215aff1955f5ab4bd45a (commit)
       via  3885bc2e043ce123929acceaaa8dbbf20dbb8c12 (commit)
       via  3dec7045b24acdd53dc054bddcfd4c7f77739f00 (commit)
       via  845d6e6521b284a111534447919a6bc594573ee1 (commit)
       via  391a1d8378b4bc6b17b71904b3d6494160b51627 (commit)
      from  9676ee85d8f8fc64dfd4149cea5999de54e827a7 (commit)

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 b9aef91effaa4ddeb115579cff4c1a47b09b606c
Author: Tom Clegg <tom at curoverse.com>
Date:   Fri Jan 27 15:28:36 2017 -0500

    10690: De-duplicate dumpConfig.

diff --git a/sdk/go/config/dump.go b/sdk/go/config/dump.go
new file mode 100644
index 0000000..30dbb8a
--- /dev/null
+++ b/sdk/go/config/dump.go
@@ -0,0 +1,25 @@
+package config
+
+import (
+	"os"
+
+	"github.com/ghodss/yaml"
+)
+
+// DumpAndExit writes the given config to stdout as YAML. If an error
+// occurs, that error is returned. Otherwise, the program exits 0.
+//
+// Example:
+//
+//	log.Fatal(DumpAndExit(cfg))
+func DumpAndExit(cfg interface{}) error {
+	y, err := yaml.Marshal(cfg)
+	if err != nil {
+		return err
+	}
+	_, err = os.Stdout.Write(y)
+	if err != nil {
+		return err
+	}
+	os.Exit(0)
+}
diff --git a/services/arv-git-httpd/main.go b/services/arv-git-httpd/main.go
index 3ff1557..5b6ae61 100644
--- a/services/arv-git-httpd/main.go
+++ b/services/arv-git-httpd/main.go
@@ -10,7 +10,6 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"github.com/coreos/go-systemd/daemon"
-	"github.com/ghodss/yaml"
 )
 
 // Server configuration
@@ -66,12 +65,7 @@ func main() {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(theConfig)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(theConfig))
 	}
 
 	srv := &server{}
diff --git a/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go b/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
index b62b24b..f1f5d1e 100644
--- a/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
+++ b/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
@@ -19,7 +19,6 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"git.curoverse.com/arvados.git/sdk/go/dispatch"
 	"github.com/coreos/go-systemd/daemon"
-	"github.com/ghodss/yaml"
 )
 
 // Config used by crunch-dispatch-slurm
@@ -96,12 +95,7 @@ func doMain() error {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(theConfig)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(theConfig))
 	}
 
 	arv, err := arvadosclient.MakeArvadosClient()
diff --git a/services/keep-balance/main.go b/services/keep-balance/main.go
index 926a0f2..7d734cf 100644
--- a/services/keep-balance/main.go
+++ b/services/keep-balance/main.go
@@ -11,7 +11,6 @@ import (
 
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
-	"github.com/ghodss/yaml"
 )
 
 const defaultConfigPath = "/etc/arvados/keep-balance/keep-balance.yml"
@@ -91,12 +90,7 @@ func main() {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(config)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(theConfig))
 	}
 
 	if *debugFlag {
diff --git a/services/keep-web/main.go b/services/keep-web/main.go
index cd55355..5f4cb50 100644
--- a/services/keep-web/main.go
+++ b/services/keep-web/main.go
@@ -8,7 +8,6 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"github.com/coreos/go-systemd/daemon"
-	"github.com/ghodss/yaml"
 )
 
 var (
@@ -82,12 +81,7 @@ func main() {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(cfg)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(cfg))
 	}
 
 	os.Setenv("ARVADOS_API_HOST", cfg.Client.APIHost)
diff --git a/services/keepproxy/keepproxy.go b/services/keepproxy/keepproxy.go
index f159070..33f35e5 100644
--- a/services/keepproxy/keepproxy.go
+++ b/services/keepproxy/keepproxy.go
@@ -85,12 +85,7 @@ func main() {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(cfg)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(cfg))
 	}
 
 	arv, err := arvadosclient.New(&cfg.Client)
diff --git a/services/keepstore/keepstore.go b/services/keepstore/keepstore.go
index 5414795..9033de8 100644
--- a/services/keepstore/keepstore.go
+++ b/services/keepstore/keepstore.go
@@ -16,7 +16,6 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/keepclient"
 	log "github.com/Sirupsen/logrus"
 	"github.com/coreos/go-systemd/daemon"
-	"github.com/ghodss/yaml"
 )
 
 // A Keep "block" is 64MB.
@@ -105,12 +104,7 @@ func main() {
 	}
 
 	if *dumpConfig {
-		y, err := yaml.Marshal(theConfig)
-		if err != nil {
-			log.Fatal(err)
-		}
-		os.Stdout.Write(y)
-		os.Exit(0)
+		log.Fatal(config.DumpAndExit(theConfig))
 	}
 
 	err = theConfig.Start()

commit a61bee32ac9641c957593b9b25a763f3e95d8da1
Author: Tom Clegg <tom at curoverse.com>
Date:   Thu Jan 12 10:33:16 2017 -0500

    10690: Add -dump-config to arv-git-httpd, crunch-dispatch-slurm, keep-balance, keep-web, keepproxy.

diff --git a/services/arv-git-httpd/main.go b/services/arv-git-httpd/main.go
index 75645ff..3ff1557 100644
--- a/services/arv-git-httpd/main.go
+++ b/services/arv-git-httpd/main.go
@@ -10,6 +10,7 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"github.com/coreos/go-systemd/daemon"
+	"github.com/ghodss/yaml"
 )
 
 // Server configuration
@@ -44,6 +45,7 @@ func main() {
 		"Value for GITOLITE_HTTP_HOME environment variable. If not empty, GL_BYPASS_ACCESS_CHECKS=1 will also be set."+deprecated)
 
 	cfgPath := flag.String("config", defaultCfgPath, "Configuration file `path`.")
+	dumpConfig := flag.Bool("dump-config", false, "write current configuration to stdout and exit (useful for migrating from command line flags to config file)")
 	flag.Usage = usage
 	flag.Parse()
 
@@ -63,6 +65,15 @@ func main() {
 		}
 	}
 
+	if *dumpConfig {
+		y, err := yaml.Marshal(theConfig)
+		if err != nil {
+			log.Fatal(err)
+		}
+		os.Stdout.Write(y)
+		os.Exit(0)
+	}
+
 	srv := &server{}
 	if err := srv.Start(); err != nil {
 		log.Fatal(err)
diff --git a/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go b/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
index e768b50..b62b24b 100644
--- a/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
+++ b/services/crunch-dispatch-slurm/crunch-dispatch-slurm.go
@@ -5,11 +5,6 @@ package main
 import (
 	"flag"
 	"fmt"
-	"git.curoverse.com/arvados.git/sdk/go/arvados"
-	"git.curoverse.com/arvados.git/sdk/go/arvadosclient"
-	"git.curoverse.com/arvados.git/sdk/go/config"
-	"git.curoverse.com/arvados.git/sdk/go/dispatch"
-	"github.com/coreos/go-systemd/daemon"
 	"io"
 	"io/ioutil"
 	"log"
@@ -18,6 +13,13 @@ import (
 	"os/exec"
 	"strings"
 	"time"
+
+	"git.curoverse.com/arvados.git/sdk/go/arvados"
+	"git.curoverse.com/arvados.git/sdk/go/arvadosclient"
+	"git.curoverse.com/arvados.git/sdk/go/config"
+	"git.curoverse.com/arvados.git/sdk/go/dispatch"
+	"github.com/coreos/go-systemd/daemon"
+	"github.com/ghodss/yaml"
 )
 
 // Config used by crunch-dispatch-slurm
@@ -56,6 +58,10 @@ func doMain() error {
 		"config",
 		defaultConfigPath,
 		"`path` to JSON or YAML configuration file")
+	dumpConfig := flag.Bool(
+		"dump-config",
+		false,
+		"write current configuration to stdout and exit")
 
 	// Parse args; omit the first arg which is the command name
 	flags.Parse(os.Args[1:])
@@ -89,6 +95,15 @@ func doMain() error {
 		log.Printf("warning: Client credentials missing from config, so falling back on environment variables (deprecated).")
 	}
 
+	if *dumpConfig {
+		y, err := yaml.Marshal(theConfig)
+		if err != nil {
+			log.Fatal(err)
+		}
+		os.Stdout.Write(y)
+		os.Exit(0)
+	}
+
 	arv, err := arvadosclient.MakeArvadosClient()
 	if err != nil {
 		log.Printf("Error making Arvados client: %v", err)
diff --git a/services/keep-balance/main.go b/services/keep-balance/main.go
index 310c77a..926a0f2 100644
--- a/services/keep-balance/main.go
+++ b/services/keep-balance/main.go
@@ -11,6 +11,7 @@ import (
 
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
+	"github.com/ghodss/yaml"
 )
 
 const defaultConfigPath = "/etc/arvados/keep-balance/keep-balance.yml"
@@ -78,6 +79,7 @@ func main() {
 		"send pull requests (make more replicas of blocks that are underreplicated or are not in optimal rendezvous probe order)")
 	flag.BoolVar(&runOptions.CommitTrash, "commit-trash", false,
 		"send trash requests (delete unreferenced old blocks, and excess replicas of overreplicated blocks)")
+	dumpConfig := flag.Bool("dump-config", false, "write current configuration to stdout and exit")
 	dumpFlag := flag.Bool("dump", false, "dump details for each block to stdout")
 	debugFlag := flag.Bool("debug", false, "enable debug messages")
 	flag.Usage = usage
@@ -88,6 +90,15 @@ func main() {
 		mustReadConfig(&config.KeepServiceList, *serviceListPath)
 	}
 
+	if *dumpConfig {
+		y, err := yaml.Marshal(config)
+		if err != nil {
+			log.Fatal(err)
+		}
+		os.Stdout.Write(y)
+		os.Exit(0)
+	}
+
 	if *debugFlag {
 		debugf = log.Printf
 		if j, err := json.Marshal(config); err != nil {
diff --git a/services/keep-web/main.go b/services/keep-web/main.go
index df8a0b5..cd55355 100644
--- a/services/keep-web/main.go
+++ b/services/keep-web/main.go
@@ -8,6 +8,7 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/arvados"
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"github.com/coreos/go-systemd/daemon"
+	"github.com/ghodss/yaml"
 )
 
 var (
@@ -62,6 +63,8 @@ func main() {
 		"Only serve attachments at the given `host:port`"+deprecated)
 	flag.BoolVar(&cfg.TrustAllContent, "trust-all-content", false,
 		"Serve non-public content from a single origin. Dangerous: read docs before using!"+deprecated)
+	dumpConfig := flag.Bool("dump-config", false,
+		"write current configuration to stdout and exit")
 	flag.Usage = usage
 	flag.Parse()
 
@@ -78,6 +81,15 @@ func main() {
 		cfg.AnonymousTokens = []string{os.Getenv("ARVADOS_API_TOKEN")}
 	}
 
+	if *dumpConfig {
+		y, err := yaml.Marshal(cfg)
+		if err != nil {
+			log.Fatal(err)
+		}
+		os.Stdout.Write(y)
+		os.Exit(0)
+	}
+
 	os.Setenv("ARVADOS_API_HOST", cfg.Client.APIHost)
 	srv := &server{Config: cfg}
 	if err := srv.Start(); err != nil {
diff --git a/services/keepproxy/keepproxy.go b/services/keepproxy/keepproxy.go
index 24df531..f159070 100644
--- a/services/keepproxy/keepproxy.go
+++ b/services/keepproxy/keepproxy.go
@@ -1,7 +1,6 @@
 package main
 
 import (
-	"encoding/json"
 	"errors"
 	"flag"
 	"fmt"
@@ -22,6 +21,7 @@ import (
 	"git.curoverse.com/arvados.git/sdk/go/config"
 	"git.curoverse.com/arvados.git/sdk/go/keepclient"
 	"github.com/coreos/go-systemd/daemon"
+	"github.com/ghodss/yaml"
 	"github.com/gorilla/mux"
 )
 
@@ -62,6 +62,7 @@ func main() {
 	var cfgPath string
 	const defaultCfgPath = "/etc/arvados/keepproxy/keepproxy.yml"
 	flagset.StringVar(&cfgPath, "config", defaultCfgPath, "Configuration file `path`")
+	dumpConfig := flagset.Bool("dump-config", false, "write current configuration to stdout and exit")
 	flagset.Parse(os.Args[1:])
 
 	err := config.LoadFile(cfg, cfgPath)
@@ -77,12 +78,21 @@ func main() {
 		if regexp.MustCompile("^(?i:1|yes|true)$").MatchString(os.Getenv("ARVADOS_API_HOST_INSECURE")) {
 			cfg.Client.Insecure = true
 		}
-		if j, err := json.MarshalIndent(cfg, "", "    "); err == nil {
+		if y, err := yaml.Marshal(cfg); err == nil && !*dumpConfig {
 			log.Print("Current configuration:\n", string(j))
 		}
 		cfg.Timeout = arvados.Duration(time.Duration(*timeoutSeconds) * time.Second)
 	}
 
+	if *dumpConfig {
+		y, err := yaml.Marshal(cfg)
+		if err != nil {
+			log.Fatal(err)
+		}
+		os.Stdout.Write(y)
+		os.Exit(0)
+	}
+
 	arv, err := arvadosclient.New(&cfg.Client)
 	if err != nil {
 		log.Fatalf("Error setting up arvados client %s", err.Error())

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


hooks/post-receive
-- 




More information about the arvados-commits mailing list