diff options
author | Martin Stockhammer <martin.stockhammer@ars.de> | 2017-10-21 14:41:59 +0200 |
---|---|---|
committer | Martin Stockhammer <martin.stockhammer@ars.de> | 2017-10-21 14:41:59 +0200 |
commit | 2c12980a3a0a893375f89cd1ac60b8051483a377 (patch) | |
tree | 4dfb068e9687750804af1f4ee21626c8782571d9 | |
parent | 5416993a997f021ba27858ae10870dbf601937d9 (diff) | |
download | archiva-2c12980a3a0a893375f89cd1ac60b8051483a377.tar.gz archiva-2c12980a3a0a893375f89cd1ac60b8051483a377.zip |
Adding configuration entry and removing old v1 repositories
4 files changed, 34 insertions, 190 deletions
diff --git a/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/archiva/configuration/DefaultArchivaConfiguration.java b/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/archiva/configuration/DefaultArchivaConfiguration.java index a9aa171a1..d31287d42 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/archiva/configuration/DefaultArchivaConfiguration.java +++ b/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/archiva/configuration/DefaultArchivaConfiguration.java @@ -215,50 +215,6 @@ public class DefaultArchivaConfiguration config.getRepositoryGroups(); config.getRepositoryGroupsAsMap(); - if ( !config.getRepositories().isEmpty() ) - { - for ( V1RepositoryConfiguration r : config.getRepositories() ) - { - r.setScanned( r.isIndexed() ); - - if ( StringUtils.startsWith( r.getUrl(), "file://" ) ) - { - r.setLocation( r.getUrl().substring( 7 ) ); - config.addManagedRepository( r ); - } - else if ( StringUtils.startsWith( r.getUrl(), "file:" ) ) - { - r.setLocation( r.getUrl().substring( 5 ) ); - config.addManagedRepository( r ); - } - else if ( StringUtils.isEmpty( r.getUrl() ) ) - { - // in case of empty url we can consider it as a managed one - // check if location is null - //file://${appserver.base}/repositories/${id} - if ( StringUtils.isEmpty( r.getLocation() ) ) - { - r.setLocation( "file://${appserver.base}/repositories/" + r.getId() ); - } - config.addManagedRepository( r ); - } - else - { - RemoteRepositoryConfiguration repo = new RemoteRepositoryConfiguration(); - repo.setId( r.getId() ); - repo.setLayout( r.getLayout() ); - repo.setName( r.getName() ); - repo.setUrl( r.getUrl() ); - config.addRemoteRepository( repo ); - } - } - - // Prevent duplicate repositories from showing up. - config.getRepositories().clear(); - - registry.removeSubset( KEY + ".repositories" ); - } - if ( !CollectionUtils.isEmpty( config.getRemoteRepositories() ) ) { List<RemoteRepositoryConfiguration> remoteRepos = config.getRemoteRepositories(); diff --git a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo index 1189ec006..971a83004 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo +++ b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo @@ -19,6 +19,7 @@ --> <model> + <!-- Current configuration version: 3.0.0 --> <id>configuration</id> <name>Configuration</name> <description> @@ -47,17 +48,12 @@ <description>This is the version of the configuration format.</description> </field> <field> - <description> - @deprecated use managedRepositories or remoteRepositories instead. - </description> - <name>repositories</name> - <version>1.0.0+</version> - <association java.generate-add="false" - java.generate-remove="false" - java.adder="false"> - <type>V1RepositoryConfiguration</type> - <multiplicity>*</multiplicity> - </association> + <name>metadataStore</name> + <version>3.0.0+</version> + <type>String</type> + <required>true</required> + <defaultValue>jcr</defaultValue> + <description>The type of the metadata storage. Allowed values: jcr, file, cassandra.</description> </field> <field> <name>repositoryGroups</name> diff --git a/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/archiva/configuration/ArchivaConfigurationTest.java b/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/archiva/configuration/ArchivaConfigurationTest.java index ca4312cf6..36a8a7d64 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/archiva/configuration/ArchivaConfigurationTest.java +++ b/archiva-modules/archiva-base/archiva-configuration/src/test/java/org/apache/archiva/configuration/ArchivaConfigurationTest.java @@ -527,27 +527,6 @@ public class ArchivaConfigurationTest // Expected Path is: Should not have thrown an exception. } - @Test - public void testConfigurationUpgradeFrom09() - throws Exception - { - ArchivaConfiguration archivaConfiguration = lookup( ArchivaConfiguration.class, "test-upgrade-09" ); - - // we just use the defaults when upgrading from 0.9 at this point. - Configuration configuration = archivaConfiguration.getConfiguration(); - // test-upgrade-09 contains a managed with id: local so it's 3 managed - assertConfiguration( configuration, 3, 1, 1 ); - assertEquals( "check network proxies", 0, configuration.getNetworkProxies().size() ); - - ManagedRepositoryConfiguration repository = configuration.getManagedRepositories().get( 0 ); - - assertEquals( "check managed repositories", "${appserver.base}/repositories/internal", - repository.getLocation() ); - assertEquals( "check managed repositories", "Archiva Managed Internal Repository", repository.getName() ); - assertEquals( "check managed repositories", "internal", repository.getId() ); - assertEquals( "check managed repositories", "default", repository.getLayout() ); - assertTrue( "check managed repositories", repository.isScanned() ); - } @Test public void testConfigurationUpgradeFrom13() @@ -583,93 +562,6 @@ public class ArchivaConfigurationTest configuration.getRepositoryScanning().getKnownContentConsumers().contains( "duplicate-artifacts" ) ); } - @Test - public void testAutoDetectV1() - throws Exception - { - // Setup the autodetect-v1.xml file in the target directory (so we can save/load it) - Path userFile = getTestFile( "target/test-autodetect-v1/archiva-user.xml" ); - Files.deleteIfExists(userFile); - assertFalse( Files.exists(userFile) ); - - Files.createDirectories(userFile.getParent()); - FileUtils.copyFile( getTestFile( "src/test/conf/autodetect-v1.xml" ).toFile(), userFile.toFile()); - - // Load the original (unconverted) archiva.xml - ArchivaConfiguration archivaConfiguration = lookup( ArchivaConfiguration.class, "test-autodetect-v1" ); - - archivaConfiguration.reload(); - - Configuration configuration = archivaConfiguration.getConfiguration(); - assertConfiguration( configuration, 2, 2, 2 ); - assertEquals( "check network proxies", 1, configuration.getNetworkProxies().size() ); - - ManagedRepositoryConfiguration repository = configuration.getManagedRepositories().get( 0 ); - - assertEquals( "check managed repositories", "${appserver.base}/repositories/internal", - repository.getLocation() ); - assertEquals( "check managed repositories", "Archiva Managed Internal Repository", repository.getName() ); - assertEquals( "check managed repositories", "internal", repository.getId() ); - assertEquals( "check managed repositories", "default", repository.getLayout() ); - assertTrue( "check managed repositories", repository.isScanned() ); - - // Test that only 1 set of repositories exist. - assertEquals( "check managed repositories size.", 2, configuration.getManagedRepositories().size() ); - assertEquals( "check remote repositories size.", 2, configuration.getRemoteRepositories().size() ); - assertEquals( "check v1 repositories size.", 0, configuration.getRepositories().size() ); - - // Save the file. - archivaConfiguration.save( configuration ); - - // Reload. - archivaConfiguration = lookup( ArchivaConfiguration.class, "test-autodetect-v1" ); - configuration = archivaConfiguration.getConfiguration(); - - // Test that only 1 set of repositories exist. - assertEquals( "check managed repositories size.", 2, configuration.getManagedRepositories().size() ); - assertEquals( "check managed repositories size.", 2, configuration.getManagedRepositoriesAsMap().size() ); - assertEquals( "check remote repositories size.", 2, configuration.getRemoteRepositories().size() ); - assertEquals( "check remote repositories size.", 2, configuration.getRemoteRepositoriesAsMap().size() ); - assertEquals( "check v1 repositories size.", 0, configuration.getRepositories().size() ); - - String actualXML = FileUtils.readFileToString( userFile.toFile(), Charset.forName( "UTF-8" ) ); - XMLAssert.assertXpathNotExists( "//configuration/repositories/repository", actualXML ); - XMLAssert.assertXpathNotExists( "//configuration/repositories", actualXML ); - } - - @Test - public void testArchivaV1() - throws Exception - { - ArchivaConfiguration archivaConfiguration = lookup( ArchivaConfiguration.class, "test-archiva-v1" ); - - Configuration configuration = archivaConfiguration.getConfiguration(); - assertConfiguration( configuration, 2, 2, 2 ); - assertEquals( "check network proxies", 1, configuration.getNetworkProxies().size() ); - - assertEquals( "check managed repositories", 2, configuration.getManagedRepositories().size() ); - assertEquals( "check v1 repositories size.", 0, configuration.getRepositories().size() ); - - Map<String, ManagedRepositoryConfiguration> map = configuration.getManagedRepositoriesAsMap(); - - ManagedRepositoryConfiguration repository = map.get( "internal" ); - assertEquals( "check managed repositories", "${appserver.base}/repositories/internal", - repository.getLocation() ); - assertEquals( "check managed repositories", "Archiva Managed Internal Repository", repository.getName() ); - assertEquals( "check managed repositories", "internal", repository.getId() ); - assertEquals( "check managed repositories", "default", repository.getLayout() ); - assertTrue( "check managed repositories", repository.isScanned() ); - assertFalse( "check managed repositories", repository.isSnapshots() ); - - repository = map.get( "snapshots" ); - assertEquals( "check managed repositories", "${appserver.base}/repositories/snapshots", - repository.getLocation() ); - assertEquals( "check managed repositories", "Archiva Managed Snapshot Repository", repository.getName() ); - assertEquals( "check managed repositories", "snapshots", repository.getId() ); - assertEquals( "check managed repositories", "default", repository.getLayout() ); - assertFalse( "check managed repositories", repository.isScanned() ); - assertTrue( "check managed repositories", repository.isSnapshots() ); - } @Test public void testCronExpressionsWithComma() diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/conf/repository-manager.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/conf/repository-manager.xml index 171cfd131..384891f04 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/conf/repository-manager.xml +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/test/conf/repository-manager.xml @@ -19,29 +19,43 @@ --> <configuration> - <version>1</version> - <repositories> - <repository> + <version>3.0.0</version> + <managedRepositories> + <managedRepository> <id>internal</id> <name>Archiva Managed Internal Repository</name> - <url>file://${appserver.base}/repositories/internal</url> + <location>file://${appserver.base}/repositories/internal</location> + <indexDir>${appserver.base}/repositories/internal/.indexer</indexDir> <layout>default</layout> <releases>true</releases> <snapshots>false</snapshots> <indexed>true</indexed> <refreshCronExpression>0 0 * * * ?</refreshCronExpression> - </repository> - <repository> + </managedRepository> + <managedRepository> <id>snapshots</id> <name>Archiva Managed Snapshot Repository</name> - <url>file://${appserver.base}/repositories/snapshots</url> + <location>file://${appserver.base}/repositories/snapshots</location> + <indexDir>.indexer</indexDir> <layout>default</layout> <releases>false</releases> <snapshots>true</snapshots> <indexed>true</indexed> <refreshCronExpression>0 0,30 * * * ?</refreshCronExpression> - </repository> - <repository> + </managedRepository> + <managedRepository> + <id>test-repo</id> + <name>Test Repository</name> + <location>file://${appserver.base}/test-repo</location> + <layout>default</layout> + <releases>true</releases> + <snapshots>true</snapshots> + <indexed>true</indexed> + <refreshCronExpression>0 0 * * * ?</refreshCronExpression> + </managedRepository> + </managedRepositories> + <remoteRepositories> + <remoteRepository> <id>central</id> <name>Central Repository</name> <url>http://repo1.maven.org/maven2</url> @@ -49,29 +63,15 @@ <releases>true</releases> <snapshots>false</snapshots> <indexed>false</indexed> - </repository> - <repository> + </remoteRepository> + <remoteRepository> <id>maven2-repository.dev.java.net</id> <name>Java.net Repository for Maven 2</name> <url>https://maven2-repository.dev.java.net/nonav/repository</url> <layout>default</layout> - <releases>true</releases> - <snapshots>false</snapshots> <indexed>false</indexed> - </repository> - <repository> - <id>test-repo</id> - <name>Test Repository</name> - <url>file://${appserver.base}/test-repo</url> - <layout>default</layout> - <releases>true</releases> - <snapshots>true</snapshots> - <indexed>true</indexed> - <refreshCronExpression>0 0 * * * ?</refreshCronExpression> - <retentionTime>0</retentionTime> - <retentionCount>2</retentionCount> - </repository> - </repositories> + </remoteRepository> + </remoteRepositories> <proxyConnectors> <proxyConnector> |