Giter Site home page Giter Site logo

dzikoysk / reposilite Goto Github PK

View Code? Open in Web Editor NEW
1.3K 19.0 177.0 116.8 MB

Lightweight and easy-to-use repository management software dedicated for the Maven based artifacts in the JVM ecosystem 📦

Home Page: https://reposilite.com

License: Apache License 2.0

HTML 0.45% Dockerfile 0.17% JavaScript 10.18% Vue 11.52% CSS 0.95% Shell 0.26% Kotlin 75.82% Java 0.66%
maven repository-management deploy maven-repository artifact-repository-manager repository-manager gradle sbt javalin hacktoberfest

reposilite's Introduction

reposilite's People

Contributors

astahiell avatar bergerkiller avatar chachydev avatar codesplode avatar dependabot[bot] avatar dzikoysk avatar fklappan avatar github-actions[bot] avatar houkunlin avatar insertt avatar jolheiser avatar joshuasing avatar kili668 avatar minecraftschurli avatar mkrueger92 avatar northpl93 avatar pauliesnug avatar rchomczyk avatar rebarbora-mckvak avatar rollczi avatar sagesphinx63920 avatar saladoc avatar sudhinm avatar tree4free avatar upcraftlp avatar withoutaname25 avatar wvffle avatar xanderume avatar zbynek avatar zrdzn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

reposilite's Issues

mvn deploy issue

Hello.

mvn deploy put files under ./repositories,
but when asked for artifact nanomaven is looking into ./repositories/releases

Am I missing something or is it a bug?

Logowanie

Cześć, jak się zalogować do nanomavena?

Support for proxy repositories

Do I correctly understand that the proxy repository currently is not working which means I can't use it a replacement for a Nexus/Artifactory ?

Invalid xml in maven-metadata-remote.xml while publishing snapshot

Attempting to publish a snapshot results in the below exception in gradle due to the maven-metadata-remote.xml not containing valid xml...

metadata-remote.xml contains:

Empty build metadata

The Exception:

Caused by: org.sonatype.aether.RepositoryException: Could not parse metadata ..../build/tmp/publishJavaPublicationToNanoRepository/xx/xx/xxxx/xxxxx/1.53-SNAPSHOT/maven-metadata-remote.xml: only whitespace content allowed before start tag and not E (position: START_DOCUMENT seen E... @1:1) at org.apache.maven.repository.internal.MavenMetadata.read(MavenMetadata.java:105) at org.apache.maven.repository.internal.MavenMetadata.merge(MavenMetadata.java:69) at org.sonatype.aether.impl.internal.DefaultDeployer.upload(DefaultDeployer.java:410) ... 57 more Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: only whitespace content allowed before start tag and not E (position: START_DOCUMENT seen E... @1:1) at org.codehaus.plexus.util.xml.pull.MXParser.parseProlog(MXParser.java:1528) at org.codehaus.plexus.util.xml.pull.MXParser.nextImpl(MXParser.java:1407) at org.codehaus.plexus.util.xml.pull.MXParser.next(MXParser.java:1105) at org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader.read(MetadataXpp3Reader.java:1193) at org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Reader.read(MetadataXpp3Reader.java:1122) at org.apache.maven.repository.internal.MavenMetadata.read(MavenMetadata.java:97) ... 59 more

Dockerize Reposilite

Introduction

First of all, I congratulate you. It has been a very successful work.

We are developing projects and libraries with Java. We need to share JAR files to use them. So we were looking for a lightweight solution and I can say that we found what we were looking for in this project.

Proposal

Have you ever thought of prepare a Docker Image for NanoMaven? Or do you have this in your plans? It may be useful to have a ready to use Docker Image. There are some lightweight base Docker Images which contains Java environment. They could be used as base image.

Repository browser

Allow to browse repository through the frontpage - display indexed files

Snapshot dependency resolution issue

Hi

I am just trying out nanomaven. I published a snapshot version with gradle, but then another gradle project could not download it.

The files are there:

maven-metadata.xml       MyProj-1.53-20200508.201309-1.jar       MyProj-1.53-20200508.201309-1.pom       MyProj-1.53-20200508.201309-1-sources.jar
maven-metadata.xml.md5   MyProj-1.53-20200508.201309-1.jar.md5   MyProj-1.53-20200508.201309-1.pom.md5   MyProj-1.53-20200508.201309-1-sources.jar.md5
maven-metadata.xml.sha1  MyProj-1.53-20200508.201309-1.jar.sha1  MyProj-1.53-20200508.201309-1.pom.sha1  MyProj-1.53-20200508.201309-1-sources.jar.sha1

The Maven metadata file:

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>my.path</groupId>
  <artifactId>MyProj</artifactId>
  <version>1.53-SNAPSHOT</version>
  <versioning>
    <snapshot>
      <timestamp>20200508.201309</timestamp>
      <buildNumber>1</buildNumber>
    </snapshot>
    <lastUpdated>20200508201309</lastUpdated>
  </versioning>
</metadata>

But when used as a dependency it doesn't get resolved:

      Searched in the following locations:
      http://nanoserve:4567/snapshots/my/path/MyProj/1.53-SNAPSHOT/maven-metadata.xml
      http://nanoserve:4567/snapshots/my/path/MyProj/1.53-SNAPSHOT/MyProj-1.53-SNAPSHOT.pom
      http://nanoserve:4567/snapshots/my/path/MyProj/1.53-SNAPSHOT/MyProj-1.53-SNAPSHOT.jar

Is this an issue or am I doing something strange?

Support token revocation

Currently, there is no way to revoke existing tokens, so if there would be a situation where user token has been leaked, there is no "clean" (by clean I mean not manually editing storage file) way to delete it.

Cannot retrieve snapshot dependencies

This is against version 2.1.2.

I have two problems. If I publish sources, which is published after the jar, then when gradle tries to retrieve the latest jar it does this:

http://localhost:4567/snapshot/xx/xx/xxx/xxxx/1.53-SNAPSHOT/maven-metadata.xml
http://localhost:4567/snapshot/xx/xx/xxx/xxxx/1.53-SNAPSHOT/iPayUtils-1.53-20200513.061306-4-sources-2.pom
http://localhost:4567/snapshot/xx/xx/xxx/xxxx/1.53-SNAPSHOT/iPayUtils-1.53-20200513.061306-4-sources-2.jar

So it only retrieves sources. Probably thinks that is the latest artifact.

If I don't publish sources then gradle ends up asking for this:
http://localhost:4567/snapshot/xx/xx/xxx/xxxxx/1.53-SNAPSHOT/xxxxx-1.53-20200513.063347-1-1.jar

The build number is repeated at the end and so it doesn't find it. The maven-metadata.xml downloaded is:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<metadata>
    <groupId>xxx</groupId>
    <artifactId>xxx</artifactId>
    <version>1.53</version>
    <versioning>
        <release>xxx-1.53-20200513.063347-1</release>
        <latest>xxx-1.53-20200513.063347-1</latest>
        <snapshot>
            <timestamp>20200513.063347-1</timestamp>
            <buildNumber>1</buildNumber>
        </snapshot>
        <snapshotVersions>
            <snapshotVersion>
                <extension>jar</extension>
                <value>xxx-1.53-20200513.063347-1</value>
                <updated>20200513.063347-1</updated>
            </snapshotVersion>
        </snapshotVersions>
        <lastUpdated>20200513063347</lastUpdated>
    </versioning>
</metadata>

This is what I get from artifactory for the same setup. A few difference I don't know the impact of, but the updated field looks different and does not include the build number, maybe that's the issue?

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>xxx</groupId>
  <artifactId>xxx</artifactId>
  <version>1.53-SNAPSHOT</version>
  <versioning>
    <snapshot>
      <timestamp>20200513.063915</timestamp>
      <buildNumber>1</buildNumber>
    </snapshot>
    <lastUpdated>20200513063916</lastUpdated>
    <snapshotVersions>
      <snapshotVersion>
        <extension>jar</extension>
        <value>1.53-20200513.063915-1</value>
        <updated>20200513063915</updated>
      </snapshotVersion>
      <snapshotVersion>
        <extension>pom</extension>
        <value>1.53-20200513.063915-1</value>
        <updated>20200513063915</updated>
      </snapshotVersion>
    </snapshotVersions>
  </versioning>
</metadata>

Reposilite shows NanoMaven in status

Currently if you give a status command on the console you will get this:

20:30:42.843 INFO | Reposilite 2.3.0 Commands:
20:30:42.843 INFO |   help - List available commands
20:30:42.843 INFO |   status - Display metrics
20:30:42.843 INFO |   tokens - List all generated tokens
20:30:42.843 INFO |   keygen <path> <alias> - Generate a new access token for the given path
20:30:42.843 INFO |   purge - Clear cache
20:30:42.844 INFO |   stop - Shutdown server
20:30:42.844 INFO | 
status
20:30:44.176 INFO | 
20:30:44.176 INFO | NanoMaven 2.3.0 Status
20:30:44.177 INFO |   Active: true
20:30:44.180 INFO |   Uptime: 0.02min
20:30:44.180 INFO |   Memory usage of process: 10.00M
20:30:44.180 INFO |   Cached elements: 0
20:30:44.197 INFO | 

Command Line usage seemed not working

If I start nanomaven I get a list of commands like:

19:13:36.027 INFO | NanoMaven 2.2.2 Commands:
19:13:36.027 INFO |   help - List available commands
19:13:36.027 INFO |   status - Display metrics
19:13:36.027 INFO |   tokens - List all generated tokens
19:13:36.027 INFO |   keygen <path> <alias> - Generate a new access token for the given path
19:13:36.027 INFO |   purge - Clear cache
19:13:36.027 INFO |   stop - Shutdown server
19:13:36.027 INFO | 

But unfortunately it does not change a thing If I give them on command line like this:

java -jar nanomaven-2.2.2.jar help

If I correctly understand the code. The command line args are not given to NanoMaven:

NanoMaven nanoMaven = new NanoMaven();
nanoMaven.launch()

which means from my understanding that could not work that way. Maybe I misunderstand a thing here. Maybe you can enlighten that a little bit?

StringIndexOutOfBoundsException in some invalid metadata requests

Catched using status command

12:35:41.479 ERROR |  Latest exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1967)
        at org.panda_lang.nanomaven.metadata.MetadataService.generateSnapshotMetadata(MetadataService.java:97)
        at org.panda_lang.nanomaven.metadata.MetadataService.generateMetadata(MetadataService.java:64)
        at org.panda_lang.nanomaven.repository.DownloadController.serve(DownloadController.java:92)
        at org.panda_lang.nanomaven.repository.RepositoryController.serveOrCatch(RepositoryController.java:58)
        at org.panda_lang.nanomaven.repository.RepositoryController.serve(RepositoryController.java:46)
        at org.panda_lang.nanomaven.NanoHttpServer.serve(NanoHttpServer.java:55)
        at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:945)
        at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
        at java.lang.Thread.run(Thread.java:748)

Replace config implementation

PandaConfiguration is removed from the latest version of Panda and in some cases it may miss some configuration nodes.

HEAD request

Hello.
Please consider adding HEAD request handling.
For some reason, Maven is performing such.

[04.10.2018 18:15:46.106][NanoHttpd Request Processor (#20)/DEBUG] /io/pivotal/rti4t-gemfire/3.1.0-v95/rti4t-gemfire-3.1.0-v95.pom | {} | HEAD | null | {expires=0, x-forwarded-proto=http, x-forwarded-for=87.207.77.132, pragma=no-cache, x-real-ip=87.207.77.132, remote-addr=91.185.185.169, http-client-ip=91.185.185.169, cache-store=no-store, host=maven.myatos.eu, connection=close, cache-control=no-cache, accept-encoding=gzip, user-agent=Apache-Maven/3.3.9 (Java 1.8.0_152-release; Mac OS X 10.14)}
/io/pivotal/rti4t-gemfire/3.1.0-v95/rti4t-gemfire-3.1.0-v95.pom HEAD
[04.10.2018 18:15:46.107][NanoHttpd Request Processor (#20)/ERROR] Unknown method: /io/pivotal/rti4t-gemfire/3.1.0-v95/rti4t-gemfire-3.1.0-v95.pom
Oct 04, 2018 6:15:46 PM fi.iki.elonen.NanoHTTPD$Response send
SEVERE: Could not send response to the client
java.net.SocketException: Broken pipe (Write failed)
	at java.net.SocketOutputStream.socketWrite0(Native Method)
	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
	at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
	at java.util.zip.GZIPOutputStream.finish(GZIPOutputStream.java:164)
	at fi.iki.elonen.NanoHTTPD$Response.sendBodyWithCorrectEncoding(NanoHTTPD.java:1665)
	at fi.iki.elonen.NanoHTTPD$Response.sendBodyWithCorrectTransferAndEncoding(NanoHTTPD.java:1657)
	at fi.iki.elonen.NanoHTTPD$Response.send(NanoHTTPD.java:1624)
	at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:957)
	at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
	at java.lang.Thread.run(Thread.java:748)

NPE during artifact initialization

/releases/org/panda-lang/nanomaven/maven-metadata.xml.md5 GET
java.lang.NullPointerException
        at java.util.Arrays.stream(Arrays.java:5004)
        at java.util.stream.Stream.of(Stream.java:1000)
        at org.panda_lang.nanomaven.repository.Artifact.<init>(Artifact.java:37)
        at org.panda_lang.nanomaven.repository.Repository.get(Repository.java:53)
        at org.panda_lang.nanomaven.repository.DownloadController.serve(DownloadController.java:78)
        at org.panda_lang.nanomaven.repository.RepositoryController.serveOrCatch(RepositoryController.java:53)
        at org.panda_lang.nanomaven.repository.RepositoryController.serve(RepositoryController.java:43)
        at org.panda_lang.nanomaven.NanoHttpServer.serve(NanoHttpServer.java:54)
        at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:945)
        at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
        at java.lang.Thread.run(Thread.java:748)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.