17994: Document new filtering capabilities.
[arvados.git] / doc / sdk / go / index.html.textile.liquid
index 6996a4ed0bc84d6728d2b70ece3b0c116ff5bd30..709b0d52435c237e83eef8e6ee3ad180982a1182 100644 (file)
@@ -2,99 +2,27 @@
 layout: default
 navsection: sdk
 navmenu: Go
-title: "Go SDK"
-
+title: "Installation"
 ...
+{% comment %}
+Copyright (C) The Arvados Authors. All rights reserved.
 
-The Go ("Golang":http://golang.org) SDK provides a generic set of wrappers so you can make API calls easily.
-
-h3. Installation
-
-You don't need to install anything. Just import the client like this. The go tools will fetch the relevant code and dependencies for you.
+SPDX-License-Identifier: CC-BY-SA-3.0
+{% endcomment %}
 
-<notextile>
-<pre><code class="userinput">import (
-       "git.curoverse.com/arvados.git/sdk/go/keepclient"
-       "git.curoverse.com/arvados.git/sdk/go/arvadosclient"
-)
-</code></pre>
-</notextile>
+The Go ("Golang":http://golang.org) SDK provides a generic set of wrappers so you can make API calls easily.
 
-If you need pre-release client code, you can use the latest version from the repo by following "these instructions.":https://arvados.org/projects/arvados/wiki/Go#Using-Go-with-Arvados
+See "Arvados GoDoc":https://godoc.org/git.arvados.org/arvados.git/sdk/go for detailed documentation.
 
-h3. Examples
+h3. Installation
 
-Import the module. (We import the log module here too, so we can use it in the subsequent examples.)
+Use @go get git.arvados.org/arvados.git/sdk/go/arvadosclient@.  The go tools will fetch the relevant code and dependencies for you.
 
-<notextile>
-<pre><code class="userinput">import (
-       "git.curoverse.com/arvados.git/sdk/go/keepclient"
-       "git.curoverse.com/arvados.git/sdk/go/arvadosclient"
-       "log"
+{% codeblock as go %}
+import (
+       "git.arvados.org/arvados.git/sdk/go/arvadosclient"
+       "git.arvados.org/arvados.git/sdk/go/keepclient"
 )
-</code></pre>
-</notextile>
-
-Set up an API client user agent:
-
-<notextile>
-<pre><code class="userinput">  arv, err := arvadosclient.MakeArvadosClient()
-       if err != nil {
-               log.Fatalf("Error setting up arvados client %s", err.Error())
-       }
-</code></pre>
-</notextile>
-
-Get the User object for the current user:
-
-<notextile>
-<pre><code class="userinput">  type user struct {
-               Uuid       string   `json:"uuid"`
-               FullName   string   `json:"full_name"`
-       }
-
-       var u user
-       err := arv.Call("GET", "users", "", "current", nil, &u)
-
-       if err != nil {
-               return err
-       }
-
-       log.Printf("Logged in as %s (uuid %s)", user.Uuid, user.FullName)
-</code></pre>
-</notextile>
-
-Print all returned fields for collections:
-
-<notextile>
-<pre><code class="userinput">  var collections map[string]interface{}
-
-       params := arvadosclient.Dict{"limit": 10}
-
-       err = arv.Call("GET", "collections", "", "", params, &collections)
-       if err != nil {
-               log.Fatalf("error querying collections", err.Error())
-       }
-
-       for key, value := range collections {
-               if key == "items" {
-                       items := value.([]interface{})
-                       for index, item := range items {
-                               fmt.Println("===========  ", index, "  ===========")
-                               item_map := item.(map[string]interface{})
-                               if len(item_map) == 0 {
-                                       fmt.Println("item", index, ": empty map")
-                               } else {
-                                       for k,v := range item_map {
-                                               fmt.Println(index, k, ":", v)
-                                       }
-                               }
-                       }
-               } else {
-                       fmt.Println(key, ":", value)
-               }
-       }
-</code></pre>
-</notextile>
+{% endcodeblock %}
 
-A few more usage examples can be found in the services/keepproxy and sdk/go/keepclient directories in the arvados source tree.
+If you need pre-release client code, you can use the latest version from the repo by following "these instructions.":https://dev.arvados.org/projects/arvados/wiki/Go#Using-Go-with-Arvados