Archiva Redback - Documentation
===============================
:toc:

== Update Information for 3.0

=== Database Schema Changes

==== org.apache.archiva.redback.rbac.Role

New fields:
id, modelId, isTemplateInstance, resource

Primary key changed from name to combined key id,name


== How to build and publish the pages for the archiva web content

This module and the children contain web content and project reports that can be published to the 
archiva web site: https://archiva.apache.org

The web content parts of this module and submodules are published to the path 

  /redback/core

=== Use the script

There is a shell script +deploySite.sh+ which you can run to generate the site check and publish to 
the remote repository. It works only on Linux, on other platforms you have to go the next section.

The script is interactive, it asks you to confirm the publish after generation of the staging part.

.Execute

  ./deploySite.sh 

All arguments are appended to the mvn calls.

=== Run the mvn steps manually

==== Building the pages

You need enough free disk space to publish the web content. The archiva web site repository is big, 
but the maven build will only checkout the necessary directories for this build (sparse checkout).

For all the commands you have to change to this archiva-modules directory:

  cd archiva/archiva-modules

.The following creates the site to the staging folder

  mvn clean site site:stage

The result can be checked in 

  archiva-modules/target/staging/ref/${project.version}

with your browser.

If you would like the use a local checkout of the archiva-web-content.git repository and not push directly
to the remote repository, you may add this parameter:

  -DsiteRepositoryUrl=scm:git:file:///${path-to-your-local-archiva}/archiva-web-content.git

where +${path-to-your-local-archiva}+ is the path where a bare clone of the archiva-web-content.git is stored.

NOTE: You cannot use +mvn site:run+ because this will place the submodules into the same folder and 
      overwrite each other.

==== Publish the pages

.This command publishes to the git repository

  mvn scm-publish:publish-scm

After publishing to the git repository the gitpubsub mechanism is transferring it to the HTTP server.

If you would like the use a local checkout of the archiva-web-content.git repository and not push directly
to the remote repository, you may add this parameter:

  -DsiteRepositoryUrl=scm:git:file:///${path-to-your-local-archiva}/archiva-web-content.git


=== Some notes about the build process

A sparse checkout of the git repository will be created in 

 .site-content

but only, if the directory +.site-content/.git+ does not exist. 


