Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1. Update <version>: find/replace 2.*-SNAPSHOT with release version

No Formatcode
xml
xml
<version>2.8-SNAPSHOT</version> -> <version>2.8.1</version> 
{noformat]

2.

...

Update

...

<sakai.version>

...

(master

...

pom.xml)

...

Code Block
xml
xml
<sakai.version>2.8.1</sakai.version>
{code}

3.

...

Update

...

Indie version <properties>

...

(master

...

pom.xml)

...

Code Block
xml
xml
<sakai.version>2.8.1</sakai.version>
<sakai.kernel.version>1.2.5</sakai.kernel.version>
 . . .
<sakai.basiclti.version>1.3.3</sakai.basiclti.version>
<sakai.common.version>1.1.3</sakai.common.version>
<sakai.contentreview.version>2.8.5</sakai.contentreview.version>
<sakai.edu-services.version>1.1.2</sakai.edu-services.version>
<sakai.ets.version>0.5.3</sakai.ets.version>
<sakai.entitybroker.version>1.4.2</sakai.entitybroker.version>
<sakai.hybrid.version>1.1.4</sakai.hybrid.version>
<sakai.jsf.version>2.8.2</sakai.jsf.version>
<sakai.msgcntr.version>2.8.1</sakai.msgcntr.version>
<sakai.polls.version>1.4.2</sakai.polls.version>
<sakai.profile.version>2.8.2</sakai.profile.version>
<sakai.profile2.version>1.4.2</sakai.profile2.version>
<sakai.resetpass.version>2.8.2</sakai.resetpass.version>
<sakai.sakai-mock.version>2.8.2</sakai.sakai-mock.version>
<sakai.samigo.version>2.8.2</sakai.samigo.version>
<sakai.scheduler.version>2.8.1</sakai.scheduler.version>
<sakai.search.version>1.3.4</sakai.search.version>
<sakai.shortenedurl.version>1.0.2</sakai.shortenedurl.version>
<sakai.sitestats.version>2.2.1</sakai.sitestats.version>
<sakai.webservices.version>1.0.2</sakai.webservices.version>
{code}



h4. PROPERTIES SETTINGS 

4. Review other properties such as Tomcat or Quartz versions and update as necessary.

Code Block
xml
xml

<sakai.commons.lang.version>2.5</sakai.commons.lang.version>
<sakai.commons.fileupload.version>1.2.1</sakai.commons.fileupload.version>
<sakai.ehcache.groupId>net.sf.ehcache</sakai.ehcache.groupId>
<sakai.ehcache.artifactId>ehcache</sakai.ehcache.artifactId>
<sakai.ehcache.version>1.6.1</sakai.ehcache.version>
<sakai.hibernate.groupId>org.hibernate</sakai.hibernate.groupId>
<sakai.hibernate.artifactId>hibernate</sakai.hibernate.artifactId>
<sakai.hibernate.version>3.2.7.ga</sakai.hibernate.version>
<sakai.jcr.version>1.0</sakai.jcr.version>
<sakai.pluto.version>1.1.7</sakai.pluto.version>
<sakai.quartz.version>1.6.6</sakai.quartz.version>
<sakai.servletapi.version>2.4</sakai.servletapi.version>
<sakai.spring.groupId>org.springframework</sakai.spring.groupId>
<sakai.spring.artifactId>spring</sakai.spring.artifactId>
<sakai.spring.version>2.5.6.SEC01</sakai.spring.version>
<sakai.spring.test.artifactId>spring-test</sakai.spring.test.artifactId>
<sakai.spring.test.version>2.5.6.SEC01</sakai.spring.test.version>
<sakai.tomcat.version>5.5.33</sakai.tomcat.version>
<sakai.xerces.impl.version>2.6.2</sakai.xerces.impl.version>
<sakai.xerces.api.version>2.6.2</sakai.xerces.api.version>

PROPERTIES SETTINGS (*.sakai.properties:

...

default,

...

demo,

...

sample)

Version
No Format

version.service=RELEASE

...


version.sakai=2.8.1
No Format

version.service=DEMO

...


version.sakai=2.8.1
No Format

version.service=SAMPLE

...


version.sakai=2.8.1

...

No Format


h5. Stealth settings

Stealth the following tools in both release and demo:

Release

...


Stealth settings

Stealth the following tools in both release and demo:

Release

No Format

# STEALTH TOOLS  
# A stealth tool is a tool that is running in Sakai but is not available to be added to a site in Worksite Setup.
# For Development/QA purposes stealthTools property will be commented out; release artifacts will have the property uncommented.
stealthTools@org.sakaiproject.tool.api.ActiveToolManager=sakai.profile

Demo

No Format

# 

...

STEALTH 

...

TOOLS.  A stealth tool is a tool that is running in Sakai, but is not available to be added to a site in Worksite Setup.

...


stealthTools@org.sakaiproject.tool.api.ActiveToolManager=sakai.profile,sakai.search

...

No Format

(-) Review {{

(minus) Review reference/docs/sakai.properties

...

version.service

...

and

...

version.sakai

...

.

...

These

...

files

...

should

...

not

...

have

...

been

...

updated

...

by

...

developers.

...

Check

...

logs

...

for

...

changes.

...

reference/docs/sakai.properties

...

No Format

version.service=RELEASE

...


version.sakai=2

...

No Format


h4. POM UPDATES

h5. Update all Sakai .8.1

POM UPDATES

Update all Sakai non-indie

...

pom.xml

...

<version>

...

values

...

to

...

2.8.1.

...

Update

...

/master/pom.xml

...

<sakai.version>

...

to

...

2.8.1.

...

Code Block
xml
xml
<sakai.version>2.8.1</sakai.version>
{code}

h5. Ensure that 
Ensure that /master/pom.xml

...

includes

...

all

...

the

...

correct

...

indie

...

version

...

properties.

...

Code Block
xml
xml
<sakai.version>2.8.1</sakai.version>
<sakai.kernel.version>1.2.1</sakai.kernel.version>
. . .
<sakai.basiclti.version>1.3.1</sakai.basiclti.version>
<sakai.common.version>1.1.2</sakai.common.version>
<sakai.contentreview.version>2.8.4</sakai.contentreview.version>
<sakai.edu-services.version>1.1.1</sakai.edu-services.version>
<sakai.ets.version>0.5.1</sakai.ets.version>
<sakai.entitybroker.version>1.4.1</sakai.entitybroker.version>
<sakai.hybrid.version>1.1.3</sakai.hybrid.version>
<sakai.jsf.version>2.8.1</sakai.jsf.version>
<sakai.msgcntr.version>2.8.1</sakai.msgcntr.version>
<sakai.polls.version>1.4.1</sakai.polls.version>
<sakai.profile.version>2.8.1</sakai.profile.version>
<sakai.profile2.version>1.4.0</sakai.profile2.version>
<sakai.resetpass.version>2.8.1</sakai.resetpass.version>
<sakai.sakai-mock.version>2.8.1</sakai.sakai-mock.version>
<sakai.samigo.version>2.8.1</sakai.samigo.version>
<sakai.scheduler.version>2.8.1</sakai.scheduler.version>
<sakai.search.version>1.3.2</sakai.search.version>
<sakai.shortenedurl.version>1.0.1</sakai.shortenedurl.version>
<sakai.sitestats.version>2.2.0</sakai.sitestats.version>
<sakai.webservices.version>1.0.1</sakai.webservices.version>
{code}

h5. Confirm 
Confirm /master/pom.xml

...

Sakai

...

Maven

...

plugin

...

<version>

...

from

...

1.2.0

...

Code Block
xml
xml

<plugin>
  <inherited>true</inherited>
  <groupId>org.sakaiproject.maven.plugins</groupId>
  <artifactId>sakai</artifactId>
    <version>1.2.0</version>
    . . . .
</plugin>
{code}

h4. GENERATE RELEASE ARTIFACTS

h5. Get copy of Maven2 repo

-Mount Sakai Maven2 Repo using DAV 

GENERATE RELEASE ARTIFACTS

Get copy of Maven2 repo

Mount Sakai Maven2 Repo using DAV (https:/source.sakaiproject.org/maven2

...

->

...

/Volumes/maven2).

...

WARNING:

...

create

...

backup

...

folder

...

of

...

maven2

...

so

...

that

...

only

...

one

...

copy

...

operation

...

is

...

required

...

in

...

event

...

of

...

a

...

generation

...

failure.

...

This

...

takes

...

far

...

too

...

long

...

to

...

accomplish.

...

Just

...

tar

...

up

...

maven2/org/sakaiproject

...

and

...

sftp

...

or

...

scp

...

across

...

the

...

network.

...

The

...

challenge

...

here

...

is

...

that

...

you

...

need

...

all

...

the

...

Maven

...

metadata

...

files

...

locally

...

so

...

that

...

they

...

can

...

be

...

properly

...

updated

...

during

...

the

...

release.

...

Start

...

thinking

...

about

...

using

...

rsync.

...

Local build machine environment
  1. Check out 2.8.1

...

  1. branch

...

  1. clean

...

  1. Tomcat

...

  1. 5.5.33

...

  1. empty

...

  1. .m2/repository/org/sakaiproject

...

  1. new

...

  1. MySQL

...

  1. 5.1.x

...

  1. sakai

...

  1. db

...

  1. Confirm

...

  1. maven-taglib

...

  1. is

...

  1. defined

...

  1. in

...

  1. .m2/settings.xml

...

No Format
<!-- Reference plugins in order to use <goalPrefix> short-hand -->

...


<pluginGroups>
    <pluginGroup>net.sourceforge.maven-taglib</pluginGroup>

...


</pluginGroups>

...

No Format



h5. 
/master/pom.xml

...

(minus) Confirm <distributionManagement>, maven-taglib-plugin

...

,

...

wagon-webdav

...

<build>

...

extensions

...

are

...

in

...

place.

...

Commit

...

changes

...

if

...

necessary.

...

1.

...

<distributionManagement>

Code Block
xml
xml
<distributionManagement>
    <repository>
      <uniqueVersion>false</uniqueVersion>
      <id>local</id>
      <name>Local Test</name>
      <url>file:///tmp/maven2</url>
      <layout>default</layout>
    </repository>
    <site>
      <id>local</id>
      <name>Local Test</name>
      <url>file:///tmp/site</url>
    </site>
  </distributionManagement>
{code}

2.

...

maven-taglib-plugin

...

Code Block
xml
xml
<plugin>
	<groupId>net.sourceforge.maven-taglib</groupId>
	<artifactId>maven-taglib-plugin</artifactId>
	<configuration>
		<goalPrefix>taglib</goalPrefix>
		<taglib.src.dir>src</taglib.src.dir>

		<!-- <taglib.src.dir>src/webapp/WEB-INF</taglib.src.dir> -->
	</configuration>
</plugin>
{code}

3.

...

wagon-webdav

...

<build>

...

extension

Code Block
xml
xml
<!-- Required for Dav -->
<extensions>
    <extension>
	<groupId>org.apache.maven.wagon</groupId>
	<artifactId>wagon-webdav</artifactId>
        <version>1.0-beta-2</version>
    </extension>
</extensions>
{code}

h5. (-) 
</extensions>
(minus) /reference/conversion

...

Review

...

sql

...

conversion

...

scripts,

...

update

...

and

...

commit

...

as

...

necessary.

...

base

...

pom.xml

...

1.

...

Confirm

...

javadoc

...

plugin

...

definition.

...

Should

...

be

...

configured

...

as

...

follows:

...

Code Block
xml
xml
<plugin>
                <!-- javadocs -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.6.1</version>
                <configuration>
                    <debug>true</debug>
                    <links>
                        <link>http://java.sun.com/j2se/1.5.0/docs/api/
                        </link>
                    </links>
                    <breakiterator>true</breakiterator>
                    <verbose>false</verbose>
                    <aggregate>true</aggregate>
                        <maxmemory>512m</maxmemory>
                        <additionalJOption>-J-Xms168m -J-Xmx512m -J-XX:PermSize=128m -J-XX:NewSize=64m</additionalJOption>
                </configuration>
</plugin>
{code}

2.

...

Confirm

...

that

...

taglib

...

profile

...

is

...

included.

...

Code Block
xml
xml

<profile>
       <id>taglib</id>
            <modules>
                <module>gradebook/app/ui</module>
                <module>help/help-tool</module>
                <!-- <module>jsf/jsf-widgets</module> -->
                <module>metaobj/metaobj-util/tool-lib</module>
                <!-- <module>msgcntr/messageforums-app</module> -->
                <module>osp/common/tool-lib</module>
                <module>osp/glossary/tool-lib</module>
                <module>osp/jsf/widgets</module>
                <module>osp/presentation/tool-lib</module>
                <module>podcasts/podcasts-app</module>
                <module>postem/postem-app</module>
                <!-- <module>profile/profile-app</module> -->
                <module>roster/roster-app</module>
                <module>rwiki/rwiki-tool/tool</module>
                <!-- <module>sam/samigo-app</module> -->
                <module>sections/sections-app</module>
                <module>sections/sections-app-util</module>
                <module>syllabus/syllabus-app</module>
            </modules>
</profile>
{code}

h5.  Run 
Run sakaiartifactgenerator.bash
No Format

sh 

...

sakaiartifactgenerator.sh 2.8.1 /Users/arwhyte/Development/svn/sakai/branches/sakai-2.8.1

...

No Format


h5. Download and check samigo audio jar for signature

...


Download and check samigo audio jar for signature
No Format

jarsigner -verify sakai-samigo-audio-2.8.1.jar

...

No Format


h5. Check artifacts


Check artifacts

1.

...

Build

...

and

...

deploy

...

the

...

sakai-src

...

archives.

...

cd master
mvn install
cd ..
mvn -o

WARNING do not issue clean and install goals or local repo will get wiped prematurely (Sakai maven2 repo has yet to be updated).

No Format

cd master
mvn install
cd ..
mvn -o -Dmaven.test.skip=true sakai:deploy

...

noformat



2.

...

Test

...

the

...

sakai-bin

...

archives

...

Check

...

that

...

the

...

ant

...

task

...

built

...

the

...

archives

...

correctly.

...

Fix

...

if

...

necessary

...

as

...

follows:

No Format
tar 

...

-czvf sakai-bin-2.8.1.tgz ECLv2.text common components licenses server shared webapps

...

noformat



3.

...

Run

...

the

...

demo

...

artifact.

...

Update Sakai Maven2 repo

1. Make backup copy of current maven2/org/sakaiproject

...

folder

...

where

...

x.x.x

...

equals

...

the

...

previous

...

Sakai

...

release

...

number.

...

Then

...

untar

...

updated

...

files:

No Format
sudo 

...

tar -xvzf mavenrepo-2.8.1.tgz -C /var/www/html/

...

No Format


h3. Cut release tag from 

Cut release tag from 2.8.1

...

branch

...

The

...

sakaitagbuilder.bash

...

script

...

accepts

...

two

...

arguments:

...

Sakai

...

version

...

and

...

tag

...

suffix

...

(e.g.,

...

blank,

...

beta01,

...

rc01,

...

qa01).

...

In

...

this

...

case

...

no

...

tag

...

suffix

...

is

...

required.

No Format
bash 

...

sakaitagbuilder-2.8.bash [JIRA ISSUE] sakai-2.8.1 tags 2.8.1

...

noformat

After the release is generated, backup .m2/repository/org/sakaiproject, whack original (to ensure someone new can populate their repo from scratch), download the release tag and build and deploy it to a fresh Tomcat and fresh MySQL database.

...