Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Merge remote-tracking branch 'origin/master' into NXCM-4361-salt-rework

  • Loading branch information...
commit b08a2d00d3e8ff0d09e765f11dde50c83baaaded 2 parents dd5c756 + c1a9535
scarlucci scarlucci authored
Showing with 877 additions and 91 deletions.
  1. +132 −59 nexus-core/src/main/java/org/sonatype/nexus/maven/tasks/DefaultSnapshotRemover.java
  2. +20 −1 nexus-core/src/main/java/org/sonatype/nexus/security/NexusViewSecurityResource.java
  3. +23 −4 nexus-core/src/main/java/org/sonatype/nexus/security/SecurityCleanupEventInspector.java
  4. +33 −0 nexus-core/src/test/java/org/sonatype/nexus/maven/tasks/DefaultSnapshotRemoverIT.java
  5. +32 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml
  6. +1 −0  nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml.md5
  7. +1 −0  nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml.sha1
  8. BIN  ...re/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar
  9. +1 −0  ...rc/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar.md5
  10. +1 −0  ...c/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar.sha1
  11. +122 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom
  12. +1 −0  ...core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom.md5
  13. +1 −0  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom.sha1
  14. BIN  ...re/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar
  15. +1 −0  ...rc/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar.md5
  16. +1 −0  ...c/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar.sha1
  17. +122 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom
  18. +1 −0  ...core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom.md5
  19. +1 −0  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom.sha1
  20. BIN  ...re/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar
  21. +1 −0  ...rc/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar.md5
  22. +1 −0  ...c/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar.sha1
  23. +122 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom
  24. +1 −0  ...core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom.md5
  25. +1 −0  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom.sha1
  26. BIN  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar
  27. +1 −0  ...src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar.md5
  28. +1 −0  ...rc/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar.sha1
  29. +122 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom
  30. +1 −0  ...core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom.md5
  31. +1 −0  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom.sha1
  32. BIN  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar
  33. +1 −0  ...src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar.md5
  34. +1 −0  ...rc/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar.sha1
  35. +122 −0 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom
  36. +1 −0  ...core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom.md5
  37. +1 −0  ...ore/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom.sha1
  38. +1 −1  nexus-test/nexus-it-helper-plugin/src/test/java/org/sonatype/security/realms/simple/SimpleRealmTest.java
  39. +1 −7 plugins/kenai/nexus-kenai-plugin/pom.xml
  40. +1 −5 plugins/nexus-ui-extjs3-plugin/src/main/resources/static/js/Sonatype/utils.js
  41. +0 −7 plugins/restlet1x/nexus-restlet1x-model/src/main/mdo/vos.xml
  42. +0 −5 ...ins/restlet1x/nexus-restlet1x-plugin/src/main/java/org/sonatype/nexus/rest/status/StatusPlexusResource.java
  43. +1 −1  ...nexus-restlet1x-plugin/src/main/java/org/sonatype/security/rest/privileges/PrivilegeTypePlexusResource.java
  44. +1 −1  pom.xml
191 nexus-core/src/main/java/org/sonatype/nexus/maven/tasks/DefaultSnapshotRemover.java
View
@@ -13,10 +13,10 @@
package org.sonatype.nexus.maven.tasks;
import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.commons.lang.StringUtils.*;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -27,6 +27,7 @@
import javax.inject.Named;
import javax.inject.Singleton;
+import com.google.common.collect.Maps;
import org.sonatype.nexus.logging.AbstractLoggingComponent;
import org.sonatype.nexus.proxy.IllegalOperationException;
import org.sonatype.nexus.proxy.ItemNotFoundException;
@@ -482,7 +483,7 @@ public void doOnCollectionExit( WalkerContext context, StorageCollectionItem col
}
else
{
- getLogger().debug( "itemTimestamp=" + itemTimestamp + ", dateTreshold=" + dateThreshold );
+ getLogger().debug( "itemTimestamp=" + itemTimestamp + ", dateThreshold=" + dateThreshold );
// if dateThreshold is not used (zero days) OR
// if itemTimestamp is less then dateThreshold (NB: both are positive!)
@@ -494,6 +495,7 @@ public void doOnCollectionExit( WalkerContext context, StorageCollectionItem col
}
else
{
+ //do not delete if dateThreshold not met
addStorageFileItemToMap( remainingSnapshotsAndFiles, gav, (StorageFileItem) item );
}
}
@@ -543,89 +545,160 @@ public void doOnCollectionExit( WalkerContext context, StorageCollectionItem col
else
{
// and now check some things
- if ( remainingSnapshotsAndFiles.size() < request.getMinCountOfSnapshotsToKeep() )
+
+ Map<String, Map<Version, List<StorageFileItem>>> remainingByClassifier =
+ partitionFiles( remainingSnapshotsAndFiles );
+
+ Map<String, Map<Version, List<StorageFileItem>>> deletableByClassifier =
+ partitionFiles( deletableSnapshotsAndFiles );
+
+ for ( String classifier : deletableByClassifier.keySet() )
{
- // do something
- if ( remainingSnapshotsAndFiles.size() + deletableSnapshotsAndFiles.size() < request.getMinCountOfSnapshotsToKeep() )
+ getLogger().debug( "Processing deletes for classifier: {}", isNotEmpty(classifier) ? classifier : "-NONE-" );
+ //if there are no files remaining for a classifier, introduce an empty map for processing
+ if(!remainingByClassifier.containsKey( classifier ))
{
- // delete nothing, since there is less snapshots in total as allowed
- deletableSnapshotsAndFiles.clear();
+ remainingByClassifier.put( classifier, Maps.<Version, List<StorageFileItem>>newHashMap() );
}
- else
- {
- TreeSet<Version> keys = new TreeSet<Version>( deletableSnapshotsAndFiles.keySet() );
+ reconcileDeletableFilesWithMinCount( remainingByClassifier.get( classifier ),
+ deletableByClassifier.get( classifier ),
+ request.getMinCountOfSnapshotsToKeep() );
+ deleteFiles( context, deletableByClassifier.get( classifier ), remainingByClassifier.get( classifier ).size() );
+ }
+ }
- while ( !keys.isEmpty()
- && remainingSnapshotsAndFiles.size() < request.getMinCountOfSnapshotsToKeep() )
- {
- Version keyToMove = keys.last();
+ removeDirectoryIfEmpty( repository, coll );
- if ( remainingSnapshotsAndFiles.containsKey( keyToMove ) )
- {
- remainingSnapshotsAndFiles.get( keyToMove ).addAll(
- deletableSnapshotsAndFiles.get( keyToMove ) );
- }
- else
- {
- remainingSnapshotsAndFiles.put( keyToMove, deletableSnapshotsAndFiles.get( keyToMove ) );
- }
+ updateMetadataIfNecessary( context, coll );
+
+ }
+
+ private void reconcileDeletableFilesWithMinCount(
+ Map<Version, List<StorageFileItem>> remainingSnapshotsAndFiles,
+ Map<Version, List<StorageFileItem>> deletableSnapshotsAndFiles, int minCount )
+ {
+ if ( remainingSnapshotsAndFiles.size() < minCount )
+ {
+ // do something
+ if ( remainingSnapshotsAndFiles.size() + deletableSnapshotsAndFiles.size() < minCount )
+ {
+ // delete nothing, since there is less snapshots in total as allowed
+ deletableSnapshotsAndFiles.clear();
+ }
+ else
+ {
+ TreeSet<Version> keys = new TreeSet<Version>( deletableSnapshotsAndFiles.keySet() );
- deletableSnapshotsAndFiles.remove( keyToMove );
+ while ( !keys.isEmpty()
+ && remainingSnapshotsAndFiles.size() < minCount )
+ {
+ Version keyToMove = keys.last();
- keys.remove( keyToMove );
+ if ( remainingSnapshotsAndFiles.containsKey( keyToMove ) )
+ {
+ remainingSnapshotsAndFiles.get( keyToMove ).addAll(
+ deletableSnapshotsAndFiles.get( keyToMove ) );
}
+ else
+ {
+ remainingSnapshotsAndFiles.put( keyToMove, deletableSnapshotsAndFiles.get( keyToMove ) );
+ }
+
+ deletableSnapshotsAndFiles.remove( keyToMove );
+ keys.remove( keyToMove );
}
}
+ }
+ }
- // NEXUS-814: is this GAV have remaining artifacts?
- boolean gavHasMoreTimestampedSnapshots = remainingSnapshotsAndFiles.size() > 0;
+ private void deleteFiles( final WalkerContext context,
+ final Map<Version, List<StorageFileItem>> deletableVersionedFiles, final int size )
+ {
+ boolean gavHasMoreTimestampedSnapshots = size > 0;
- for ( Version key : deletableSnapshotsAndFiles.keySet() )
- {
+ for ( Version key : deletableVersionedFiles.keySet() )
+ {
- List<StorageFileItem> files = deletableSnapshotsAndFiles.get( key );
- deletedSnapshots++;
+ List<StorageFileItem> files = deletableVersionedFiles.get( key );
+ deletedSnapshots++;
- for ( StorageFileItem file : files )
+ for ( StorageFileItem file : files )
+ {
+ try
{
- try
+ // NEXUS-814: mark that we are deleting a TS snapshot, but there are still remaining
+ // ones in repository.
+ if ( gavHasMoreTimestampedSnapshots )
{
- // NEXUS-814: mark that we are deleting a TS snapshot, but there are still remaining
- // ones in repository.
- if ( gavHasMoreTimestampedSnapshots )
- {
- file.getItemContext().put( MORE_TS_SNAPSHOTS_EXISTS_FOR_GAV, Boolean.TRUE );
- }
-
- gav = (Gav) file.getItemContext().get( Gav.class.getName() );
+ file.getItemContext().put( MORE_TS_SNAPSHOTS_EXISTS_FOR_GAV, Boolean.TRUE );
+ }
- repository.deleteItem( false, createResourceStoreRequest( file, context ) );
+ repository.deleteItem( false, createResourceStoreRequest( file, context ) );
- deletedFiles++;
- }
- catch ( ItemNotFoundException e )
- {
- // NEXUS-5682 Since checksum files are no longer physically represented on the file system,
- // it is expected that they will generate ItemNotFoundException. Log at trace level only for
- // diagnostic purposes.
- if ( getLogger().isTraceEnabled() )
- {
- getLogger().trace( "Could not delete file:", e );
- }
- }
- catch ( Exception e )
+ deletedFiles++;
+ }
+ catch ( ItemNotFoundException e )
+ {
+ // NEXUS-5682 Since checksum files are no longer physically represented on the file system,
+ // it is expected that they will generate ItemNotFoundException. Log at trace level only for
+ // diagnostic purposes.
+ if ( getLogger().isTraceEnabled() )
{
- getLogger().info( "Could not delete file:", e );
+ getLogger().trace( "Could not delete file:", e );
}
}
+ catch ( Exception e )
+ {
+ getLogger().info( "Could not delete file:", e );
+ }
}
}
+ }
- removeDirectoryIfEmpty( repository, coll );
-
- updateMetadataIfNecessary( context, coll );
+ /**
+ * Partition by classifier of StorageFileItems.
+ */
+ private Map<String, Map<Version, List<StorageFileItem>>> partitionFiles(
+ final Map<Version, List<StorageFileItem>> versionedFiles )
+ {
+ Map<String, Map<Version, List<StorageFileItem>>> partitionedFiles = Maps.newHashMap();
+ for ( Map.Entry<Version, List<StorageFileItem>> versionListEntry : versionedFiles.entrySet() )
+ {
+ String classifier = determineClassifier( versionListEntry.getValue() );
+ if ( !partitionedFiles.containsKey( classifier ) )
+ {
+ partitionedFiles.put( classifier, Maps.<Version, List<StorageFileItem>>newHashMap() );
+ }
+ partitionedFiles.get( classifier ).put( versionListEntry.getKey(), versionListEntry.getValue() );
+ }
+ return partitionedFiles;
+ }
+ /**
+ * Find a common classifier for group of files.
+ */
+ private String determineClassifier( final List<StorageFileItem> items )
+ {
+ String classifier = "";
+ for ( StorageFileItem item : items )
+ {
+ Gav gav = (Gav) item.getItemContext().get( Gav.class.getName() );
+ if ( isEmpty( classifier ) && isNotEmpty( gav.getClassifier() ) )
+ {
+ classifier = gav.getClassifier();
+ }
+ else if ( isNotEmpty( classifier ) && isNotEmpty( gav.getClassifier() )
+ && !classifier.equals( gav.getClassifier() ) )
+ {
+ getLogger().warn(
+ "Found more than one classifier in the same snapshot version. Encountered both '{}' and '{}'."
+ + " These will be considered as having no classifier!",
+ classifier, gav.getClassifier() );
+ return "";
+ }
+ }
+ return classifier;
}
private void updateMetadataIfNecessary( WalkerContext context, StorageCollectionItem coll )
21 nexus-core/src/main/java/org/sonatype/nexus/security/NexusViewSecurityResource.java
View
@@ -36,8 +36,11 @@
import org.sonatype.security.model.Configuration;
import org.sonatype.security.realms.tools.AbstractDynamicSecurityResource;
import org.sonatype.security.realms.tools.ConfigurationManager;
+import org.sonatype.security.realms.tools.ConfigurationManagerAction;
import org.sonatype.security.realms.tools.DynamicSecurityResource;
import org.sonatype.sisu.goodies.eventbus.EventBus;
+
+import com.google.common.base.Throwables;
import com.google.common.eventbus.AllowConcurrentEvents;
import com.google.common.eventbus.Subscribe;
@@ -162,7 +165,23 @@ public void onEvent( final RepositoryRegistryEventRemove event )
{
setDirty( true );
- configManager.cleanRemovedPrivilege( createPrivilegeId( event.getRepository().getId() ) );
+ try
+ {
+ configManager.runWrite(new ConfigurationManagerAction()
+ {
+ @Override
+ public void run()
+ throws Exception
+ {
+ configManager.cleanRemovedPrivilege( createPrivilegeId( event.getRepository().getId() ) );
+ }
+
+ });
+ }
+ catch(Exception e)
+ {
+ throw Throwables.propagate(e);
+ }
}
public void initialize()
27 nexus-core/src/main/java/org/sonatype/nexus/security/SecurityCleanupEventInspector.java
View
@@ -32,6 +32,9 @@
import org.sonatype.security.authorization.Privilege;
import org.sonatype.security.authorization.xml.SecurityXmlAuthorizationManager;
import org.sonatype.security.realms.tools.ConfigurationManager;
+import org.sonatype.security.realms.tools.ConfigurationManagerAction;
+
+import com.google.common.base.Throwables;
@Component( role = EventInspector.class, hint = "SecurityCleanupEventInspector" )
public class SecurityCleanupEventInspector
@@ -97,7 +100,7 @@ protected void cleanupPrivileges( String propertyId, String propertyValue )
{
Set<Privilege> privileges = security.listPrivileges();
- Set<String> removedIds = new HashSet<String>();
+ final Set<String> removedIds = new HashSet<String>();
for ( Privilege privilege : privileges )
{
@@ -111,10 +114,26 @@ protected void cleanupPrivileges( String propertyId, String propertyValue )
}
}
- for ( String privilegeId : removedIds )
+ try
+ {
+ configManager.runWrite(new ConfigurationManagerAction()
+ {
+ @Override
+ public void run()
+ throws Exception
+ {
+ for ( String privilegeId : removedIds )
+ {
+ configManager.cleanRemovedPrivilege( privilegeId );
+ }
+ configManager.save();
+ }
+
+ });
+ }
+ catch(Exception e)
{
- configManager.cleanRemovedPrivilege( privilegeId );
+ throw Throwables.propagate(e);
}
- configManager.save();
}
}
33 nexus-core/src/test/java/org/sonatype/nexus/maven/tasks/DefaultSnapshotRemoverIT.java
View
@@ -21,6 +21,8 @@
import org.sonatype.nexus.AbstractMavenRepoContentTests;
import org.sonatype.nexus.proxy.ItemNotFoundException;
import org.sonatype.nexus.proxy.ResourceStoreRequest;
+import org.sonatype.nexus.proxy.access.OpenAccessManager;
+import org.sonatype.nexus.proxy.item.StorageItem;
import org.sonatype.nexus.proxy.maven.MavenRepository;
import org.sonatype.nexus.proxy.maven.metadata.operations.MetadataBuilder;
import org.sonatype.nexus.proxy.maven.metadata.operations.MetadataException;
@@ -30,6 +32,7 @@
import java.io.FileInputStream;
import java.io.IOException;
import java.net.URL;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@@ -741,6 +744,36 @@ public void testEndWithSNAPSHOT()
validateResults( snapshots, expecting );
}
+ /**
+ * This test case uses 3 alpha snapshots and 2 beta snapshots, and after running the task only one of each
+ * artifacts should still be present.
+ * @see <a href='https://issues.sonatype.org/browse/NEXUS-3148'>NEXUS-5094</a>
+ */
+ @Test
+ public void testSnapshotsWithClassifiers()
+ throws Exception
+ {
+ fillInRepo();
+
+ SnapshotRemovalRequest request = new SnapshotRemovalRequest( snapshots.getId(), 1, -1, false );
+ SnapshotRemovalResult snapshotRemovalResult = defaultNexus.removeSnapshots( request );
+ assertThat( snapshotRemovalResult.isSuccessful(), is( true ) );
+
+ HashMap<String, Boolean> expecting = new HashMap<String, Boolean>();
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar", true );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom", true );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom", false );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar", true );
+ expecting.put( "/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom", true );
+
+ validateResults( snapshots, expecting );
+ }
+
private Metadata readMavenMetadata( File mdFle )
throws MetadataException, IOException
{
32 nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml
View
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata modelVersion="1.1.0">
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <versioning>
+ <snapshot>
+ <timestamp>20130501.155005</timestamp>
+ <buildNumber>5</buildNumber>
+ </snapshot>
+ <lastUpdated>20130501155005</lastUpdated>
+ <snapshotVersions>
+ <snapshotVersion>
+ <extension>pom</extension>
+ <value>1.0-20130501.155005-5</value>
+ <updated>20130501155005</updated>
+ </snapshotVersion>
+ <snapshotVersion>
+ <classifier>alpha</classifier>
+ <extension>jar</extension>
+ <value>1.0-20130501.154956-3</value>
+ <updated>20130501154956</updated>
+ </snapshotVersion>
+ <snapshotVersion>
+ <classifier>beta</classifier>
+ <extension>jar</extension>
+ <value>1.0-20130501.155005-5</value>
+ <updated>20130501155005</updated>
+ </snapshotVersion>
+ </snapshotVersions>
+ </versioning>
+</metadata>
1  nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml.md5
View
@@ -0,0 +1 @@
+99d9bb8d5e12b1bf824604066f439bc1
1  nexus-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/maven-metadata.xml.sha1
View
@@ -0,0 +1 @@
+5bb5a4024fcd907d99da73c263a54ab02dd62d96
BIN  ...src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar
View
Binary file not shown
1  ...test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar.md5
View
@@ -0,0 +1 @@
+f5c4ef7c78a8bd6c136ec3e6ab45cbfc
1  ...est/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1-alpha.jar.sha1
View
@@ -0,0 +1 @@
+e68f95d461e6b9228bd73f8c7d5452f12e6dbe68
122 ...-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom
View
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <packaging>jar</packaging>
+
+ <name>release-remover-test</name>
+
+ <properties>
+ <classifier>alpha</classifier>
+ </properties>
+
+ <distributionManagement>
+ <!-- use the following if you're not using a snapshot version. -->
+ <repository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>2.5.6</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <!-- Have to set source level to at least Java5, we use annotations (Nexus requries 1.6) -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <!--<configuration>-->
+ <!--<skip>true</skip>-->
+ <!--</configuration>-->
+ </plugin>
+
+ <!-- NEXUS-5094 Purging snapshot task should take into account classifier -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <classifier>${classifier}</classifier>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>org.sonatype.plugins</groupId>-->
+ <!--<artifactId>nexus-staging-maven-plugin</artifactId>-->
+ <!--<version>1.4.4</version>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<goals>-->
+ <!--<goal>deploy</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<serverId>staging-nexus</serverId>-->
+ <!--<nexusUrl>http://localhost:8081/nexus/</nexusUrl>-->
+
+ <!--&lt;!&ndash; explicit matching using the staging profile id &ndash;&gt;-->
+ <!--<stagingProfileId>12f36b985ec40644</stagingProfileId>-->
+
+ <!--</configuration>-->
+ <!--</plugin>-->
+ </plugins>
+ </build>
+
+</project>
1  ...e/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom.md5
View
@@ -0,0 +1 @@
+c84ba04ce87a11fb89f8aae1008ac478
1  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154949-1.pom.sha1
View
@@ -0,0 +1 @@
+49350cf225c3eed4381a797b33d30f5ca74b07d0
BIN  ...src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar
View
Binary file not shown
1  ...test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar.md5
View
@@ -0,0 +1 @@
+f5c4ef7c78a8bd6c136ec3e6ab45cbfc
1  ...est/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2-alpha.jar.sha1
View
@@ -0,0 +1 @@
+e68f95d461e6b9228bd73f8c7d5452f12e6dbe68
122 ...-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom
View
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <packaging>jar</packaging>
+
+ <name>release-remover-test</name>
+
+ <properties>
+ <classifier>alpha</classifier>
+ </properties>
+
+ <distributionManagement>
+ <!-- use the following if you're not using a snapshot version. -->
+ <repository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>2.5.6</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <!-- Have to set source level to at least Java5, we use annotations (Nexus requries 1.6) -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <!--<configuration>-->
+ <!--<skip>true</skip>-->
+ <!--</configuration>-->
+ </plugin>
+
+ <!-- NEXUS-5094 Purging snapshot task should take into account classifier -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <classifier>${classifier}</classifier>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>org.sonatype.plugins</groupId>-->
+ <!--<artifactId>nexus-staging-maven-plugin</artifactId>-->
+ <!--<version>1.4.4</version>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<goals>-->
+ <!--<goal>deploy</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<serverId>staging-nexus</serverId>-->
+ <!--<nexusUrl>http://localhost:8081/nexus/</nexusUrl>-->
+
+ <!--&lt;!&ndash; explicit matching using the staging profile id &ndash;&gt;-->
+ <!--<stagingProfileId>12f36b985ec40644</stagingProfileId>-->
+
+ <!--</configuration>-->
+ <!--</plugin>-->
+ </plugins>
+ </build>
+
+</project>
1  ...e/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom.md5
View
@@ -0,0 +1 @@
+c84ba04ce87a11fb89f8aae1008ac478
1  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154953-2.pom.sha1
View
@@ -0,0 +1 @@
+49350cf225c3eed4381a797b33d30f5ca74b07d0
BIN  ...src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar
View
Binary file not shown
1  ...test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar.md5
View
@@ -0,0 +1 @@
+f5c4ef7c78a8bd6c136ec3e6ab45cbfc
1  ...est/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3-alpha.jar.sha1
View
@@ -0,0 +1 @@
+e68f95d461e6b9228bd73f8c7d5452f12e6dbe68
122 ...-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom
View
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <packaging>jar</packaging>
+
+ <name>release-remover-test</name>
+
+ <properties>
+ <classifier>alpha</classifier>
+ </properties>
+
+ <distributionManagement>
+ <!-- use the following if you're not using a snapshot version. -->
+ <repository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>2.5.6</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <!-- Have to set source level to at least Java5, we use annotations (Nexus requries 1.6) -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <!--<configuration>-->
+ <!--<skip>true</skip>-->
+ <!--</configuration>-->
+ </plugin>
+
+ <!-- NEXUS-5094 Purging snapshot task should take into account classifier -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <classifier>${classifier}</classifier>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>org.sonatype.plugins</groupId>-->
+ <!--<artifactId>nexus-staging-maven-plugin</artifactId>-->
+ <!--<version>1.4.4</version>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<goals>-->
+ <!--<goal>deploy</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<serverId>staging-nexus</serverId>-->
+ <!--<nexusUrl>http://localhost:8081/nexus/</nexusUrl>-->
+
+ <!--&lt;!&ndash; explicit matching using the staging profile id &ndash;&gt;-->
+ <!--<stagingProfileId>12f36b985ec40644</stagingProfileId>-->
+
+ <!--</configuration>-->
+ <!--</plugin>-->
+ </plugins>
+ </build>
+
+</project>
1  ...e/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom.md5
View
@@ -0,0 +1 @@
+c84ba04ce87a11fb89f8aae1008ac478
1  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.154956-3.pom.sha1
View
@@ -0,0 +1 @@
+49350cf225c3eed4381a797b33d30f5ca74b07d0
BIN  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar
View
Binary file not shown
1  .../test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar.md5
View
@@ -0,0 +1 @@
+0264d74872c0be6608a48778edb42594
1  ...test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4-beta.jar.sha1
View
@@ -0,0 +1 @@
+1d425e066520243e18e1de36d8afbd57fb8a94d4
122 ...-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom
View
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <packaging>jar</packaging>
+
+ <name>release-remover-test</name>
+
+ <properties>
+ <classifier>beta</classifier>
+ </properties>
+
+ <distributionManagement>
+ <!-- use the following if you're not using a snapshot version. -->
+ <repository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>2.5.6</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <!-- Have to set source level to at least Java5, we use annotations (Nexus requries 1.6) -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <!--<configuration>-->
+ <!--<skip>true</skip>-->
+ <!--</configuration>-->
+ </plugin>
+
+ <!-- NEXUS-5094 Purging snapshot task should take into account classifier -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <classifier>${classifier}</classifier>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>org.sonatype.plugins</groupId>-->
+ <!--<artifactId>nexus-staging-maven-plugin</artifactId>-->
+ <!--<version>1.4.4</version>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<goals>-->
+ <!--<goal>deploy</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<serverId>staging-nexus</serverId>-->
+ <!--<nexusUrl>http://localhost:8081/nexus/</nexusUrl>-->
+
+ <!--&lt;!&ndash; explicit matching using the staging profile id &ndash;&gt;-->
+ <!--<stagingProfileId>12f36b985ec40644</stagingProfileId>-->
+
+ <!--</configuration>-->
+ <!--</plugin>-->
+ </plugins>
+ </build>
+
+</project>
1  ...e/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom.md5
View
@@ -0,0 +1 @@
+9d58c3ee4401930b308f137ecfc34593
1  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155001-4.pom.sha1
View
@@ -0,0 +1 @@
+0def1301dff6b05bf71cf2c7b9208203bf4eac89
BIN  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar
View
Binary file not shown
1  .../test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar.md5
View
@@ -0,0 +1 @@
+0264d74872c0be6608a48778edb42594
1  ...test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5-beta.jar.sha1
View
@@ -0,0 +1 @@
+1d425e066520243e18e1de36d8afbd57fb8a94d4
122 ...-core/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom
View
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.sonatype</groupId>
+ <artifactId>test</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <packaging>jar</packaging>
+
+ <name>release-remover-test</name>
+
+ <properties>
+ <classifier>beta</classifier>
+ </properties>
+
+ <distributionManagement>
+ <!-- use the following if you're not using a snapshot version. -->
+ <repository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/releases/</url>
+ </repository>
+ <snapshotRepository>
+ <id>staging-nexus</id>
+ <name>RepositoryProxyRel</name>
+ <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.8.3</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>2.5.6</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-library</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ <version>1.3</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <!-- Have to set source level to at least Java5, we use annotations (Nexus requries 1.6) -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.5.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <!--<configuration>-->
+ <!--<skip>true</skip>-->
+ <!--</configuration>-->
+ </plugin>
+
+ <!-- NEXUS-5094 Purging snapshot task should take into account classifier -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <classifier>${classifier}</classifier>
+ </configuration>
+ </plugin>
+
+ <!--<plugin>-->
+ <!--<groupId>org.sonatype.plugins</groupId>-->
+ <!--<artifactId>nexus-staging-maven-plugin</artifactId>-->
+ <!--<version>1.4.4</version>-->
+ <!--<executions>-->
+ <!--<execution>-->
+ <!--<goals>-->
+ <!--<goal>deploy</goal>-->
+ <!--</goals>-->
+ <!--</execution>-->
+ <!--</executions>-->
+ <!--<configuration>-->
+ <!--<serverId>staging-nexus</serverId>-->
+ <!--<nexusUrl>http://localhost:8081/nexus/</nexusUrl>-->
+
+ <!--&lt;!&ndash; explicit matching using the staging profile id &ndash;&gt;-->
+ <!--<stagingProfileId>12f36b985ec40644</stagingProfileId>-->
+
+ <!--</configuration>-->
+ <!--</plugin>-->
+ </plugins>
+ </build>
+
+</project>
1  ...e/src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom.md5
View
@@ -0,0 +1 @@
+9d58c3ee4401930b308f137ecfc34593
1  .../src/test/resources/reposes/snapshots/org/sonatype/test/1.0-SNAPSHOT/test-1.0-20130501.155005-5.pom.sha1
View
@@ -0,0 +1 @@
+0def1301dff6b05bf71cf2c7b9208203bf4eac89
2  nexus-test/nexus-it-helper-plugin/src/test/java/org/sonatype/security/realms/simple/SimpleRealmTest.java
View
@@ -57,7 +57,7 @@ protected void setUp()
// copy the tests nexus.xml and security.xml to the correct location
copyTestConfigToPlace();
// restart security
- lookup( ConfigurationManager.class ).clearCache();
+ lookup( ConfigurationManager.class, "legacydefault" ).clearCache();
lookup( SecuritySystem.class ).start();
}
8 plugins/kenai/nexus-kenai-plugin/pom.xml
View
@@ -31,7 +31,7 @@
<properties>
<pluginName>Nexus Kenai Realm Plugin</pluginName>
<pluginDescription>Adds Kenai realm to Nexus.</pluginDescription>
- <security.version>3.0.3-SNAPSHOT</security.version>
+ <security.version>3.1-SNAPSHOT</security.version>
<jetty.version>6.1.12</jetty.version>
</properties>
@@ -48,12 +48,6 @@
<artifactId>org.json</artifactId>
<version>2.0-NEXUS-3758</version>
</dependency>
- <dependency>
- <groupId>org.sonatype.security.realms</groupId>
- <artifactId>security-xml-realm</artifactId>
- <version>${security.version}</version>
- <scope>provided</scope>
- </dependency>
<!-- These below are transitive deps but are in core already -->
<dependency>
6 plugins/nexus-ui-extjs3-plugin/src/main/resources/static/js/Sonatype/utils.js
View
@@ -729,7 +729,7 @@ define('Sonatype/utils',['../extjs', 'Nexus/config', 'Nexus/util/Format', 'Sonat
}
},
start : function() {
- if (running === null && !Sonatype.utils.noSessionTimeout) {
+ if (running === null) {
running = Ext.TaskMgr.start(config);
}
}};
@@ -833,8 +833,6 @@ define('Sonatype/utils',['../extjs', 'Nexus/config', 'Nexus/util/Format', 'Sonat
ns.formattedAppName = Ext.namespace('Sonatype.utils').parseFormattedAppName(respObj.data.formattedAppName);
- ns.noSessionTimeout = respObj.data.noSessionTimeout;
-
Ext.get('logo').update('<span>' + ns.formattedAppName + '</span>');
Sonatype.view.headerPanel.doLayout();
@@ -860,8 +858,6 @@ define('Sonatype/utils',['../extjs', 'Nexus/config', 'Nexus/util/Format', 'Sonat
Sonatype.user.curr.username = null;
Sonatype.user.curr.loggedInUserSource = null;
- // nexusStatus REST call unsuccessful, so we just turn off the ping here
- ns.noSessionTimeout = true;
}
var availSvrs = Sonatype.config.installedServers;
7 plugins/restlet1x/nexus-restlet1x-model/src/main/mdo/vos.xml
View
@@ -3150,13 +3150,6 @@
<required>true</required>
<description>Flag that states if current installed license is a trial license.</description>
</field>
- <field>
- <name>noSessionTimeout</name>
- <version>1.0.0+</version>
- <type>boolean</type>
- <required>true</required>
- <description>Flag that enables or disables the UI 'pinging' the status resource.</description>
- </field>
</fields>
</class>
5 .../restlet1x/nexus-restlet1x-plugin/src/main/java/org/sonatype/nexus/rest/status/StatusPlexusResource.java
View
@@ -33,7 +33,6 @@
import org.sonatype.nexus.rest.model.NexusAuthenticationClientPermissions;
import org.sonatype.nexus.rest.model.StatusResource;
import org.sonatype.nexus.rest.model.StatusResourceResponse;
-import org.sonatype.nexus.util.SystemPropertiesHelper;
import org.sonatype.plexus.rest.resource.ManagedPlexusResource;
import org.sonatype.plexus.rest.resource.PathProtectionDescriptor;
import org.sonatype.security.rest.authentication.AbstractUIPermissionCalculatingPlexusResource;
@@ -51,8 +50,6 @@
@Requirement
private Nexus nexus;
- private boolean noSessionTimeout = SystemPropertiesHelper.getBoolean( "nexus.ui.noSessionTimeout", false );
-
@Override
public Object getPayloadInstance()
{
@@ -151,8 +148,6 @@ public Object get( Context context, Request request, Response response, Variant
resource.setTrialLicense( status.isTrialLicense() );
- resource.setNoSessionTimeout( noSessionTimeout );
-
StatusResourceResponse result = new StatusResourceResponse();
result.setData( resource );
2  ...us-restlet1x-plugin/src/main/java/org/sonatype/security/rest/privileges/PrivilegeTypePlexusResource.java
View
@@ -58,7 +58,7 @@
public static final String RESOURCE_URI = "/privilege_types";
@Inject
- @Named( "resourceMerging" )
+ @Named( "default" )
private ConfigurationManager configurationManager;
@Override
2  pom.xml
View
@@ -335,7 +335,7 @@
<dependency>
<groupId>org.sonatype.sisu</groupId>
<artifactId>sisu-task-scheduler</artifactId>
- <version>1.8-SNAPSHOT</version>
+ <version>1.8.1</version>
</dependency>
<!--
Please sign in to comment.
Something went wrong with that request. Please try again.