Why does Gradle do not offer a builtin http client/dsl/abstraction to upload files? Of course you can easily add a dependency to the http client library you want to use, but Gradle already uses Apache http client under the hood and downloading/uploading files is common use-case when integrate the build with other systems, like uploading test results.