I ended up running two different builds using Maven profiles.
<profiles>
<profile>
<id>release</id>
<properties>
<release-repository-id>RELEASES</release-repository-id>
<release-repository--url>nexus-server/nexus/service/local/staging/deploy/maven2/</release-repository--url>
</properties>
</profile>
<profile>
<id>internal</id>
<properties>
<release-repository-id>INTERNAL</release-repository-id>
<release-repository--url>nexus-server/nexus/content/repositories/INTERNAL</release-repository--url>
</properties>
</profile>
</profiles>
then I used these properties in the distribution management section
<distributionManagement>
<repository>
<id>${release-repository-id}</id>
<url>${release-repository--url}</url>
</repository>
</distributionManagement>
In this manner, running "mvn release:prepare -Prelease" and "mvn release:prepare -Pinternal" delivered the artifacts to the respective repositories.
These build steps execute on the same checkout working copy, so I get an identical revision for all the build artifacts.