Merge branch 'master' of git.curoverse.com:arvados into 11876-r-sdk
authorFuad Muhic <fmuhic@capeannenterprises.com>
Wed, 6 Dec 2017 09:22:38 +0000 (10:22 +0100)
committerFuad Muhic <fmuhic@capeannenterprises.com>
Wed, 6 Dec 2017 09:22:38 +0000 (10:22 +0100)
Arvados-DCO-1.1-Signed-off-by: Fuad Muhic <fmuhic@capeannenterprises.com>

12 files changed:
build/run-build-packages-one-target.sh
build/run-build-packages.sh
build/run-tests.sh
doc/_config.yml
doc/user/topics/arvados-sync-groups.html.textile.liquid [moved from doc/user/topics/arv-sync-groups.html.textile.liquid with 77% similarity]
services/api/app/controllers/arvados/v1/schema_controller.rb
services/api/config/application.default.yml
tools/arv-sync-groups/.gitignore [deleted file]
tools/arvbox/lib/arvbox/docker/api-setup.sh
tools/sync-groups/.gitignore [new file with mode: 0644]
tools/sync-groups/sync-groups.go [moved from tools/arv-sync-groups/arv-sync-groups.go with 98% similarity]
tools/sync-groups/sync-groups_test.go [moved from tools/arv-sync-groups/arv-sync-groups_test.go with 100% similarity]

index 7f75624af64351a293f57d723d87962223b4805f..0db305114e39cf3e77852457bcfc364ddb3fca7a 100755 (executable)
@@ -97,6 +97,15 @@ set -e
 
 if [[ -n "$test_packages" ]]; then
     if [[ -n "$(find $WORKSPACE/packages/$TARGET -name '*.rpm')" ]] ; then
+       set +e
+       /usr/bin/which createrepo >/dev/null
+       if [[ "$?" != "0" ]]; then
+               echo >&2
+               echo >&2 "Error: please install createrepo. E.g. sudo apt-get install createrepo"
+               echo >&2
+               exit 1
+       fi
+       set -e
         createrepo $WORKSPACE/packages/$TARGET
     fi
 
index 7ce4323e2c59113454cdd59e0ffe4a08c4da7f5a..57e99e809c04905c37fd0602ae2652ccd5372083 100755 (executable)
@@ -340,7 +340,7 @@ fi
 # Go binaries
 cd $WORKSPACE/packages/$TARGET
 export GOPATH=$(mktemp -d)
-go get -v github.com/kardianos/govendor
+go get github.com/kardianos/govendor
 package_go_binary sdk/go/crunchrunner crunchrunner \
     "Crunchrunner executes a command inside a container and uploads the output"
 package_go_binary services/arv-git-httpd arvados-git-httpd \
@@ -365,7 +365,7 @@ package_go_binary services/keep-web keep-web \
     "Static web hosting service for user data stored in Arvados Keep"
 package_go_binary services/ws arvados-ws \
     "Arvados Websocket server"
-package_go_binary tools/arv-sync-groups arv-sync-groups \
+package_go_binary tools/sync-groups arvados-sync-groups \
     "Synchronize remote groups into Arvados from an external source"
 package_go_binary tools/keep-block-check keep-block-check \
     "Verify that all data from one set of Keep servers to another was copied"
index 365931d33281d533e88442d2beb7b9f7f454878f..ebdf4c413d896a0a85a09315ad86f31498b1a062 100755 (executable)
@@ -104,7 +104,7 @@ sdk/go/asyncbuf
 sdk/go/stats
 sdk/go/crunchrunner
 sdk/cwl
-tools/arv-sync-groups
+tools/sync-groups
 tools/crunchstat-summary
 tools/keep-exercise
 tools/keep-rsync
@@ -849,7 +849,7 @@ gostuff=(
     tools/keep-block-check
     tools/keep-exercise
     tools/keep-rsync
-    tools/arv-sync-groups
+    tools/sync-groups
 )
 for g in "${gostuff[@]}"
 do
index e8a899c004c1c257ee05d36d757ac42644eca10a..7b992d6c9453ec87f43dd80fe044c94da2ad256b 100644 (file)
@@ -74,7 +74,7 @@ navbar:
       - user/topics/run-command.html.textile.liquid
       - user/reference/job-pipeline-ref.html.textile.liquid
       - user/examples/crunch-examples.html.textile.liquid
-      - user/topics/arv-sync-groups.html.textile.liquid
+      - user/topics/arvados-sync-groups.html.textile.liquid
     - Query the metadata database:
       - user/topics/tutorial-trait-search.html.textile.liquid
     - Arvados License:
similarity index 77%
rename from doc/user/topics/arv-sync-groups.html.textile.liquid
rename to doc/user/topics/arvados-sync-groups.html.textile.liquid
index e2a42c8954f2f300b01012b265e73265e0011efd..c9f74b5aa840deb25cd7557805609eca8200fb33 100644 (file)
@@ -1,7 +1,7 @@
 ---
 layout: default
 navsection: userguide
-title: "Using arv-sync-groups"
+title: "Using arvados-sync-groups"
 ...
 {% comment %}
 Copyright (C) The Arvados Authors. All rights reserved.
@@ -9,9 +9,9 @@ Copyright (C) The Arvados Authors. All rights reserved.
 SPDX-License-Identifier: CC-BY-SA-3.0
 {% endcomment %}
 
-The @arv-sync-groups@ tool allows to synchronize remote groups into Arvados from an external source.
+The @arvados-sync-groups@ tool allows to synchronize remote groups into Arvados from an external source.
 
-h1. Using arv-sync-groups
+h1. Using arvados-sync-groups
 
 This tool reads a CSV (comma-separated values) file having information about external groups and their members. When running it for the first time, it'll create a special group named 'Externally synchronized groups' meant to be the parent of all the remote groups.
 
@@ -22,7 +22,7 @@ Users can be identified by their email address or username: the tool will check
 This tool is designed to be run periodically reading a file created by a remote auth system (ie: LDAP) dump script, applying what's included on the file as the source of truth.
 
 
-bq. NOTE: @arv-sync-groups@ needs to perform several administrative tasks on Arvados, so must be run using a superuser token
+bq. NOTE: @arvados-sync-groups@ needs to perform several administrative tasks on Arvados, so must be run using a superuser token
 
 h2. Options
 
@@ -41,13 +41,13 @@ h2. Examples
 To sync groups using the username to identify every account, reading from some @external_groups.csv@ file, the command should be called as follows:
 
 <notextile>
-<pre><code>~$ <span class="userinput">arv-sync-groups --user-id username /path/to/external_groups.csv </span>
+<pre><code>~$ <span class="userinput">arvados-sync-groups --user-id username /path/to/external_groups.csv </span>
 </code></pre>
 </notextile>
 
 If you want to use a specific preexisting group as the parent of all the remote groups, you can do it this way:
 
 <notextile>
-<pre><code>~$ <span class="userinput">arv-sync-groups --parent-group-uuid &lt;preexisting group UUID&gt; --user-id username /path/to/external_groups.csv </span>
+<pre><code>~$ <span class="userinput">arvados-sync-groups --parent-group-uuid &lt;preexisting group UUID&gt; --user-id username /path/to/external_groups.csv </span>
 </code></pre>
 </notextile>
index 6f893bcc850015b7c682243e1913ac121dbf9551..3adbe9e387ff5caa446af117939aa38c6b0d9fa2 100644 (file)
@@ -51,6 +51,7 @@ class Arvados::V1::SchemaController < ApplicationController
         crunchLogPartialLineThrottlePeriod: Rails.application.config.crunch_log_partial_line_throttle_period,
         websocketUrl: Rails.application.config.websocket_address,
         workbenchUrl: Rails.application.config.workbench_address,
+        keepWebServiceUrl: Rails.application.config.keep_web_service_url,
         parameters: {
           alt: {
             type: "string",
index 2f32556733b1a8a186bc3ad51a540518c485ac57..778c3d4d95b324277cf70a61991d1a9b2d40bcee 100644 (file)
@@ -446,6 +446,13 @@ common:
   # Server expects request header of the format "Authorization: Bearer xxx"
   ManagementToken: false
 
+  # URL of keep-web service.  Provides read/write access to collections via
+  # HTTP and WebDAV protocols.
+  #
+  # Example:
+  # keep_web_service_url: https://download.uuid_prefix.arvadosapi.com/
+  keep_web_service_url: false
+
 development:
   force_ssl: false
   cache_classes: false
diff --git a/tools/arv-sync-groups/.gitignore b/tools/arv-sync-groups/.gitignore
deleted file mode 100644 (file)
index bed2e5e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-arv-sync-groups
index de64b06e6305e3be0d80a181c83ceb87c4ac9ce0..1618c11e42d4e2378cc7ca076f10b2ba67a9b44f 100755 (executable)
@@ -65,6 +65,7 @@ $RAILS_ENV:
   auto_setup_new_users_with_repository: true
   default_collection_replication: 1
   docker_image_formats: ["v2"]
+  keep_web_service_url: http://$localip:${services[keep-web]}/
 EOF
 
 (cd config && /usr/local/lib/arvbox/application_yml_override.py)
diff --git a/tools/sync-groups/.gitignore b/tools/sync-groups/.gitignore
new file mode 100644 (file)
index 0000000..a06aa76
--- /dev/null
@@ -0,0 +1 @@
+sync-groups
similarity index 98%
rename from tools/arv-sync-groups/arv-sync-groups.go
rename to tools/sync-groups/sync-groups.go
index 6b4781c3549627f0f9874cc0be734b611b41c5dd..ebc40b13cb8c2ad2ec8152df975d6a0863ffc45b 100644 (file)
@@ -130,7 +130,7 @@ func ParseFlags(config *ConfigParams) error {
                "username": true,
        }
 
-       flags := flag.NewFlagSet("arv-sync-groups", flag.ExitOnError)
+       flags := flag.NewFlagSet(os.Args[0], flag.ExitOnError)
 
        // Set up usage message
        flags.Usage = func() {
@@ -166,7 +166,7 @@ func ParseFlags(config *ConfigParams) error {
 
        // Print version information if requested
        if *getVersion {
-               fmt.Printf("arv-sync-groups %s\n", version)
+               fmt.Printf("%s %s\n", os.Args[0], version)
                os.Exit(0)
        }
 
@@ -288,7 +288,7 @@ func doMain(cfg *ConfigParams) error {
        }
        defer f.Close()
 
-       log.Printf("arv-sync-groups %s started. Using %q as users id and parent group UUID %q", version, cfg.UserID, cfg.ParentGroupUUID)
+       log.Printf("%s %s started. Using %q as users id and parent group UUID %q", os.Args[0], version, cfg.UserID, cfg.ParentGroupUUID)
 
        // Get the complete user list to minimize API Server requests
        allUsers := make(map[string]arvados.User)