aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorCharles Leclerc2020-07-05 01:08:45 -0400
committerCharles Leclerc2020-07-05 01:10:58 -0400
commit920b8c8295e7dabc00a30ed86f64bf626b9e0c55 (patch)
tree751a3d4c5e3b26a13b39762b8f6579621cc742be
downloadaur-920b8c8295e7dabc00a30ed86f64bf626b9e0c55.tar.gz
Released initial version 2.6.1-1
-rw-r--r--.SRCINFO25
-rw-r--r--PKGBUILD35
-rw-r--r--change-default-port-to-8080.patch41
-rw-r--r--fix-tests-listening-port.patch94
-rw-r--r--reposilite.service11
-rw-r--r--reposilite.sysusers1
-rw-r--r--reposilite.tmpfiles1
7 files changed, 208 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a301496388ec
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,25 @@
+pkgbase = reposilite
+ pkgdesc = Reposilite (formerly NanoMaven) - lightweight repository manager for Maven artifacts. It is a simple solution to replace managers like Nexus, Archiva or Artifactory.
+ pkgver = 2.6.1
+ pkgrel = 1
+ url = https://github.com/dzikoysk/reposilite
+ arch = any
+ license = Apache
+ makedepends = java-environment
+ makedepends = maven
+ depends = java-runtime
+ source = https://github.com/dzikoysk/reposilite/archive/2.6.1.tar.gz
+ source = fix-tests-listening-port.patch
+ source = change-default-port-to-8080.patch
+ source = reposilite.service
+ source = reposilite.sysusers
+ source = reposilite.tmpfiles
+ sha256sums = 3a6af7fbeab363323eac5bf6ce054d50297e2aef1c5eb418994c4acad4a9ac4f
+ sha256sums = 7f23358accbb833ab85d7ca0dabd07dcf9571de8c24557ea37b9893dafa92bbc
+ sha256sums = c2701c3abeb18249dd23a15077a298bf46d96add5c8ce786fef0debf640d3637
+ sha256sums = a90d98915a867ae8b2569d124d0f625908e490284d26005cd47c041c75ef3db4
+ sha256sums = 92ccfeff429aa4757ef353677dd99ad7aebe7483d4824706a27250e81efd6323
+ sha256sums = 9587fa49dd66d5f31dee33aa1a9da269a34666b63f62e2550a66c3bc1d397aa7
+
+pkgname = reposilite
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..99b2e0def6da
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,35 @@
+# Maintainer: Your Name <youremail@domain.com>
+pkgname=reposilite
+pkgver=2.6.1
+pkgrel=1
+pkgdesc="Reposilite (formerly NanoMaven) - lightweight repository manager for Maven artifacts. It is a simple solution to replace managers like Nexus, Archiva or Artifactory."
+arch=(any)
+url="https://github.com/dzikoysk/$pkgname"
+license=('Apache')
+depends=('java-runtime')
+makedepends=('java-environment' 'maven')
+source=("$url/archive/$pkgver.tar.gz" 'fix-tests-listening-port.patch' 'change-default-port-to-8080.patch' "$pkgname.service" "$pkgname.sysusers" "$pkgname.tmpfiles")
+sha256sums=('3a6af7fbeab363323eac5bf6ce054d50297e2aef1c5eb418994c4acad4a9ac4f'
+ '7f23358accbb833ab85d7ca0dabd07dcf9571de8c24557ea37b9893dafa92bbc'
+ 'c2701c3abeb18249dd23a15077a298bf46d96add5c8ce786fef0debf640d3637'
+ 'a90d98915a867ae8b2569d124d0f625908e490284d26005cd47c041c75ef3db4'
+ '92ccfeff429aa4757ef353677dd99ad7aebe7483d4824706a27250e81efd6323'
+ '9587fa49dd66d5f31dee33aa1a9da269a34666b63f62e2550a66c3bc1d397aa7')
+
+prepare() {
+ cd "$pkgname-$pkgver"
+ patch -p0 -i "$srcdir/fix-tests-listening-port.patch"
+ patch -p0 -i "$srcdir/change-default-port-to-8080.patch"
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+ mvn package
+}
+
+package() {
+ install -Dm 644 $pkgname.service -t "${pkgdir}/usr/lib/systemd/system"
+ install -Dm 644 $pkgname.sysusers "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf"
+ install -Dm 644 $pkgname.tmpfiles "${pkgdir}/usr/lib/tmpfiles.d/$pkgname.conf"
+ install -Dm 644 "$pkgname-$pkgver/reposilite-backend/target/$pkgname-$pkgver.jar" "$pkgdir/usr/share/java/$pkgname/$pkgname.jar"
+}
diff --git a/change-default-port-to-8080.patch b/change-default-port-to-8080.patch
new file mode 100644
index 000000000000..cb1d00daa19d
--- /dev/null
+++ b/change-default-port-to-8080.patch
@@ -0,0 +1,41 @@
+--- reposilite-backend/src/main/resources/reposilite.yml (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
++++ reposilite-backend/src/main/resources/reposilite.yml (revision 989ada8003dc93d5e846d0731782987a4e508f5c)
+@@ -5,7 +5,7 @@
+ # Hostname
+ hostname: ""
+ # Port
+-port: 80
++port: 8080
+ # Debug
+ debugEnabled: false
+
+--- reposilite-backend/src/test/java/org/panda_lang/reposilite/config/ConfigurationLoaderTest.java (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
++++ reposilite-backend/src/test/java/org/panda_lang/reposilite/config/ConfigurationLoaderTest.java (revision 989ada8003dc93d5e846d0731782987a4e508f5c)
+@@ -19,14 +19,14 @@
+ void shouldLoadFileWithCustomProperties() {
+ try {
+ System.setProperty("reposilite.hostname", "localhost"); // String type
+- System.setProperty("reposilite.port", "8080"); // Integer type
++ System.setProperty("reposilite.port", "8081"); // Integer type
+ System.setProperty("reposilite.debugEnabled", "true"); // Boolean type
+ System.setProperty("reposilite.proxied", "http://a.com,b.com"); // List<String> type
+ System.setProperty("reposilite.repositories", " "); // Skip empty
+
+ Configuration configuration = ConfigurationLoader.load(workingDirectory.getAbsolutePath());
+ assertEquals("localhost", configuration.getHostname());
+- assertEquals(8080, configuration.getPort());
++ assertEquals(8081, configuration.getPort());
+ assertTrue(configuration.isDebugEnabled());
+ assertEquals(Arrays.asList("http://a.com", "b.com"), configuration.getProxied());
+ assertFalse(configuration.getRepositories().isEmpty());
+@@ -41,7 +41,7 @@
+ }
+
+ Configuration configuration = ConfigurationLoader.load(workingDirectory.getAbsolutePath());
+- assertEquals(80, configuration.getPort());
++ assertEquals(8080, configuration.getPort());
+ }
+
+ }
+\ No newline at end of file
+
diff --git a/fix-tests-listening-port.patch b/fix-tests-listening-port.patch
new file mode 100644
index 000000000000..11a0f8e62633
--- /dev/null
+++ b/fix-tests-listening-port.patch
@@ -0,0 +1,94 @@
+--- reposilite-backend/src/test/java/org/panda_lang/reposilite/ReposiliteIntegrationTest.java (revision bb52fbefa8fc220f50040889c39fdfce70b50204)
++++ reposilite-backend/src/test/java/org/panda_lang/reposilite/ReposiliteIntegrationTest.java (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
+@@ -14,10 +14,12 @@
+
+ import java.io.File;
+ import java.io.IOException;
++import java.util.Random;
+
+ public abstract class ReposiliteIntegrationTest {
+
+ protected static final HttpRequestFactory requestFactory = new NetHttpTransport().createRequestFactory();
++ public static final String testPort = String.valueOf(new Random().nextInt(16383) + 49152);
+
+ @TempDir
+ protected File workingDirectory;
+@@ -30,12 +32,20 @@
+ }
+
+ protected Reposilite reposilite(File workingDirectory, String... args) throws IOException {
++ return reposilite(testPort, workingDirectory, args);
++ }
++
++ protected Reposilite reposilite(String port, File workingDirectory, String... args) throws IOException {
+ FileUtils.copyDirectory(new File("src/test/workspace/repositories"), new File(workingDirectory, "repositories"));
+-
+- return ReposiliteLauncher.create(ArrayUtils.mergeArrays(args, ArrayUtils.of(
+- "--working-directory=" + workingDirectory.getAbsolutePath(),
+- "--test-env"
+- ))).orElseThrow(() -> new RuntimeException("Invalid test parameters"));
++ System.setProperty("reposilite.port", port);
++ try {
++ return ReposiliteLauncher.create(ArrayUtils.mergeArrays(args, ArrayUtils.of(
++ "--working-directory=" + workingDirectory.getAbsolutePath(),
++ "--test-env"
++ ))).orElseThrow(() -> new RuntimeException("Invalid test parameters"));
++ } finally {
++ System.clearProperty("reposilite.port");
++ }
+ }
+
+ @AfterEach
+@@ -65,7 +75,7 @@
+ }
+
+ protected GenericUrl url(String uri) {
+- return new GenericUrl("http://localhost:80" + uri);
++ return new GenericUrl("http://localhost:" + testPort + uri);
+ }
+
+ }
+--- reposilite-backend/src/test/java/org/panda_lang/reposilite/ReposiliteLauncherTest.java (revision bb52fbefa8fc220f50040889c39fdfce70b50204)
++++ reposilite-backend/src/test/java/org/panda_lang/reposilite/ReposiliteLauncherTest.java (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
+@@ -38,10 +38,12 @@
+
+ try {
+ System.setProperty("reposilite.debugEnabled", "true");
++ System.setProperty("reposilite.port", ReposiliteIntegrationTest.testPort);
+ ReposiliteLauncher.main("-wd=" + workingDirectory.getAbsolutePath());
+ }
+ finally {
+ System.clearProperty("reposilite.debugEnabled");
++ System.clearProperty("reposilite.port");
+ }
+
+ assertTrue(ReposiliteWriter.contains("Debug enabled"));
+--- reposilite-backend/src/test/java/org/panda_lang/reposilite/console/CliControllerTest.java (revision bb52fbefa8fc220f50040889c39fdfce70b50204)
++++ reposilite-backend/src/test/java/org/panda_lang/reposilite/console/CliControllerTest.java (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
+@@ -90,7 +90,7 @@
+ @Override
+ public void onWebSocketClose(int statusCode, String reason) { }
+
+- }, new URI("ws://localhost:80/api/cli"), clientUpgradeRequest).get();
++ }, new URI("ws://localhost:"+testPort+"/api/cli"), clientUpgradeRequest).get();
+ }
+
+ }
+\ No newline at end of file
+--- reposilite-backend/src/test/java/org/panda_lang/reposilite/repository/LookupControllerTest.java (revision bb52fbefa8fc220f50040889c39fdfce70b50204)
++++ reposilite-backend/src/test/java/org/panda_lang/reposilite/repository/LookupControllerTest.java (revision d3608becb48afccfb2ca0b060821be8d7b523aad)
+@@ -97,11 +97,11 @@
+
+ @Test
+ void shouldReturn200AndProxiedFile() throws Exception {
+- super.reposilite.getConfiguration().setProxied(Collections.singletonList("http://localhost:8080"));
++ String proxyPort = String.valueOf(Integer.parseInt(testPort)+1);
++ super.reposilite.getConfiguration().setProxied(Collections.singletonList("http://localhost:"+proxyPort));
+
+ try {
+- System.setProperty("reposilite.port", "8080");
+- Reposilite proxiedReposilite = super.reposilite(proxiedWorkingDirectory);
++ Reposilite proxiedReposilite = super.reposilite(proxyPort, proxiedWorkingDirectory);
+ proxiedReposilite.launch();
+
+ File proxiedFile = new File(proxiedWorkingDirectory, "/repositories/releases/proxiedGroup/proxiedArtifact/proxied.txt");
diff --git a/reposilite.service b/reposilite.service
new file mode 100644
index 000000000000..5349de1d3db2
--- /dev/null
+++ b/reposilite.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Repository manager service
+
+[Service]
+Type=simple
+User=reposilite
+ExecStart=/usr/bin/java -jar /usr/share/java/reposilite/reposilite.jar -wd /var/lib/reposilite
+SuccessExitStatus=143
+
+[Install]
+WantedBy=multi-user.target
diff --git a/reposilite.sysusers b/reposilite.sysusers
new file mode 100644
index 000000000000..8e4f85d97d40
--- /dev/null
+++ b/reposilite.sysusers
@@ -0,0 +1 @@
+u reposilite - "Repository manager user" /var/lib/reposilite -
diff --git a/reposilite.tmpfiles b/reposilite.tmpfiles
new file mode 100644
index 000000000000..90c3c062b136
--- /dev/null
+++ b/reposilite.tmpfiles
@@ -0,0 +1 @@
+d /var/lib/reposilite 700 reposilite reposilite