Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/delthas/gomavenproxy
A small HTTP server to let users transparently upload Maven artifacts to an FTP server
https://github.com/delthas/gomavenproxy
ftp http-proxy maven repository
Last synced: 1 day ago
JSON representation
A small HTTP server to let users transparently upload Maven artifacts to an FTP server
- Host: GitHub
- URL: https://github.com/delthas/gomavenproxy
- Owner: delthas
- License: mit
- Created: 2020-03-03T16:40:52.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-03-03T16:41:40.000Z (almost 5 years ago)
- Last Synced: 2023-03-08T17:33:52.547Z (almost 2 years ago)
- Topics: ftp, http-proxy, maven, repository
- Language: Go
- Size: 3.91 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gomavenproxy [![builds.sr.ht status](https://builds.sr.ht/~delthas/gomavenproxy.svg)](https://builds.sr.ht/~delthas/gomavenproxy?)
A small HTTP server to let users transparently upload Maven artifacts to an FTP server.
*Project stability: successfully tested in a production environment.*
## Setup
- copy `gomavenproxy.example.yml` and edit it
- run `gomavenproxy -config gomavenproxy.yml`## Usage
For a `build.gradle` file:
```
repositories {
maven {
url 'http://gomaven.proxy:12345'
credentials {
username "ftp_username"
password "ftp_password"
}
}
}
```For a `build.gradle.kts` file:
```
repositories {
maven {
url = uri("http://gomaven.proxy:12345")
credentials {
username = "ftp_username"
password = "ftp_password"
}
}
}
```## Rationale
Maven does have a Wagon plugin to support deploying artifacts by FTP.
Gradle supports publishing modules by FTP with the deprecated `maven` plugin, which in particular does not support [Gradle Module Metadata](https://docs.gradle.org/current/userguide/publishing_gradle_module_metadata.html).
For the new `maven-publish` plugin, only [a few protocols are supported](https://docs.gradle.org/current/userguide/declaring_repositories.html#sec:supported_transport_protocols), but not FTP.
This HTTP to FTP proxy lets you use `maven-publish` on an FTP repository by proxying it as an HTTP repository.
## Builds
| OS | URL |
|---|---|
| Linux x64 | https://delthas.fr/gomavenproxy/linux/gomavenproxy |
| Mac OS X x64 | https://delthas.fr/gomavenproxy/mac/gomavenproxy |
| Windows x64 | https://delthas.fr/gomavenproxy/windows/gomavenproxy.exe |