From: Lucas Di Pentima Date: Wed, 8 Sep 2021 13:55:22 +0000 (-0300) Subject: Merge branch '17989-pysdk-timeout' into main. Refs #17989 X-Git-Tag: 2.3.0~81 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/c7dfdc3f58e993abad5ef7fb898ac137cca62e02?hp=ca109d685ba269ec82a433041cdcad6d229950c9 Merge branch '17989-pysdk-timeout' into main. Refs #17989 Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima --- diff --git a/apps/workbench/fpm-info.sh b/apps/workbench/fpm-info.sh index a1de4b2a5f..a09638a35e 100644 --- a/apps/workbench/fpm-info.sh +++ b/apps/workbench/fpm-info.sh @@ -6,6 +6,10 @@ case "$TARGET" in centos*) fpm_depends+=(git bison make automake gcc gcc-c++ graphviz shared-mime-info) ;; + ubuntu1804) + fpm_depends+=(git g++ bison zlib1g-dev make graphviz shared-mime-info) + fpm_conflicts+=(ruby-bundler) + ;; debian* | ubuntu*) fpm_depends+=(git g++ bison zlib1g-dev make graphviz shared-mime-info) ;; diff --git a/build/run-library.sh b/build/run-library.sh index 22bb065872..d0ddcd6c67 100755 --- a/build/run-library.sh +++ b/build/run-library.sh @@ -912,6 +912,7 @@ fpm_build () { declare -a fpm_args=() declare -a build_depends=() declare -a fpm_depends=() + declare -a fpm_conflicts=() declare -a fpm_exclude=() if [[ ! -d "$SRC_DIR" ]]; then echo >&2 "BUG: looking in wrong dir for fpm-info.sh: $pkgdir" @@ -947,6 +948,9 @@ fpm_build () { for i in "${fpm_depends[@]}"; do COMMAND_ARR+=('--depends' "$i") done + for i in "${fpm_conflicts[@]}"; do + COMMAND_ARR+=('--conflicts' "$i") + done for i in "${fpm_exclude[@]}"; do COMMAND_ARR+=('--exclude' "$i") done diff --git a/doc/admin/upgrading.html.textile.liquid b/doc/admin/upgrading.html.textile.liquid index 9e7410260f..399ec35d2b 100644 --- a/doc/admin/upgrading.html.textile.liquid +++ b/doc/admin/upgrading.html.textile.liquid @@ -35,10 +35,18 @@ TODO: extract this information based on git commit messages and generate changel
-h2(#main). development main (as of 2021-07-15) +h2(#main). development main (as of 2021-09-07) "Upgrading from 2.2.0":#v2_2_0 +h3. Ubuntu 18.04 packages for arvados-api-server and arvados-workbench now conflict with ruby-bundler + +Ubuntu 18.04 ships with Bundler version 1.16.1, which is no longer compatible with the Gemfiles in the Arvados packages (made with Bundler 2.2.19). The Ubuntu 18.04 packages for arvados-api-server and arvados-workbench now conflict with the ruby-bundler package to work around this issue. The post-install scripts for arvados-api-server and arvados-workbench install the proper version of Bundler as a gem. + +h3. Removed unused @update_uuid@ endpoint for users. + +The @update_uuid@ endpoint was superseded by the "link accounts feature":{{site.baseurl}}/admin/link-accounts.html, so it's no longer available. + h3. Removed deprecated '@@' search operator The '@@' full text search operator, previously deprecated, has been removed. To perform a string search across multiple columns, use the 'ilike' operator on 'any' column as described in the "available list method filter section":{{site.baseurl}}/api/methods.html#substringsearchfilter of the API documentation. diff --git a/doc/api/methods/users.html.textile.liquid b/doc/api/methods/users.html.textile.liquid index a4d4aade9b..5861ddbf76 100644 --- a/doc/api/methods/users.html.textile.liquid +++ b/doc/api/methods/users.html.textile.liquid @@ -112,19 +112,6 @@ table(table table-bordered table-condensed). {background:#ccffcc}.|uuid|string|The UUID of the User in question.|path|| |user|object|The new attributes.|query|| -h3(#update_uuid). update_uuid - -Change the UUID of an existing user, updating all database references accordingly. - -This method can only be used by an admin user. It should only be used when the affected user is idle. New references to the affected user that are established _while the update_uuid operation is in progress_ might not be migrated as expected. - -Arguments: - -table(table table-bordered table-condensed). -|_. Argument |_. Type |_. Description |_. Location |_. Example | -{background:#ccffcc}.|uuid|string|The current UUID of the user in question.|path|@zzzzz-tpzed-12345abcde12345@| -{background:#ccffcc}.|new_uuid|string|The desired new UUID. It is an error to use a UUID belonging to an existing user.|query|@zzzzz-tpzed-abcde12345abcde@| - h3. setup Set up a user. Adds the user to the "All users" group. Enables the user to invoke @activate@. See "user management":{{site.baseurl}}/admin/user-management.html for details. diff --git a/lib/controller/federation/conn.go b/lib/controller/federation/conn.go index 77bc97aed9..586ac23013 100644 --- a/lib/controller/federation/conn.go +++ b/lib/controller/federation/conn.go @@ -593,10 +593,6 @@ func (conn *Conn) UserUpdate(ctx context.Context, options arvados.UpdateOptions) return resp, err } -func (conn *Conn) UserUpdateUUID(ctx context.Context, options arvados.UpdateUUIDOptions) (arvados.User, error) { - return conn.local.UserUpdateUUID(ctx, options) -} - func (conn *Conn) UserMerge(ctx context.Context, options arvados.UserMergeOptions) (arvados.User, error) { return conn.local.UserMerge(ctx, options) } diff --git a/lib/controller/router/router.go b/lib/controller/router/router.go index 5ceabbfb1d..9826c1e744 100644 --- a/lib/controller/router/router.go +++ b/lib/controller/router/router.go @@ -398,13 +398,6 @@ func (rtr *router) addRoutes() { return rtr.backend.UserGet(ctx, *opts.(*arvados.GetOptions)) }, }, - { - arvados.EndpointUserUpdateUUID, - func() interface{} { return &arvados.UpdateUUIDOptions{} }, - func(ctx context.Context, opts interface{}) (interface{}, error) { - return rtr.backend.UserUpdateUUID(ctx, *opts.(*arvados.UpdateUUIDOptions)) - }, - }, { arvados.EndpointUserUpdate, func() interface{} { return &arvados.UpdateOptions{} }, diff --git a/lib/controller/rpc/conn.go b/lib/controller/rpc/conn.go index 940f2184b2..640bbf1c23 100644 --- a/lib/controller/rpc/conn.go +++ b/lib/controller/rpc/conn.go @@ -542,12 +542,6 @@ func (conn *Conn) UserUpdate(ctx context.Context, options arvados.UpdateOptions) err := conn.requestAndDecode(ctx, &resp, ep, nil, options) return resp, err } -func (conn *Conn) UserUpdateUUID(ctx context.Context, options arvados.UpdateUUIDOptions) (arvados.User, error) { - ep := arvados.EndpointUserUpdateUUID - var resp arvados.User - err := conn.requestAndDecode(ctx, &resp, ep, nil, options) - return resp, err -} func (conn *Conn) UserMerge(ctx context.Context, options arvados.UserMergeOptions) (arvados.User, error) { ep := arvados.EndpointUserMerge var resp arvados.User diff --git a/sdk/R/R/Arvados.R b/sdk/R/R/Arvados.R index 528a606650..52d6c95f5e 100644 --- a/sdk/R/R/Arvados.R +++ b/sdk/R/R/Arvados.R @@ -3,9 +3,9 @@ # SPDX-License-Identifier: Apache-2.0 #' api_clients.get -#' +#' #' api_clients.get is a method defined in Arvados class. -#' +#' #' @usage arv$api_clients.get(uuid) #' @param uuid The UUID of the ApiClient in question. #' @return ApiClient object. @@ -13,9 +13,9 @@ NULL #' api_clients.create -#' +#' #' api_clients.create is a method defined in Arvados class. -#' +#' #' @usage arv$api_clients.create(apiclient, #' ensure_unique_name = "false", cluster_id = NULL) #' @param apiClient ApiClient object. @@ -26,9 +26,9 @@ NULL NULL #' api_clients.update -#' +#' #' api_clients.update is a method defined in Arvados class. -#' +#' #' @usage arv$api_clients.update(apiclient, #' uuid) #' @param apiClient ApiClient object. @@ -38,9 +38,9 @@ NULL NULL #' api_clients.delete -#' +#' #' api_clients.delete is a method defined in Arvados class. -#' +#' #' @usage arv$api_clients.delete(uuid) #' @param uuid The UUID of the ApiClient in question. #' @return ApiClient object. @@ -48,21 +48,21 @@ NULL NULL #' api_clients.list -#' +#' #' api_clients.list is a method defined in Arvados class. -#' +#' #' @usage arv$api_clients.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return ApiClientList object. @@ -70,9 +70,9 @@ NULL NULL #' api_client_authorizations.get -#' +#' #' api_client_authorizations.get is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.get(uuid) #' @param uuid The UUID of the ApiClientAuthorization in question. #' @return ApiClientAuthorization object. @@ -80,9 +80,9 @@ NULL NULL #' api_client_authorizations.create -#' +#' #' api_client_authorizations.create is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.create(apiclientauthorization, #' ensure_unique_name = "false", cluster_id = NULL) #' @param apiClientAuthorization ApiClientAuthorization object. @@ -93,9 +93,9 @@ NULL NULL #' api_client_authorizations.update -#' +#' #' api_client_authorizations.update is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.update(apiclientauthorization, #' uuid) #' @param apiClientAuthorization ApiClientAuthorization object. @@ -105,9 +105,9 @@ NULL NULL #' api_client_authorizations.delete -#' +#' #' api_client_authorizations.delete is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.delete(uuid) #' @param uuid The UUID of the ApiClientAuthorization in question. #' @return ApiClientAuthorization object. @@ -115,42 +115,42 @@ NULL NULL #' api_client_authorizations.create_system_auth -#' +#' #' api_client_authorizations.create_system_auth is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.create_system_auth(api_client_id = NULL, #' scopes = NULL) -#' @param api_client_id -#' @param scopes +#' @param api_client_id +#' @param scopes #' @return ApiClientAuthorization object. #' @name api_client_authorizations.create_system_auth NULL #' api_client_authorizations.current -#' +#' #' api_client_authorizations.current is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.current(NULL) #' @return ApiClientAuthorization object. #' @name api_client_authorizations.current NULL #' api_client_authorizations.list -#' +#' #' api_client_authorizations.list is a method defined in Arvados class. -#' +#' #' @usage arv$api_client_authorizations.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return ApiClientAuthorizationList object. @@ -158,9 +158,9 @@ NULL NULL #' authorized_keys.get -#' +#' #' authorized_keys.get is a method defined in Arvados class. -#' +#' #' @usage arv$authorized_keys.get(uuid) #' @param uuid The UUID of the AuthorizedKey in question. #' @return AuthorizedKey object. @@ -168,9 +168,9 @@ NULL NULL #' authorized_keys.create -#' +#' #' authorized_keys.create is a method defined in Arvados class. -#' +#' #' @usage arv$authorized_keys.create(authorizedkey, #' ensure_unique_name = "false", cluster_id = NULL) #' @param authorizedKey AuthorizedKey object. @@ -181,9 +181,9 @@ NULL NULL #' authorized_keys.update -#' +#' #' authorized_keys.update is a method defined in Arvados class. -#' +#' #' @usage arv$authorized_keys.update(authorizedkey, #' uuid) #' @param authorizedKey AuthorizedKey object. @@ -193,9 +193,9 @@ NULL NULL #' authorized_keys.delete -#' +#' #' authorized_keys.delete is a method defined in Arvados class. -#' +#' #' @usage arv$authorized_keys.delete(uuid) #' @param uuid The UUID of the AuthorizedKey in question. #' @return AuthorizedKey object. @@ -203,21 +203,21 @@ NULL NULL #' authorized_keys.list -#' +#' #' authorized_keys.list is a method defined in Arvados class. -#' +#' #' @usage arv$authorized_keys.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return AuthorizedKeyList object. @@ -225,9 +225,9 @@ NULL NULL #' collections.get -#' +#' #' collections.get is a method defined in Arvados class. -#' +#' #' @usage arv$collections.get(uuid) #' @param uuid The UUID of the Collection in question. #' @return Collection object. @@ -235,9 +235,9 @@ NULL NULL #' collections.create -#' +#' #' collections.create is a method defined in Arvados class. -#' +#' #' @usage arv$collections.create(collection, #' ensure_unique_name = "false", cluster_id = NULL) #' @param collection Collection object. @@ -248,9 +248,9 @@ NULL NULL #' collections.update -#' +#' #' collections.update is a method defined in Arvados class. -#' +#' #' @usage arv$collections.update(collection, #' uuid) #' @param collection Collection object. @@ -260,9 +260,9 @@ NULL NULL #' collections.delete -#' +#' #' collections.delete is a method defined in Arvados class. -#' +#' #' @usage arv$collections.delete(uuid) #' @param uuid The UUID of the Collection in question. #' @return Collection object. @@ -270,62 +270,62 @@ NULL NULL #' collections.provenance -#' +#' #' collections.provenance is a method defined in Arvados class. -#' +#' #' @usage arv$collections.provenance(uuid) -#' @param uuid +#' @param uuid #' @return Collection object. #' @name collections.provenance NULL #' collections.used_by -#' +#' #' collections.used_by is a method defined in Arvados class. -#' +#' #' @usage arv$collections.used_by(uuid) -#' @param uuid +#' @param uuid #' @return Collection object. #' @name collections.used_by NULL #' collections.trash -#' +#' #' collections.trash is a method defined in Arvados class. -#' +#' #' @usage arv$collections.trash(uuid) -#' @param uuid +#' @param uuid #' @return Collection object. #' @name collections.trash NULL #' collections.untrash -#' +#' #' collections.untrash is a method defined in Arvados class. -#' +#' #' @usage arv$collections.untrash(uuid) -#' @param uuid +#' @param uuid #' @return Collection object. #' @name collections.untrash NULL #' collections.list -#' +#' #' collections.list is a method defined in Arvados class. -#' +#' #' @usage arv$collections.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL, #' include_trash = NULL, include_old_versions = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @param include_trash Include collections whose is_trashed attribute is true. @@ -335,9 +335,9 @@ NULL NULL #' containers.get -#' +#' #' containers.get is a method defined in Arvados class. -#' +#' #' @usage arv$containers.get(uuid) #' @param uuid The UUID of the Container in question. #' @return Container object. @@ -345,9 +345,9 @@ NULL NULL #' containers.create -#' +#' #' containers.create is a method defined in Arvados class. -#' +#' #' @usage arv$containers.create(container, #' ensure_unique_name = "false", cluster_id = NULL) #' @param container Container object. @@ -358,9 +358,9 @@ NULL NULL #' containers.update -#' +#' #' containers.update is a method defined in Arvados class. -#' +#' #' @usage arv$containers.update(container, #' uuid) #' @param container Container object. @@ -370,9 +370,9 @@ NULL NULL #' containers.delete -#' +#' #' containers.delete is a method defined in Arvados class. -#' +#' #' @usage arv$containers.delete(uuid) #' @param uuid The UUID of the Container in question. #' @return Container object. @@ -380,70 +380,70 @@ NULL NULL #' containers.auth -#' +#' #' containers.auth is a method defined in Arvados class. -#' +#' #' @usage arv$containers.auth(uuid) -#' @param uuid +#' @param uuid #' @return Container object. #' @name containers.auth NULL #' containers.lock -#' +#' #' containers.lock is a method defined in Arvados class. -#' +#' #' @usage arv$containers.lock(uuid) -#' @param uuid +#' @param uuid #' @return Container object. #' @name containers.lock NULL #' containers.unlock -#' +#' #' containers.unlock is a method defined in Arvados class. -#' +#' #' @usage arv$containers.unlock(uuid) -#' @param uuid +#' @param uuid #' @return Container object. #' @name containers.unlock NULL #' containers.secret_mounts -#' +#' #' containers.secret_mounts is a method defined in Arvados class. -#' +#' #' @usage arv$containers.secret_mounts(uuid) -#' @param uuid +#' @param uuid #' @return Container object. #' @name containers.secret_mounts NULL #' containers.current -#' +#' #' containers.current is a method defined in Arvados class. -#' +#' #' @usage arv$containers.current(NULL) #' @return Container object. #' @name containers.current NULL #' containers.list -#' +#' #' containers.list is a method defined in Arvados class. -#' +#' #' @usage arv$containers.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return ContainerList object. @@ -451,9 +451,9 @@ NULL NULL #' container_requests.get -#' +#' #' container_requests.get is a method defined in Arvados class. -#' +#' #' @usage arv$container_requests.get(uuid) #' @param uuid The UUID of the ContainerRequest in question. #' @return ContainerRequest object. @@ -461,9 +461,9 @@ NULL NULL #' container_requests.create -#' +#' #' container_requests.create is a method defined in Arvados class. -#' +#' #' @usage arv$container_requests.create(containerrequest, #' ensure_unique_name = "false", cluster_id = NULL) #' @param containerRequest ContainerRequest object. @@ -474,9 +474,9 @@ NULL NULL #' container_requests.update -#' +#' #' container_requests.update is a method defined in Arvados class. -#' +#' #' @usage arv$container_requests.update(containerrequest, #' uuid) #' @param containerRequest ContainerRequest object. @@ -486,9 +486,9 @@ NULL NULL #' container_requests.delete -#' +#' #' container_requests.delete is a method defined in Arvados class. -#' +#' #' @usage arv$container_requests.delete(uuid) #' @param uuid The UUID of the ContainerRequest in question. #' @return ContainerRequest object. @@ -496,22 +496,22 @@ NULL NULL #' container_requests.list -#' +#' #' container_requests.list is a method defined in Arvados class. -#' +#' #' @usage arv$container_requests.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL, #' include_trash = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @param include_trash Include container requests whose owner project is trashed. @@ -520,9 +520,9 @@ NULL NULL #' groups.get -#' +#' #' groups.get is a method defined in Arvados class. -#' +#' #' @usage arv$groups.get(uuid) #' @param uuid The UUID of the Group in question. #' @return Group object. @@ -530,9 +530,9 @@ NULL NULL #' groups.create -#' +#' #' groups.create is a method defined in Arvados class. -#' +#' #' @usage arv$groups.create(group, ensure_unique_name = "false", #' cluster_id = NULL, async = "false") #' @param group Group object. @@ -544,9 +544,9 @@ NULL NULL #' groups.update -#' +#' #' groups.update is a method defined in Arvados class. -#' +#' #' @usage arv$groups.update(group, uuid, #' async = "false") #' @param group Group object. @@ -557,9 +557,9 @@ NULL NULL #' groups.delete -#' +#' #' groups.delete is a method defined in Arvados class. -#' +#' #' @usage arv$groups.delete(uuid) #' @param uuid The UUID of the Group in question. #' @return Group object. @@ -567,26 +567,26 @@ NULL NULL #' groups.contents -#' +#' #' groups.contents is a method defined in Arvados class. -#' +#' #' @usage arv$groups.contents(filters = NULL, #' where = NULL, order = NULL, distinct = NULL, #' limit = "100", offset = "0", count = "exact", #' cluster_id = NULL, bypass_federation = NULL, #' include_trash = NULL, uuid = NULL, recursive = NULL, #' include = NULL) -#' @param filters -#' @param where -#' @param order -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @param include_trash Include items whose is_trashed attribute is true. -#' @param uuid +#' @param uuid #' @param recursive Include contents from child groups recursively. #' @param include Include objects referred to by listed field in "included" (only owner_uuid) #' @return Group object. @@ -594,67 +594,67 @@ NULL NULL #' groups.shared -#' +#' #' groups.shared is a method defined in Arvados class. -#' +#' #' @usage arv$groups.shared(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL, #' include_trash = NULL, include = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @param include_trash Include items whose is_trashed attribute is true. -#' @param include +#' @param include #' @return Group object. #' @name groups.shared NULL #' groups.trash -#' +#' #' groups.trash is a method defined in Arvados class. -#' +#' #' @usage arv$groups.trash(uuid) -#' @param uuid +#' @param uuid #' @return Group object. #' @name groups.trash NULL #' groups.untrash -#' +#' #' groups.untrash is a method defined in Arvados class. -#' +#' #' @usage arv$groups.untrash(uuid) -#' @param uuid +#' @param uuid #' @return Group object. #' @name groups.untrash NULL #' groups.list -#' +#' #' groups.list is a method defined in Arvados class. -#' +#' #' @usage arv$groups.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL, #' include_trash = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @param include_trash Include items whose is_trashed attribute is true. @@ -663,9 +663,9 @@ NULL NULL #' keep_services.get -#' +#' #' keep_services.get is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.get(uuid) #' @param uuid The UUID of the KeepService in question. #' @return KeepService object. @@ -673,9 +673,9 @@ NULL NULL #' keep_services.create -#' +#' #' keep_services.create is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.create(keepservice, #' ensure_unique_name = "false", cluster_id = NULL) #' @param keepService KeepService object. @@ -686,9 +686,9 @@ NULL NULL #' keep_services.update -#' +#' #' keep_services.update is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.update(keepservice, #' uuid) #' @param keepService KeepService object. @@ -698,9 +698,9 @@ NULL NULL #' keep_services.delete -#' +#' #' keep_services.delete is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.delete(uuid) #' @param uuid The UUID of the KeepService in question. #' @return KeepService object. @@ -708,30 +708,30 @@ NULL NULL #' keep_services.accessible -#' +#' #' keep_services.accessible is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.accessible(NULL) #' @return KeepService object. #' @name keep_services.accessible NULL #' keep_services.list -#' +#' #' keep_services.list is a method defined in Arvados class. -#' +#' #' @usage arv$keep_services.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return KeepServiceList object. @@ -739,9 +739,9 @@ NULL NULL #' links.get -#' +#' #' links.get is a method defined in Arvados class. -#' +#' #' @usage arv$links.get(uuid) #' @param uuid The UUID of the Link in question. #' @return Link object. @@ -749,9 +749,9 @@ NULL NULL #' links.create -#' +#' #' links.create is a method defined in Arvados class. -#' +#' #' @usage arv$links.create(link, ensure_unique_name = "false", #' cluster_id = NULL) #' @param link Link object. @@ -762,9 +762,9 @@ NULL NULL #' links.update -#' +#' #' links.update is a method defined in Arvados class. -#' +#' #' @usage arv$links.update(link, uuid) #' @param link Link object. #' @param uuid The UUID of the Link in question. @@ -773,9 +773,9 @@ NULL NULL #' links.delete -#' +#' #' links.delete is a method defined in Arvados class. -#' +#' #' @usage arv$links.delete(uuid) #' @param uuid The UUID of the Link in question. #' @return Link object. @@ -783,21 +783,21 @@ NULL NULL #' links.list -#' +#' #' links.list is a method defined in Arvados class. -#' +#' #' @usage arv$links.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return LinkList object. @@ -805,19 +805,19 @@ NULL NULL #' links.get_permissions -#' +#' #' links.get_permissions is a method defined in Arvados class. -#' +#' #' @usage arv$links.get_permissions(uuid) -#' @param uuid +#' @param uuid #' @return Link object. #' @name links.get_permissions NULL #' logs.get -#' +#' #' logs.get is a method defined in Arvados class. -#' +#' #' @usage arv$logs.get(uuid) #' @param uuid The UUID of the Log in question. #' @return Log object. @@ -825,9 +825,9 @@ NULL NULL #' logs.create -#' +#' #' logs.create is a method defined in Arvados class. -#' +#' #' @usage arv$logs.create(log, ensure_unique_name = "false", #' cluster_id = NULL) #' @param log Log object. @@ -838,9 +838,9 @@ NULL NULL #' logs.update -#' +#' #' logs.update is a method defined in Arvados class. -#' +#' #' @usage arv$logs.update(log, uuid) #' @param log Log object. #' @param uuid The UUID of the Log in question. @@ -849,9 +849,9 @@ NULL NULL #' logs.delete -#' +#' #' logs.delete is a method defined in Arvados class. -#' +#' #' @usage arv$logs.delete(uuid) #' @param uuid The UUID of the Log in question. #' @return Log object. @@ -859,21 +859,21 @@ NULL NULL #' logs.list -#' +#' #' logs.list is a method defined in Arvados class. -#' +#' #' @usage arv$logs.list(filters = NULL, where = NULL, #' order = NULL, select = NULL, distinct = NULL, #' limit = "100", offset = "0", count = "exact", #' cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return LogList object. @@ -881,9 +881,9 @@ NULL NULL #' users.get -#' +#' #' users.get is a method defined in Arvados class. -#' +#' #' @usage arv$users.get(uuid) #' @param uuid The UUID of the User in question. #' @return User object. @@ -891,9 +891,9 @@ NULL NULL #' users.create -#' +#' #' users.create is a method defined in Arvados class. -#' +#' #' @usage arv$users.create(user, ensure_unique_name = "false", #' cluster_id = NULL) #' @param user User object. @@ -904,21 +904,21 @@ NULL NULL #' users.update -#' +#' #' users.update is a method defined in Arvados class. -#' +#' #' @usage arv$users.update(user, uuid, bypass_federation = NULL) #' @param user User object. #' @param uuid The UUID of the User in question. -#' @param bypass_federation +#' @param bypass_federation #' @return User object. #' @name users.update NULL #' users.delete -#' +#' #' users.delete is a method defined in Arvados class. -#' +#' #' @usage arv$users.delete(uuid) #' @param uuid The UUID of the User in question. #' @return User object. @@ -926,101 +926,90 @@ NULL NULL #' users.current -#' +#' #' users.current is a method defined in Arvados class. -#' +#' #' @usage arv$users.current(NULL) #' @return User object. #' @name users.current NULL #' users.system -#' +#' #' users.system is a method defined in Arvados class. -#' +#' #' @usage arv$users.system(NULL) #' @return User object. #' @name users.system NULL #' users.activate -#' +#' #' users.activate is a method defined in Arvados class. -#' +#' #' @usage arv$users.activate(uuid) -#' @param uuid +#' @param uuid #' @return User object. #' @name users.activate NULL #' users.setup -#' +#' #' users.setup is a method defined in Arvados class. -#' +#' #' @usage arv$users.setup(uuid = NULL, user = NULL, #' repo_name = NULL, vm_uuid = NULL, send_notification_email = "false") -#' @param uuid -#' @param user -#' @param repo_name -#' @param vm_uuid -#' @param send_notification_email +#' @param uuid +#' @param user +#' @param repo_name +#' @param vm_uuid +#' @param send_notification_email #' @return User object. #' @name users.setup NULL #' users.unsetup -#' +#' #' users.unsetup is a method defined in Arvados class. -#' +#' #' @usage arv$users.unsetup(uuid) -#' @param uuid +#' @param uuid #' @return User object. #' @name users.unsetup NULL -#' users.update_uuid -#' -#' users.update_uuid is a method defined in Arvados class. -#' -#' @usage arv$users.update_uuid(uuid, new_uuid) -#' @param uuid -#' @param new_uuid -#' @return User object. -#' @name users.update_uuid -NULL - #' users.merge -#' +#' #' users.merge is a method defined in Arvados class. -#' +#' #' @usage arv$users.merge(new_owner_uuid, #' new_user_token = NULL, redirect_to_new_user = NULL, #' old_user_uuid = NULL, new_user_uuid = NULL) -#' @param new_owner_uuid -#' @param new_user_token -#' @param redirect_to_new_user -#' @param old_user_uuid -#' @param new_user_uuid +#' @param new_owner_uuid +#' @param new_user_token +#' @param redirect_to_new_user +#' @param old_user_uuid +#' @param new_user_uuid #' @return User object. #' @name users.merge NULL #' users.list -#' +#' #' users.list is a method defined in Arvados class. -#' +#' #' @usage arv$users.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return UserList object. @@ -1028,9 +1017,9 @@ NULL NULL #' repositories.get -#' +#' #' repositories.get is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.get(uuid) #' @param uuid The UUID of the Repository in question. #' @return Repository object. @@ -1038,9 +1027,9 @@ NULL NULL #' repositories.create -#' +#' #' repositories.create is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.create(repository, #' ensure_unique_name = "false", cluster_id = NULL) #' @param repository Repository object. @@ -1051,9 +1040,9 @@ NULL NULL #' repositories.update -#' +#' #' repositories.update is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.update(repository, #' uuid) #' @param repository Repository object. @@ -1063,9 +1052,9 @@ NULL NULL #' repositories.delete -#' +#' #' repositories.delete is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.delete(uuid) #' @param uuid The UUID of the Repository in question. #' @return Repository object. @@ -1073,30 +1062,30 @@ NULL NULL #' repositories.get_all_permissions -#' +#' #' repositories.get_all_permissions is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.get_all_permissions(NULL) #' @return Repository object. #' @name repositories.get_all_permissions NULL #' repositories.list -#' +#' #' repositories.list is a method defined in Arvados class. -#' +#' #' @usage arv$repositories.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return RepositoryList object. @@ -1104,9 +1093,9 @@ NULL NULL #' virtual_machines.get -#' +#' #' virtual_machines.get is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.get(uuid) #' @param uuid The UUID of the VirtualMachine in question. #' @return VirtualMachine object. @@ -1114,9 +1103,9 @@ NULL NULL #' virtual_machines.create -#' +#' #' virtual_machines.create is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.create(virtualmachine, #' ensure_unique_name = "false", cluster_id = NULL) #' @param virtualMachine VirtualMachine object. @@ -1127,9 +1116,9 @@ NULL NULL #' virtual_machines.update -#' +#' #' virtual_machines.update is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.update(virtualmachine, #' uuid) #' @param virtualMachine VirtualMachine object. @@ -1139,9 +1128,9 @@ NULL NULL #' virtual_machines.delete -#' +#' #' virtual_machines.delete is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.delete(uuid) #' @param uuid The UUID of the VirtualMachine in question. #' @return VirtualMachine object. @@ -1149,40 +1138,40 @@ NULL NULL #' virtual_machines.logins -#' +#' #' virtual_machines.logins is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.logins(uuid) -#' @param uuid +#' @param uuid #' @return VirtualMachine object. #' @name virtual_machines.logins NULL #' virtual_machines.get_all_logins -#' +#' #' virtual_machines.get_all_logins is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.get_all_logins(NULL) #' @return VirtualMachine object. #' @name virtual_machines.get_all_logins NULL #' virtual_machines.list -#' +#' #' virtual_machines.list is a method defined in Arvados class. -#' +#' #' @usage arv$virtual_machines.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return VirtualMachineList object. @@ -1190,9 +1179,9 @@ NULL NULL #' workflows.get -#' +#' #' workflows.get is a method defined in Arvados class. -#' +#' #' @usage arv$workflows.get(uuid) #' @param uuid The UUID of the Workflow in question. #' @return Workflow object. @@ -1200,9 +1189,9 @@ NULL NULL #' workflows.create -#' +#' #' workflows.create is a method defined in Arvados class. -#' +#' #' @usage arv$workflows.create(workflow, #' ensure_unique_name = "false", cluster_id = NULL) #' @param workflow Workflow object. @@ -1213,9 +1202,9 @@ NULL NULL #' workflows.update -#' +#' #' workflows.update is a method defined in Arvados class. -#' +#' #' @usage arv$workflows.update(workflow, #' uuid) #' @param workflow Workflow object. @@ -1225,9 +1214,9 @@ NULL NULL #' workflows.delete -#' +#' #' workflows.delete is a method defined in Arvados class. -#' +#' #' @usage arv$workflows.delete(uuid) #' @param uuid The UUID of the Workflow in question. #' @return Workflow object. @@ -1235,21 +1224,21 @@ NULL NULL #' workflows.list -#' +#' #' workflows.list is a method defined in Arvados class. -#' +#' #' @usage arv$workflows.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return WorkflowList object. @@ -1257,9 +1246,9 @@ NULL NULL #' user_agreements.get -#' +#' #' user_agreements.get is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.get(uuid) #' @param uuid The UUID of the UserAgreement in question. #' @return UserAgreement object. @@ -1267,9 +1256,9 @@ NULL NULL #' user_agreements.create -#' +#' #' user_agreements.create is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.create(useragreement, #' ensure_unique_name = "false", cluster_id = NULL) #' @param userAgreement UserAgreement object. @@ -1280,9 +1269,9 @@ NULL NULL #' user_agreements.update -#' +#' #' user_agreements.update is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.update(useragreement, #' uuid) #' @param userAgreement UserAgreement object. @@ -1292,9 +1281,9 @@ NULL NULL #' user_agreements.delete -#' +#' #' user_agreements.delete is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.delete(uuid) #' @param uuid The UUID of the UserAgreement in question. #' @return UserAgreement object. @@ -1302,39 +1291,39 @@ NULL NULL #' user_agreements.signatures -#' +#' #' user_agreements.signatures is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.signatures(NULL) #' @return UserAgreement object. #' @name user_agreements.signatures NULL #' user_agreements.sign -#' +#' #' user_agreements.sign is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.sign(NULL) #' @return UserAgreement object. #' @name user_agreements.sign NULL #' user_agreements.list -#' +#' #' user_agreements.list is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.list(filters = NULL, #' where = NULL, order = NULL, select = NULL, #' distinct = NULL, limit = "100", offset = "0", #' count = "exact", cluster_id = NULL, bypass_federation = NULL) -#' @param filters -#' @param where -#' @param order -#' @param select -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param select +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param cluster_id List objects on a remote federated cluster instead of the current one. #' @param bypass_federation bypass federation behavior, list items from local instance database only #' @return UserAgreementList object. @@ -1342,27 +1331,27 @@ NULL NULL #' user_agreements.new -#' +#' #' user_agreements.new is a method defined in Arvados class. -#' +#' #' @usage arv$user_agreements.new(NULL) #' @return UserAgreement object. #' @name user_agreements.new NULL #' configs.get -#' +#' #' configs.get is a method defined in Arvados class. -#' +#' #' @usage arv$configs.get(NULL) #' @return object. #' @name configs.get NULL #' project.get -#' +#' #' projects.get is equivalent to groups.get method. -#' +#' #' @usage arv$projects.get(uuid) #' @param uuid The UUID of the Group in question. #' @return Group object. @@ -1370,9 +1359,9 @@ NULL NULL #' project.create -#' +#' #' projects.create wrapps groups.create method by setting group_class attribute to "project". -#' +#' #' @usage arv$projects.create(group, ensure_unique_name = "false") #' @param group Group object. #' @param ensure_unique_name Adjust name to ensure uniqueness instead of returning an error on (owner_uuid, name) collision. @@ -1381,9 +1370,9 @@ NULL NULL #' project.update -#' +#' #' projects.update wrapps groups.update method by setting group_class attribute to "project". -#' +#' #' @usage arv$projects.update(group, uuid) #' @param group Group object. #' @param uuid The UUID of the Group in question. @@ -1392,9 +1381,9 @@ NULL NULL #' project.delete -#' +#' #' projects.delete is equivalent to groups.delete method. -#' +#' #' @usage arv$project.delete(uuid) #' @param uuid The UUID of the Group in question. #' @return Group object. @@ -1402,22 +1391,22 @@ NULL NULL #' project.list -#' +#' #' projects.list wrapps groups.list method by setting group_class attribute to "project". -#' +#' #' @usage arv$projects.list(filters = NULL, #' where = NULL, order = NULL, distinct = NULL, #' limit = "100", offset = "0", count = "exact", #' include_trash = NULL, uuid = NULL, recursive = NULL) -#' @param filters -#' @param where -#' @param order -#' @param distinct -#' @param limit -#' @param offset -#' @param count +#' @param filters +#' @param where +#' @param order +#' @param distinct +#' @param limit +#' @param offset +#' @param count #' @param include_trash Include items whose is_trashed attribute is true. -#' @param uuid +#' @param uuid #' @param recursive Include contents from child groups recursively. #' @return Group object. #' @name projects.list @@ -1537,7 +1526,6 @@ NULL #' \item{}{\code{\link{users.system}}} #' \item{}{\code{\link{users.unsetup}}} #' \item{}{\code{\link{users.update}}} -#' \item{}{\code{\link{users.update_uuid}}} #' \item{}{\code{\link{virtual_machines.create}}} #' \item{}{\code{\link{virtual_machines.delete}}} #' \item{}{\code{\link{virtual_machines.get}}} @@ -1640,19 +1628,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_clients/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1661,24 +1649,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_clients") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(apiclient) > 0) - body <- jsonlite::toJSON(list(apiclient = apiclient), + body <- jsonlite::toJSON(list(apiclient = apiclient), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1686,23 +1674,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_clients/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(apiclient) > 0) - body <- jsonlite::toJSON(list(apiclient = apiclient), + body <- jsonlite::toJSON(list(apiclient = apiclient), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1710,19 +1698,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_clients/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1733,22 +1721,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_clients") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1756,19 +1744,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1777,24 +1765,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(apiclientauthorization) > 0) - body <- jsonlite::toJSON(list(apiclientauthorization = apiclientauthorization), + body <- jsonlite::toJSON(list(apiclientauthorization = apiclientauthorization), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1802,23 +1790,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(apiclientauthorization) > 0) - body <- jsonlite::toJSON(list(apiclientauthorization = apiclientauthorization), + body <- jsonlite::toJSON(list(apiclientauthorization = apiclientauthorization), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1826,19 +1814,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1846,20 +1834,20 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations/create_system_auth") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(api_client_id = api_client_id, scopes = scopes) - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1867,19 +1855,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations/current") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1890,22 +1878,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("api_client_authorizations") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1913,19 +1901,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("authorized_keys/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1934,24 +1922,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("authorized_keys") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(authorizedkey) > 0) - body <- jsonlite::toJSON(list(authorizedkey = authorizedkey), + body <- jsonlite::toJSON(list(authorizedkey = authorizedkey), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1959,23 +1947,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("authorized_keys/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(authorizedkey) > 0) - body <- jsonlite::toJSON(list(authorizedkey = authorizedkey), + body <- jsonlite::toJSON(list(authorizedkey = authorizedkey), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -1983,19 +1971,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("authorized_keys/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2006,22 +1994,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("authorized_keys") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2029,19 +2017,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2050,24 +2038,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(collection) > 0) - body <- jsonlite::toJSON(list(collection = collection), + body <- jsonlite::toJSON(list(collection = collection), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2075,23 +2063,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(collection) > 0) - body <- jsonlite::toJSON(list(collection = collection), + body <- jsonlite::toJSON(list(collection = collection), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2099,19 +2087,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2119,19 +2107,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}/provenance") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2139,19 +2127,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}/used_by") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2159,19 +2147,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}/trash") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2179,19 +2167,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections/${uuid}/untrash") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2203,23 +2191,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("collections") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation, include_trash = include_trash, include_old_versions = include_old_versions) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2227,19 +2215,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2248,24 +2236,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(container) > 0) - body <- jsonlite::toJSON(list(container = container), + body <- jsonlite::toJSON(list(container = container), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2273,23 +2261,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(container) > 0) - body <- jsonlite::toJSON(list(container = container), + body <- jsonlite::toJSON(list(container = container), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2297,19 +2285,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2317,19 +2305,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}/auth") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2337,19 +2325,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}/lock") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2357,19 +2345,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}/unlock") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2377,19 +2365,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/${uuid}/secret_mounts") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2397,19 +2385,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers/current") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2420,22 +2408,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("containers") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2443,19 +2431,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("container_requests/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2464,24 +2452,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("container_requests") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(containerrequest) > 0) - body <- jsonlite::toJSON(list(containerrequest = containerrequest), + body <- jsonlite::toJSON(list(containerrequest = containerrequest), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2489,23 +2477,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("container_requests/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(containerrequest) > 0) - body <- jsonlite::toJSON(list(containerrequest = containerrequest), + body <- jsonlite::toJSON(list(containerrequest = containerrequest), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2513,19 +2501,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("container_requests/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2537,23 +2525,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("container_requests") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation, include_trash = include_trash) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2561,19 +2549,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2582,24 +2570,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id, async = async) - + if(length(group) > 0) - body <- jsonlite::toJSON(list(group = group), + body <- jsonlite::toJSON(list(group = group), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2607,23 +2595,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(async = async) - + if(length(group) > 0) - body <- jsonlite::toJSON(list(group = group), + body <- jsonlite::toJSON(list(group = group), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2631,19 +2619,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2656,23 +2644,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/contents") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation, include_trash = include_trash, uuid = uuid, recursive = recursive, include = include) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2684,23 +2672,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/shared") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation, include_trash = include_trash, include = include) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2708,19 +2696,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/${uuid}/trash") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2728,19 +2716,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups/${uuid}/untrash") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2752,23 +2740,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("groups") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation, include_trash = include_trash) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2776,19 +2764,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2797,24 +2785,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(keepservice) > 0) - body <- jsonlite::toJSON(list(keepservice = keepservice), + body <- jsonlite::toJSON(list(keepservice = keepservice), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2822,23 +2810,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(keepservice) > 0) - body <- jsonlite::toJSON(list(keepservice = keepservice), + body <- jsonlite::toJSON(list(keepservice = keepservice), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2846,19 +2834,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2866,19 +2854,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services/accessible") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2889,22 +2877,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("keep_services") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2912,19 +2900,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("links/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2933,24 +2921,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("links") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(link) > 0) - body <- jsonlite::toJSON(list(link = link), + body <- jsonlite::toJSON(list(link = link), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2958,23 +2946,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("links/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(link) > 0) - body <- jsonlite::toJSON(list(link = link), + body <- jsonlite::toJSON(list(link = link), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -2982,19 +2970,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("links/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3005,22 +2993,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("links") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3028,19 +3016,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("permissions/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3048,19 +3036,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("logs/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3069,24 +3057,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("logs") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(log) > 0) - body <- jsonlite::toJSON(list(log = log), + body <- jsonlite::toJSON(list(log = log), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3094,23 +3082,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("logs/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(log) > 0) - body <- jsonlite::toJSON(list(log = log), + body <- jsonlite::toJSON(list(log = log), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3118,19 +3106,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("logs/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3141,22 +3129,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("logs") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3164,19 +3152,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3185,24 +3173,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(user) > 0) - body <- jsonlite::toJSON(list(user = user), + body <- jsonlite::toJSON(list(user = user), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3210,23 +3198,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(bypass_federation = bypass_federation) - + if(length(user) > 0) - body <- jsonlite::toJSON(list(user = user), + body <- jsonlite::toJSON(list(user = user), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3234,19 +3222,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3254,19 +3242,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/current") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3274,19 +3262,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/system") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3294,19 +3282,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/${uuid}/activate") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3315,21 +3303,21 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/setup") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(uuid = uuid, user = user, repo_name = repo_name, vm_uuid = vm_uuid, send_notification_email = send_notification_email) - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3337,39 +3325,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/${uuid}/unsetup") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - - body <- NULL - - response <- private$REST$http$exec("POST", url, headers, body, - queryArgs, private$numRetries) - resource <- private$REST$httpParser$parseJSONResponse(response) - - if(!is.null(resource$errors)) - stop(resource$errors) - - resource - }, - users.update_uuid = function(uuid, new_uuid) - { - endPoint <- stringr::str_interp("users/${uuid}/update_uuid") - url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), - "Content-Type" = "application/json") - queryArgs <- list(new_uuid = new_uuid) - body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3379,21 +3347,21 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users/merge") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(new_owner_uuid = new_owner_uuid, new_user_token = new_user_token, redirect_to_new_user = redirect_to_new_user, old_user_uuid = old_user_uuid, new_user_uuid = new_user_uuid) - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3404,22 +3372,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("users") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3427,19 +3395,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3448,24 +3416,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(repository) > 0) - body <- jsonlite::toJSON(list(repository = repository), + body <- jsonlite::toJSON(list(repository = repository), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3473,23 +3441,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(repository) > 0) - body <- jsonlite::toJSON(list(repository = repository), + body <- jsonlite::toJSON(list(repository = repository), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3497,19 +3465,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3517,19 +3485,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories/get_all_permissions") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3540,22 +3508,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("repositories") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3563,19 +3531,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3584,24 +3552,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(virtualmachine) > 0) - body <- jsonlite::toJSON(list(virtualmachine = virtualmachine), + body <- jsonlite::toJSON(list(virtualmachine = virtualmachine), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3609,23 +3577,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(virtualmachine) > 0) - body <- jsonlite::toJSON(list(virtualmachine = virtualmachine), + body <- jsonlite::toJSON(list(virtualmachine = virtualmachine), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3633,19 +3601,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3653,19 +3621,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines/${uuid}/logins") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3673,19 +3641,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines/get_all_logins") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3696,22 +3664,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("virtual_machines") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3719,19 +3687,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("workflows/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3740,24 +3708,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("workflows") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(workflow) > 0) - body <- jsonlite::toJSON(list(workflow = workflow), + body <- jsonlite::toJSON(list(workflow = workflow), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3765,23 +3733,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("workflows/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(workflow) > 0) - body <- jsonlite::toJSON(list(workflow = workflow), + body <- jsonlite::toJSON(list(workflow = workflow), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3789,19 +3757,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("workflows/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3812,22 +3780,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("workflows") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3835,19 +3803,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3856,24 +3824,24 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(ensure_unique_name = ensure_unique_name, cluster_id = cluster_id) - + if(length(useragreement) > 0) - body <- jsonlite::toJSON(list(useragreement = useragreement), + body <- jsonlite::toJSON(list(useragreement = useragreement), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3881,23 +3849,23 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + if(length(useragreement) > 0) - body <- jsonlite::toJSON(list(useragreement = useragreement), + body <- jsonlite::toJSON(list(useragreement = useragreement), auto_unbox = TRUE) else body <- NULL - + response <- private$REST$http$exec("PUT", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3905,19 +3873,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/${uuid}") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("DELETE", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3925,19 +3893,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/signatures") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3945,19 +3913,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/sign") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("POST", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3968,22 +3936,22 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- list(filters = filters, where = where, order = order, select = select, distinct = distinct, limit = limit, offset = offset, count = count, cluster_id = cluster_id, bypass_federation = bypass_federation) - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -3991,19 +3959,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("user_agreements/new") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, @@ -4011,19 +3979,19 @@ Arvados <- R6::R6Class( { endPoint <- stringr::str_interp("config") url <- paste0(private$host, endPoint) - headers <- list(Authorization = paste("Bearer", private$token), + headers <- list(Authorization = paste("Bearer", private$token), "Content-Type" = "application/json") queryArgs <- NULL - + body <- NULL - + response <- private$REST$http$exec("GET", url, headers, body, queryArgs, private$numRetries) resource <- private$REST$httpParser$parseJSONResponse(response) - + if(!is.null(resource$errors)) stop(resource$errors) - + resource }, diff --git a/sdk/R/man/Arvados.Rd b/sdk/R/man/Arvados.Rd index 51f98d81dc..b55dd00dc5 100644 --- a/sdk/R/man/Arvados.Rd +++ b/sdk/R/man/Arvados.Rd @@ -171,7 +171,6 @@ Arvados class gives users ability to access Arvados REST API. \item{}{\code{\link{users.system}}} \item{}{\code{\link{users.unsetup}}} \item{}{\code{\link{users.update}}} - \item{}{\code{\link{users.update_uuid}}} \item{}{\code{\link{virtual_machines.create}}} \item{}{\code{\link{virtual_machines.delete}}} \item{}{\code{\link{virtual_machines.get}}} diff --git a/sdk/R/man/users.update_uuid.Rd b/sdk/R/man/users.update_uuid.Rd deleted file mode 100644 index af62c2c825..0000000000 --- a/sdk/R/man/users.update_uuid.Rd +++ /dev/null @@ -1,19 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/Arvados.R -\name{users.update_uuid} -\alias{users.update_uuid} -\title{users.update_uuid} -\usage{ -arv$users.update_uuid(uuid, new_uuid) -} -\arguments{ -\item{uuid}{} - -\item{new_uuid}{} -} -\value{ -User object. -} -\description{ -users.update_uuid is a method defined in Arvados class. -} diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go index 736ace75e7..b429e80084 100644 --- a/sdk/go/arvados/api.go +++ b/sdk/go/arvados/api.go @@ -75,7 +75,6 @@ var ( EndpointUserSystem = APIEndpoint{"GET", "arvados/v1/users/system", ""} EndpointUserUnsetup = APIEndpoint{"POST", "arvados/v1/users/{uuid}/unsetup", ""} EndpointUserUpdate = APIEndpoint{"PATCH", "arvados/v1/users/{uuid}", "user"} - EndpointUserUpdateUUID = APIEndpoint{"POST", "arvados/v1/users/{uuid}/update_uuid", ""} EndpointUserBatchUpdate = APIEndpoint{"PATCH", "arvados/v1/users/batch_update", ""} EndpointUserAuthenticate = APIEndpoint{"POST", "arvados/v1/users/authenticate", ""} EndpointAPIClientAuthorizationCurrent = APIEndpoint{"GET", "arvados/v1/api_client_authorizations/current", ""} @@ -154,11 +153,6 @@ type GroupContentsOptions struct { ExcludeHomeProject bool `json:"exclude_home_project"` } -type UpdateUUIDOptions struct { - UUID string `json:"uuid"` - NewUUID string `json:"new_uuid"` -} - type UserActivateOptions struct { UUID string `json:"uuid"` } @@ -265,7 +259,6 @@ type API interface { SpecimenDelete(ctx context.Context, options DeleteOptions) (Specimen, error) UserCreate(ctx context.Context, options CreateOptions) (User, error) UserUpdate(ctx context.Context, options UpdateOptions) (User, error) - UserUpdateUUID(ctx context.Context, options UpdateUUIDOptions) (User, error) UserMerge(ctx context.Context, options UserMergeOptions) (User, error) UserActivate(ctx context.Context, options UserActivateOptions) (User, error) UserSetup(ctx context.Context, options UserSetupOptions) (map[string]interface{}, error) diff --git a/sdk/go/arvadostest/api.go b/sdk/go/arvadostest/api.go index f255aeb2d0..8bf01693c4 100644 --- a/sdk/go/arvadostest/api.go +++ b/sdk/go/arvadostest/api.go @@ -193,10 +193,6 @@ func (as *APIStub) UserUpdate(ctx context.Context, options arvados.UpdateOptions as.appendCall(ctx, as.UserUpdate, options) return arvados.User{}, as.Error } -func (as *APIStub) UserUpdateUUID(ctx context.Context, options arvados.UpdateUUIDOptions) (arvados.User, error) { - as.appendCall(ctx, as.UserUpdateUUID, options) - return arvados.User{}, as.Error -} func (as *APIStub) UserActivate(ctx context.Context, options arvados.UserActivateOptions) (arvados.User, error) { as.appendCall(ctx, as.UserActivate, options) return arvados.User{}, as.Error diff --git a/services/api/app/controllers/arvados/v1/users_controller.rb b/services/api/app/controllers/arvados/v1/users_controller.rb index ff4aecac47..54db521768 100644 --- a/services/api/app/controllers/arvados/v1/users_controller.rb +++ b/services/api/app/controllers/arvados/v1/users_controller.rb @@ -10,7 +10,7 @@ class Arvados::V1::UsersController < ApplicationController [:activate, :current, :system, :setup, :merge, :batch_update] skip_before_action :render_404_if_no_object, only: [:activate, :current, :system, :setup, :merge, :batch_update] - before_action :admin_required, only: [:setup, :unsetup, :update_uuid, :batch_update] + before_action :admin_required, only: [:setup, :unsetup, :batch_update] # Internal API used by controller to update local cache of user # records from LoginCluster. @@ -161,13 +161,6 @@ class Arvados::V1::UsersController < ApplicationController show end - # Change UUID to a new (unused) uuid and transfer all owned/linked - # objects accordingly. - def update_uuid - @object.update_uuid(new_uuid: params[:new_uuid]) - show - end - def merge if (params[:old_user_uuid] || params[:new_user_uuid]) if !current_user.andand.is_admin @@ -277,14 +270,6 @@ class Arvados::V1::UsersController < ApplicationController }) end - def self._update_uuid_requires_parameters - { - new_uuid: { - type: 'string', required: true, - }, - } - end - def apply_filters(model_class=nil) return super if @read_users.any?(&:is_admin) if params[:uuid] != current_user.andand.uuid diff --git a/services/api/app/models/user.rb b/services/api/app/models/user.rb index da7e7b310d..2e862d3ae6 100644 --- a/services/api/app/models/user.rb +++ b/services/api/app/models/user.rb @@ -362,37 +362,6 @@ SELECT target_uuid, perm_level end end - def update_uuid(new_uuid:) - if !current_user.andand.is_admin - raise PermissionDeniedError - end - if uuid == system_user_uuid || uuid == anonymous_user_uuid - raise "update_uuid cannot update system accounts" - end - if self.class != self.class.resource_class_for_uuid(new_uuid) - raise "invalid new_uuid #{new_uuid.inspect}" - end - transaction(requires_new: true) do - reload - old_uuid = self.uuid - self.uuid = new_uuid - save!(validate: false) - change_all_uuid_refs(old_uuid: old_uuid, new_uuid: new_uuid) - ActiveRecord::Base.connection.exec_update %{ -update #{PERMISSION_VIEW} set user_uuid=$1 where user_uuid = $2 -}, - 'User.update_uuid.update_permissions_user_uuid', - [[nil, new_uuid], - [nil, old_uuid]] - ActiveRecord::Base.connection.exec_update %{ -update #{PERMISSION_VIEW} set target_uuid=$1 where target_uuid = $2 -}, - 'User.update_uuid.update_permissions_target_uuid', - [[nil, new_uuid], - [nil, old_uuid]] - end - end - # Move this user's (i.e., self's) owned items to new_owner_uuid and # new_user_uuid (for things normally owned directly by the user). # diff --git a/services/api/config/routes.rb b/services/api/config/routes.rb index 6975858035..738426b1d8 100644 --- a/services/api/config/routes.rb +++ b/services/api/config/routes.rb @@ -81,7 +81,6 @@ Rails.application.routes.draw do post 'activate', on: :member post 'setup', on: :collection post 'unsetup', on: :member - post 'update_uuid', on: :member post 'merge', on: :collection patch 'batch_update', on: :collection end diff --git a/services/api/fpm-info.sh b/services/api/fpm-info.sh index b8ba801aca..570f4601c5 100644 --- a/services/api/fpm-info.sh +++ b/services/api/fpm-info.sh @@ -8,6 +8,10 @@ case "$TARGET" in centos*) fpm_depends+=(libcurl-devel postgresql-devel bison make automake gcc gcc-c++ postgresql shared-mime-info) ;; + ubuntu1804) + fpm_depends+=(libcurl-ssl-dev libpq-dev g++ bison zlib1g-dev make postgresql-client shared-mime-info) + fpm_conflicts+=(ruby-bundler) + ;; debian* | ubuntu*) fpm_depends+=(libcurl-ssl-dev libpq-dev g++ bison zlib1g-dev make postgresql-client shared-mime-info) ;; diff --git a/services/api/test/functional/arvados/v1/users_controller_test.rb b/services/api/test/functional/arvados/v1/users_controller_test.rb index e0f7b8970d..c807a7d6cb 100644 --- a/services/api/test/functional/arvados/v1/users_controller_test.rb +++ b/services/api/test/functional/arvados/v1/users_controller_test.rb @@ -800,27 +800,6 @@ The Arvados team. "user's writable_by should include its owner_uuid") end - [ - [:admin, true], - [:active, false], - ].each do |auth_user, expect_success| - test "update_uuid as #{auth_user}" do - authorize_with auth_user - orig_uuid = users(:active).uuid - post :update_uuid, params: { - id: orig_uuid, - new_uuid: 'zbbbb-tpzed-abcde12345abcde', - } - if expect_success - assert_response :success - assert_empty User.where(uuid: orig_uuid) - else - assert_response 403 - assert_not_empty User.where(uuid: orig_uuid) - end - end - end - test "merge with redirect_to_user_uuid=false" do authorize_with :project_viewer_trustedclient tok = api_client_authorizations(:project_viewer).api_token diff --git a/services/api/test/unit/owner_test.rb b/services/api/test/unit/owner_test.rb index e356f4d9fa..aa0ac5f361 100644 --- a/services/api/test/unit/owner_test.rb +++ b/services/api/test/unit/owner_test.rb @@ -92,12 +92,8 @@ class OwnerTest < ActiveSupport::TestCase "new #{o_class} should really be in DB") old_uuid = o.uuid new_uuid = o.uuid.sub(/..........$/, rand(2**256).to_s(36)[0..9]) - if o.respond_to? :update_uuid - o.update_uuid(new_uuid: new_uuid) - else - assert(o.update_attributes(uuid: new_uuid), - "should change #{o_class} uuid from #{old_uuid} to #{new_uuid}") - end + assert(o.update_attributes(uuid: new_uuid), + "should change #{o_class} uuid from #{old_uuid} to #{new_uuid}") assert_equal(false, o_class.where(uuid: old_uuid).any?, "#{old_uuid} should disappear when renamed to #{new_uuid}") end @@ -142,21 +138,4 @@ class OwnerTest < ActiveSupport::TestCase check_permissions_against_full_refresh end - test "change uuid of User that owns self" do - o = User.create! - assert User.where(uuid: o.uuid).any?, "new User should really be in DB" - assert_equal(true, o.update_attributes(owner_uuid: o.uuid), - "setting owner to self should work") - old_uuid = o.uuid - new_uuid = o.uuid.sub(/..........$/, rand(2**256).to_s(36)[0..9]) - o.update_uuid(new_uuid: new_uuid) - o = User.find_by_uuid(new_uuid) - assert_equal(false, User.where(uuid: old_uuid).any?, - "#{old_uuid} should not be in DB after deleting") - assert_equal(true, User.where(uuid: new_uuid).any?, - "#{new_uuid} should be in DB after renaming") - assert_equal(new_uuid, User.where(uuid: new_uuid).first.owner_uuid, - "#{new_uuid} should be its own owner in DB after renaming") - end - end diff --git a/services/api/test/unit/user_test.rb b/services/api/test/unit/user_test.rb index f973c6ba1f..c00164c0a3 100644 --- a/services/api/test/unit/user_test.rb +++ b/services/api/test/unit/user_test.rb @@ -686,72 +686,6 @@ class UserTest < ActiveSupport::TestCase end end - [ - [:active, 'zzzzz-borkd-abcde12345abcde'], - [:active, 'zzzzz-j7d0g-abcde12345abcde'], - [:active, 'zzzzz-tpzed-borkd'], - [:system_user, 'zzzzz-tpzed-abcde12345abcde'], - [:anonymous, 'zzzzz-tpzed-abcde12345abcde'], - ].each do |fixture, new_uuid| - test "disallow update_uuid #{fixture} -> #{new_uuid}" do - u = users(fixture) - orig_uuid = u.uuid - act_as_system_user do - assert_raises do - u.update_uuid(new_uuid: new_uuid) - end - end - # "Successfully aborted orig->new" outcome looks the same as - # "successfully updated new->orig". - assert_update_success(old_uuid: new_uuid, - new_uuid: orig_uuid, - expect_owned_objects: fixture == :active) - end - end - - [:active, :spectator, :admin].each do |target| - test "update_uuid on #{target} as non-admin user" do - act_as_user users(:active) do - assert_raises(ArvadosModel::PermissionDeniedError) do - users(target).update_uuid(new_uuid: 'zzzzz-tpzed-abcde12345abcde') - end - end - end - end - - test "update_uuid to existing uuid" do - u = users(:active) - orig_uuid = u.uuid - new_uuid = users(:admin).uuid - act_as_system_user do - assert_raises do - u.update_uuid(new_uuid: new_uuid) - end - end - u.reload - assert_equal u.uuid, orig_uuid - assert_not_empty Collection.where(owner_uuid: orig_uuid) - assert_not_empty Group.where(owner_uuid: orig_uuid) - end - - [ - [:active, 'zbbbb-tpzed-abcde12345abcde'], - [:active, 'zzzzz-tpzed-abcde12345abcde'], - [:admin, 'zbbbb-tpzed-abcde12345abcde'], - [:admin, 'zzzzz-tpzed-abcde12345abcde'], - ].each do |fixture, new_uuid| - test "update_uuid #{fixture} to unused uuid #{new_uuid}" do - u = users(fixture) - orig_uuid = u.uuid - act_as_system_user do - u.update_uuid(new_uuid: new_uuid) - end - assert_update_success(old_uuid: orig_uuid, - new_uuid: new_uuid, - expect_owned_objects: fixture == :active) - end - end - def assert_update_success(old_uuid:, new_uuid:, expect_owned_objects: true) [[User, :uuid], [Link, :head_uuid], diff --git a/services/fuse/arvados_fuse/fusedir.py b/services/fuse/arvados_fuse/fusedir.py index 2b963d9a68..d5a018ae88 100644 --- a/services/fuse/arvados_fuse/fusedir.py +++ b/services/fuse/arvados_fuse/fusedir.py @@ -2,11 +2,6 @@ # # SPDX-License-Identifier: AGPL-3.0 -from __future__ import absolute_import -from __future__ import division -from future.utils import viewitems -from future.utils import itervalues -from builtins import dict import apiclient import arvados import errno @@ -196,7 +191,7 @@ class Directory(FreshBase): def in_use(self): if super(Directory, self).in_use(): return True - for v in itervalues(self._entries): + for v in self._entries.values(): if v.in_use(): return True return False @@ -204,7 +199,7 @@ class Directory(FreshBase): def has_ref(self, only_children): if super(Directory, self).has_ref(only_children): return True - for v in itervalues(self._entries): + for v in self._entries.values(): if v.has_ref(False): return True return False @@ -226,7 +221,7 @@ class Directory(FreshBase): # Find self on the parent in order to invalidate this path. # Calling the public items() method might trigger a refresh, # which we definitely don't want, so read the internal dict directly. - for k,v in viewitems(parent._entries): + for k,v in parent._entries.items(): if v is self: self.inodes.invalidate_entry(parent, k) break @@ -347,9 +342,10 @@ class CollectionDirectoryBase(Directory): def populate(self, mtime): self._mtime = mtime - self.collection.subscribe(self.on_event) - for entry, item in viewitems(self.collection): - self.new_entry(entry, item, self.mtime()) + with self.collection.lock: + self.collection.subscribe(self.on_event) + for entry, item in self.collection.items(): + self.new_entry(entry, item, self.mtime()) def writable(self): return self.collection.writable() @@ -496,6 +492,7 @@ class CollectionDirectory(CollectionDirectoryBase): return _logger.debug("Updating collection %s inode %s to record version %s", self.collection_locator, self.inode, to_record_version) + new_collection_record = None if self.collection is not None: if self.collection.known_past_version(to_record_version): _logger.debug("%s already processed %s", self.collection_locator, to_record_version) @@ -522,12 +519,13 @@ class CollectionDirectory(CollectionDirectoryBase): if 'storage_classes_desired' not in new_collection_record: new_collection_record['storage_classes_desired'] = coll_reader.storage_classes_desired() - if self.collection_record is None or self.collection_record["portable_data_hash"] != new_collection_record.get("portable_data_hash"): - self.new_collection(new_collection_record, coll_reader) - - self._manifest_size = len(coll_reader.manifest_text()) - _logger.debug("%s manifest_size %i", self, self._manifest_size) # end with llfuse.lock_released, re-acquire lock + if (new_collection_record is not None and + (self.collection_record is None or + self.collection_record["portable_data_hash"] != new_collection_record.get("portable_data_hash"))): + self.new_collection(new_collection_record, coll_reader) + self._manifest_size = len(coll_reader.manifest_text()) + _logger.debug("%s manifest_size %i", self, self._manifest_size) self.fresh() return True @@ -1230,7 +1228,7 @@ class SharedDirectory(Directory): # end with llfuse.lock_released, re-acquire lock - self.merge(viewitems(contents), + self.merge(contents.items(), lambda i: i[0], lambda a, i: a.uuid() == i[1]['uuid'], lambda i: ProjectDirectory(self.inode, self.inodes, self.api, self.num_retries, i[1], poll=self._poll, poll_time=self._poll_time, storage_classes=self.storage_classes)) diff --git a/services/fuse/tests/test_exec.py b/services/fuse/tests/test_exec.py index c90e7fd8df..6af60302bc 100644 --- a/services/fuse/tests/test_exec.py +++ b/services/fuse/tests/test_exec.py @@ -21,6 +21,7 @@ except: def try_exec(mnt, cmd): try: + os.environ['KEEP_LOCAL_STORE'] = tempfile.mkdtemp() arvados_fuse.command.Mount( arvados_fuse.command.ArgumentParser().parse_args([ '--read-write', diff --git a/services/fuse/tests/test_mount.py b/services/fuse/tests/test_mount.py index 82e5c441eb..157f55e4a4 100644 --- a/services/fuse/tests/test_mount.py +++ b/services/fuse/tests/test_mount.py @@ -15,6 +15,7 @@ import os import subprocess import time import unittest +import tempfile import arvados import arvados_fuse as fuse @@ -788,10 +789,15 @@ class FuseDeleteProjectEventTest(MountTestBase): attempt(self.assertEqual, [], llfuse.listdir(os.path.join(self.mounttmp, "aproject"))) -def fuseFileConflictTestHelper(mounttmp): +def fuseFileConflictTestHelper(mounttmp, uuid, keeptmp, settings): class Test(unittest.TestCase): def runTest(self): + os.environ['KEEP_LOCAL_STORE'] = keeptmp + with open(os.path.join(mounttmp, "file1.txt"), "w") as f: + with arvados.collection.Collection(uuid, api_client=arvados.api_from_config('v1', apiconfig=settings)) as collection2: + with collection2.open("file1.txt", "w") as f2: + f2.write("foo") f.write("bar") d1 = sorted(llfuse.listdir(os.path.join(mounttmp))) @@ -820,12 +826,8 @@ class FuseFileConflictTest(MountTestBase): d1 = llfuse.listdir(os.path.join(self.mounttmp)) self.assertEqual([], sorted(d1)) - with arvados.collection.Collection(collection.manifest_locator(), api_client=self.api) as collection2: - with collection2.open("file1.txt", "w") as f: - f.write("foo") - # See note in MountTestBase.setUp - self.pool.apply(fuseFileConflictTestHelper, (self.mounttmp,)) + self.pool.apply(fuseFileConflictTestHelper, (self.mounttmp, collection.manifest_locator(), self.keeptmp, arvados.config.settings())) def fuseUnlinkOpenFileTest(mounttmp): diff --git a/services/keepstore/volume.go b/services/keepstore/volume.go index 3f7c9cb79b..cf0b7a3902 100644 --- a/services/keepstore/volume.go +++ b/services/keepstore/volume.go @@ -371,6 +371,9 @@ func makeRRVolumeManager(logger logrus.FieldLogger, cluster *arvados.Cluster, my sort.Slice(vm.writables, func(i, j int) bool { return less(vm.writables[i], vm.writables[j]) }) + sort.Slice(vm.mounts, func(i, j int) bool { + return less(vm.mounts[i], vm.mounts[j]) + }) return vm, nil }