Server maintenance between 8:00 a.m, to 5:00 p.m Saturday, December 02 , 2017, US/Eastern (EST). During the server maintenance time period, spaces.internet2.edu would be in READ Only Mode!!! If you have any questions or concerns please contact spaces-admin@internet2.edu.
Skip to end of metadata
Go to start of metadata

 This topic is discussed in the "Grouper Installer" training video.

The Grouper Installer is a jar that will install the Grouper API, quickstart data (optional), UI, WS, and client.  The only prerequisites are Java 7+ JDK (note, you shouldnt use Java8 in Grouper 2.2-), and the grouperInstaller.jar.  It will work in Windows, Unix, Mac (any OS where you can run DOS or shell scripts).  It prints out which files are being edited, and which commands are being run, so the user can learn from what is going on.  It uses the stock Grouper packages so there is no magic or hidden configuration included.

In Grouper 2.2.1 the installer can upgrade Grouper as well.

Here is a movie showing the installer (windows, unix/linux/mac)

Note, this is sort of a bootstrap, or quick start.  If you are managing dev/test/prod envs you might use this to build grouper, but then have other scripts and config files managed in those envs.  See this wiki as an example

Note: you should run the grouper loader all the time for any Grouper deployment.  It also runs background tasks even if you arent automatically loading groups.

Running without network

The Grouper installer requires the internet to download the Grouper tarballs.  If you want to run this without the network, download all the tarballs (example links for 2.2.1) (installer, apiBinary, ui, ws, client, psp) and the subjects file (into subjects.sql), and quickstart file (into quickstart.xml), ant, tomcat to the install directory.  Download all the patches.  When the script asks if you want to use the local files, type: t (or just <Enter> since the default is t)

Make a grouper.installer.properties

# this should be before the version number
#download.server.url = http://localhost:8090/grouper-ws/temp
download.server.url = http://software.internet2.edu/grouper
 
# default version to install
grouper.version = 2.2.1

# if should use local files only for development
grouperInstaller.useLocalFilesOnlyForDevelopment = t

 

Run the installer like this (note use a semicolon instead of a colon on windows):

java -jar grouperInstaller.jar

 

FAQ

How do I create a schema for my database?

Ask the DBA to do this, here is an example for a local Oracle installation

CREATE USER grouper_v1_5 IDENTIFIED BY xxxxxxxx
 DEFAULT TABLESPACE "USERS"
 QUOTA UNLIMITED ON "USERS";

GRANT "CONNECT" TO grouper_v1_5;
GRANT "RESOURCE" TO grouper_v1_5;

-- 2 Roles for grouper_v1_5 
GRANT CONNECT TO grouper_v1_5;
GRANT RESOURCE TO grouper_v1_5;
ALTER USER grouper_v1_5 DEFAULT ROLE ALL;
-- 5 System Privileges for grouper_v1_5 
GRANT CREATE SEQUENCE TO grouper_v1_5;
GRANT CREATE SESSION TO grouper_v1_5;
GRANT CREATE TABLE TO grouper_v1_5;
GRANT CREATE VIEW TO grouper_v1_5;
GRANT UNLIMITED TABLESPACE TO grouper_v1_5;

I'm using local files for grouperInstaller.jar, but don't see an option for using local files which are in the jar's directory.

It will install the first time without using local files.  Then once things are downloaded and built, stop tomcat and hsql, and put some jars in the API lib/custom directory.  Then run the installer again, but dont download or extract the tarballs again, and it should build the UI/WS with your jars.

Problem with HSQL DB port:

If there is a problem with the HSQL port, then select that you do not want to use the default included database, then for the database URL, change the port to something else, e.g. from 9001 to 9002 with URL like this: jdbc:hsqldb:hsql://localhost:9002/grouper     Leave the username and pass as "sa" and <blank>, and continue

Problem with Java JDK:

There are two types of Java: JRE (runtime env), and JDK (development kit).  If you are running with the JRE (which doesnt have a compiler), then you need to make sure you run with the JDK.  If you type "javac -version" in your prompt, and it is not java6, or it is not found, then try running the installer with the absolute path of java, e.g. on windows:

C:\projects\grouper.installer-2.0.3>"c:\Program Files\Java\jdk1.7.0_14\bin\java.exe" -jar grouperInstaller.jar

What do I do when I am done with the installer?

See the page on Getting Ready for Production

Example output

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\mchyzer>cd ..

C:\Users>cd ..

C:\>cd temp

C:\temp>cd grouperInstaller

C:\temp\grouperInstaller>java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)

C:\temp\grouperInstaller>java -jar grouperInstaller.jar
Enter in the Grouper install directory (note: better if no spaces or special chars) [C:\temp\grouperInstaller]:
Installing grouper version: 2.0.2
Downloading from URL: http://www.internet2.edu/grouper/release/2.0.2/grouper.apiBinary-2.0.2.tar.gz to file: C:\temp\gro
uperInstaller\grouper.apiBinary-2.0.2.tar.gz
Unzipping: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2.tar.gz
Expanding: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2.tar
Do you want to use the default and included hsqldb database (t|f)? [t]:
Editing C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties:
 - set property: hibernate.connection.url from: jdbc:hsqldb:hsql://localhost/grouper to: jdbc:hsqldb:hsql://localhost:90
01/grouper
 - property hibernate.connection.username already was set to: sa, not changing file
 - property hibernate.connection.password already was set to: , not changing file
Do you want this script to start the hsqldb database (note, it must not be running in able to start) (t|f)? [t]:
HSQL was not detected to be running (did not successfully stop it)
Starting DB with command: C:\dev_inst\java\bin\java -cp C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\lib\jdbcSamples
\hsqldb.jar org.hsqldb.Server -database.0 file:C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\grouper -dbname.0 groupe
r
Checking database with query: SELECT 1 FROM INFORMATION_SCHEMA.SYSTEM_USERS
Successfully tested database connection
Do you want to init the database (delete all existing grouper tables, add new ones) (t|f)? t

##################################
Initting DB with command: cmd /c C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\gsh.bat -registry -drop -runscript
 -noprompt

stderr: Grouper ddl object type 'Grouper' has dbVersion: 0 and java version: 25
Grouper ddl object type 'Subject' has dbVersion: 0 and java version: 1
Grouper database schema DDL requires updates
(should run script manually and carefully, in sections, verify data before drop statements, backup/export important data
 before starting, follow change log on confluence, dont run exact same script in multiple envs - generate a new one for
each env),
script file is:
C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\ddlScripts\grouperDdl_20111229_12_54_18_538.sql

stdout: Using GROUPER_HOME:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..
Using GROUPER_CONF:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\../conf
Using JAVA:                   java
using MEMORY:                 64m-750m
Grouper starting up: version: 2.0.2, build date: 2011/12/22 14:53:30, env: <no label configured>
grouper.properties read from: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.properties
Grouper current directory is: C:\temp\grouperInstaller
log4j.properties read from:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.properties
Grouper is logging to file:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..\logs\grouper_error.log, at min lev
el WARN for package: edu.internet2.middleware.grouper, based on log4j.properties
grouper.hibernate.properties: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties
grouper.hibernate.properties: sa@jdbc:hsqldb:hsql://localhost:9001/grouper
sources.xml read from:        C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.xml
sources.xml groupersource id: g:gsa
sources.xml jdbc source id:   jdbc: GrouperJdbcConnectionProvider
Script was executed successfully



End Initting DB
##################################

Do you want to add quick start subjects to DB (t|f)? [t]
Downloading from URL: http://anonsvn.internet2.edu/cgi-bin/viewvc.cgi/i2mi/tags/GROUPER_2_0_2/grouper-qs-builder/subject
s.sql?view=co to file: C:\temp\grouperInstaller\subjects.sql

##################################
Adding sample subjects with command: cmd /c C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\gsh.bat -registry -runs
qlfile C:\temp\grouperInstaller\subjects.sql -noprompt

stdout: Using GROUPER_HOME:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..
Using GROUPER_CONF:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\../conf
Using JAVA:                   java
using MEMORY:                 64m-750m
Script was executed successfully

Grouper starting up: version: 2.0.2, build date: 2011/12/22 14:53:30, env: <no label configured>
grouper.properties read from: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.properties
Grouper current directory is: C:\temp\grouperInstaller
log4j.properties read from:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.properties
Grouper is logging to file:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..\logs\grouper_error.log, at min lev
el WARN for package: edu.internet2.middleware.grouper, based on log4j.properties
grouper.hibernate.properties: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties
grouper.hibernate.properties: sa@jdbc:hsqldb:hsql://localhost:9001/grouper
sources.xml read from:        C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.xml
sources.xml groupersource id: g:gsa
sources.xml jdbc source id:   jdbc: GrouperJdbcConnectionProvider


End adding sample subjects
##################################

Do you want to add quickstart data to registry (t|f)? [t]
Downloading from URL: http://anonsvn.internet2.edu/cgi-bin/viewvc.cgi/i2mi/tags/GROUPER_2_0_2/grouper-qs-builder/quickst
art.xml?view=co to file: C:\temp\grouperInstaller\quickstart.xml

##################################
Adding quickstart data with command: cmd /c C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\gsh.bat -xmlimportold G
rouperSystem C:\temp\grouperInstaller\quickstart.xml -noprompt

stderr: Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInvite
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteExpireDate
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDate
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectEmailAddress
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteGroupUuids
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteMemberId
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteUuid
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmailWhenRegis
tered
Grouper note: auto-created attributeDefName: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmail
Grouper note: auto-created attributeDefName: etc:attribute:rules:rule
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleActAsSubjectId
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleActAsSubjectIdentifier
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleActAsSubjectSourceId
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckType
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckOwnerId
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckOwnerName
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckStemScope
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckArg0
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleCheckArg1
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfOwnerId
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfOwnerName
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfConditionEl
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfConditionEnum
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfConditionEnumArg0
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfConditionEnumArg1
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleIfStemScope
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleThenEl
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleThenEnum
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleThenEnumArg0
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleThenEnumArg1
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleThenEnumArg2
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleValid
Grouper note: auto-created attributeDefName: etc:attribute:rules:ruleRunDaemon
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitExpression
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitIpOnNetworks
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitIpOnNetworkRealm
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitLabelsContain
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitAmountLessThan
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitAmountLessThanOrEqual
Grouper note: auto-created attributeDefName: etc:attribute:permissionLimits:limitWeekday9to5
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoader
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderType
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderDbName
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderScheduleType
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderQuartzCron
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderIntervalSeconds
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderPriority
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderAttrsLike
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderAttrQuery
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderAttrSetQuery
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderActionQuery
Grouper note: auto-created attributeDefName: etc:attribute:attrLoader:attributeLoaderActionSetQuery

stdout: Using GROUPER_HOME:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..
Using GROUPER_CONF:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\../conf
Using JAVA:                   java
using MEMORY:                 64m-750m
Grouper starting up: version: 2.0.2, build date: 2011/12/22 14:53:30, env: <no label configured>
grouper.properties read from: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.properties
Grouper current directory is: C:\temp\grouperInstaller
log4j.properties read from:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.properties
Grouper is logging to file:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..\logs\grouper_error.log, at min lev
el WARN for package: edu.internet2.middleware.grouper, based on log4j.properties
grouper.hibernate.properties: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties
grouper.hibernate.properties: sa@jdbc:hsqldb:hsql://localhost:9001/grouper
sources.xml read from:        C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.xml
sources.xml groupersource id: g:gsa
sources.xml jdbc source id:   jdbc: GrouperJdbcConnectionProvider


End adding quickstart data
##################################

Downloading from URL: http://www.internet2.edu/grouper/release/2.0.2/grouper.ui-2.0.2.tar.gz to file: C:\temp\grouperIns
taller\grouper.ui-2.0.2.tar.gz
Unzipping: C:\temp\grouperInstaller\grouper.ui-2.0.2.tar.gz
Expanding: C:\temp\grouperInstaller\grouper.ui-2.0.2.tar
Copying file: C:\temp\grouperInstaller\grouper.ui-2.0.2\build.properties.template to file: C:\temp\grouperInstaller\grou
per.ui-2.0.2\build.properties
Editing C:\temp\grouperInstaller\grouper.ui-2.0.2\build.properties:
 - set property: grouper.folder from: ../grouper to: C:/temp/grouperInstaller/grouper.apiBinary-2.0.2
 - set property: should.copy.context.xml.to.metainf from: true to: false
Downloading from URL: http://www.internet2.edu/grouper/downloads/tools/apache-ant-1.8.2-bin.tar.gz to file: C:\temp\grou
perInstaller\apache-ant-1.8.2-bin.tar.gz
Unzipping: C:\temp\grouperInstaller\apache-ant-1.8.2-bin.tar.gz
Expanding: C:\temp\grouperInstaller\apache-ant-1.8.2-bin.tar

##################################
Building UI with command:
C:\temp\grouperInstaller\grouper.ui-2.0.2> cmd /c C:\temp\grouperInstaller\apache-ant-1.8.2\bin\ant.bat dist

stdout: Buildfile: C:\temp\grouperInstaller\grouper.ui-2.0.2\build.xml
     [copy] Copying 1 file to C:\temp\grouperInstaller\grouper.ui-2.0.2

dist:

-setup:

-choose-webapp:
[propertyfile] Creating new property file: C:\temp\grouperInstaller\grouper.ui-2.0.2\.lastbuild.properties
     [echo] In setup - do.clean = true   cleanable=${webapp.folder.cleanable}

-doStop:

-doCleanWebappClassFolder:
     [echo] Removing  C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper/WEB-INF/classes

-doClean:
     [echo] Removing  C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\temp

-resources:
     [echo] In resources - Build folder = C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper

-dist-grouper:
     [echo] Creating  C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\classes
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\lib
     [echo] Copying Grouper configuration files to C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper/WEB-INF/classe
s
     [copy] Copying 11 files to C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\classes

-local-log4j:

-fix-grouper-home:
     [echo] Attempting to replace grouper.home with C:/temp/grouperInstaller/grouper.apiBinary-2.0.2/
     [echo] Copying ui resources to C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper/WEB-INF/classes/resources
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\classes\resources
     [copy] Copying 8 files to C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\classes\resources

-additional-build:

-optional-conf:

-webapp:
   [delete] Deleting directory C:\temp\grouperInstaller\grouper.ui-2.0.2\temp
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\temp

-compileGrouper:
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\jarBin
    [javac] C:\temp\grouperInstaller\grouper.ui-2.0.2\build.xml:436: warning: 'includeantruntime' was not set, defaultin
g to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 264 source files to C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\jarBin
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
      [jar] Building jar: C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\lib\grouper-ui.jar

-additional-build:
     [copy] Copying 62 files to C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\lib
     [copy] Copying 5 files to C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper\WEB-INF\lib

-copyContent:
     [echo] Copying core UI files to C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper
     [copy] Copying 603 files to C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper
     [echo] Processing web.xml
     [copy] Copying 1 file to C:\temp\grouperInstaller\grouper.ui-2.0.2\temp
     [echo] web.xmls.isempty=:${web.xmls.isempty}:

-merge-xmls:
     [echo] temp.dir : C:\temp\grouperInstaller\grouper.ui-2.0.2/temp
     [echo] final.web.xmls : ${final.web.xmls}
     [echo] ui.folder : C:\temp\grouperInstaller\grouper.ui-2.0.2
     [echo] webapp.folder : C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper
     [copy] Copying 1 file to C:\temp\grouperInstaller\grouper.ui-2.0.2\temp
     [copy] Copying 1 file to C:\temp\grouperInstaller\grouper.ui-2.0.2\temp
     [echo] Transforming: C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\50.web.core.xml
     [echo] C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\60.web.ajax.xml
     [echo] C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\99.web.core-filters.xml
     [echo]
     [echo]
     [echo] Base = C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\50.web.core.xml
     [echo]  + C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\60.web.ajax.xml
     [echo]  -> C:\temp\grouperInstaller\grouper.ui-2.0.2/temp\web.1.xml
     [echo]
     [echo] Base = C:\temp\grouperInstaller\grouper.ui-2.0.2/temp\web.1.xml
     [echo]  + C:\temp\grouperInstaller\grouper.ui-2.0.2\temp\99.web.core-filters.xml
     [echo]  -> C:\temp\grouperInstaller\grouper.ui-2.0.2/dist/grouper/WEB-INF/web.xml
     [echo] Result: 0

-copy-core-web-xml:

-copyContextXmlToMetaInf:

-copyContextXmlToTomcat:

-html:

-war:

-web:
     [echo] ****************************************************
     [echo] ** The Grouper UI will fail to start if the user  **
     [echo] ** which your application server runs as does not **
     [echo] ** have permission to write to the log files that **
     [echo] ** are configured in log4j.properties. See        **
     [echo] ** build.properties for more information          **
     [echo] ****************************************************

BUILD SUCCESSFUL
Total time: 13 seconds


End building UI
##################################

Downloading from URL: http://www.internet2.edu/grouper/downloads/tools/apache-tomcat-6.0.35.tar.gz to file: C:\temp\grou
perInstaller\apache-tomcat-6.0.35.tar.gz
Unzipping: C:\temp\grouperInstaller\apache-tomcat-6.0.35.tar.gz
Expanding: C:\temp\grouperInstaller\apache-tomcat-6.0.35.tar
What ports do you want tomcat to run on (HTTP, JK, shutdown): [8080, 8009, 8005]:
Enter the URL path for the UI [grouper]:
Editing tomcat config file: C:\temp\grouperInstaller\apache-tomcat-6.0.35\conf\server.xml
 - adding tomcat context for UI line: '<Context docBase="C:\temp\grouperInstaller\grouper.ui-2.0.2\dist\grouper" path="/
grouper" reloadable="false"/>'
Do you want to set the GrouperSystem password in C:\temp\grouperInstaller\apache-tomcat-6.0.35\conf\tomcat-users.xml? [t
]:
Enter the GrouperSystem password: somePass
Editing file: C:\temp\grouperInstaller\apache-tomcat-6.0.35\conf\tomcat-users.xml
 - adding Tomcat user GrouperSystem line: '<user username="GrouperSystem" password="somePass" roles="grouper_user"/>'
 - adding Tomcat role grouper_user line: '<role rolename="grouper_user"/>'
Do you want to set URIEncoding to UTF-8 in tomcat server.xml <Connector> elements (t|f)? [t]: 
 - adding tomcat URIEncoding attribute for element <Connector AJP with value: 'UTF-8'
 - adding tomcat URIEncoding attribute for element <Connector HTTP with value: 'UTF-8'

Tomcat is supposed to be listening on port: 8080, port not listening, assuming tomcat is not running...

##################################
Tomcat start with command (note you need CATALINA_HOME and JAVA_HOME set):
  C:\temp\grouperInstaller\apache-tomcat-6.0.35\bin\startup.bat


End tomcat start (note: logs are in C:\temp\grouperInstaller\apache-tomcat-6.0.35\logs)
##################################

Waiting for tomcat to start...
Tomcat listening on port: 8080
##################################

Go here for the Grouper UI (change hostname if on different host): http://localhost:8080/grouper/

##################################

Downloading from URL: http://www.internet2.edu/grouper/release/2.0.2/grouper.ws-2.0.2.tar.gz to file: C:\temp\grouperIns
taller\grouper.ws-2.0.2.tar.gz
Unzipping: C:\temp\grouperInstaller\grouper.ws-2.0.2.tar.gz
Expanding: C:\temp\grouperInstaller\grouper.ws-2.0.2.tar
Editing C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.properties:
 - set property: grouper.dir from: ../grouper to: C:/temp/grouperInstaller/grouper.apiBinary-2.0.2

##################################
Building WS with command:
C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws> cmd /c C:\temp\grouperInstaller\apache-ant-1.8.2\bin\ant.bat dist

stdout: Buildfile: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.xml

checkGrouper:

dist:

distHelper:

compile:
    [javac] C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.xml:329: warning: 'includeantruntime' was not set
, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 179 source files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.xml:334: warning: 'includeantruntime' was not set
, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 79 source files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws
    [javac] C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.xml:338: warning: 'includeantruntime' was not set
, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 81 source files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws
      [jar] Building jar: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws.jar
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\lib
     [copy] Copying 3 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classe
s
     [copy] Copying 22 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\class
es
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\ehcache.example.xml to C:\temp\grouperInstalle
r\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\ehcache.example.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\ehcache.xml to C:\temp\grouperInstaller\groupe
r.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\ehcache.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper-loader.example.properties to C:\temp\g
rouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper-loader.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper-loader.properties to C:\temp\grouperIn
staller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper-loader.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.client.example.properties to C:\temp\g
rouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.client.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.client.properties to C:\temp\grouperIn
staller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.client.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.ehcache.example.xml to C:\temp\grouper
Installer\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.ehcache.example.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.ehcache.xml to C:\temp\grouperInstalle
r\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.ehcache.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.example.properties to C:\temp\grouperI
nstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.example.properties to C:\tem
p\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.hibernate.example.propertie
s
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties to C:\temp\groupe
rInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.hibernate.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.properties to C:\temp\grouperInstaller
\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\grouper.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.example.properties to C:\temp\grouperIns
taller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\log4j.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.properties to C:\temp\grouperInstaller\g
rouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\log4j.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\morphString.example.properties to C:\temp\grou
perInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\morphString.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\morphString.properties to C:\temp\grouperInsta
ller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\morphString.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\server.example.properties to C:\temp\grouperIn
staller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\server.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\server.properties to C:\temp\grouperInstaller\
grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\server.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.example.xml to C:\temp\grouperInstalle
r\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\sources.example.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.xml to C:\temp\grouperInstaller\groupe
r.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\sources.xml
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\spy.example.properties to C:\temp\grouperInsta
ller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\spy.example.properties
     [copy] Copying C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\spy.properties to C:\temp\grouperInstaller\gro
uper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\classes\spy.properties
     [copy] Copying 112 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\lib
     [copy] Copying 5 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\lib
     [copy] Copying 21 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws
     [move] Moving 1 file to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\services

     [move] Moving 1 file to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws\WEB-INF\services

      [jar] Building jar: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws.war
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws-soap-client
   [delete] Deleting directory C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws-soap-client
    [mkdir] Created dir: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws-soap-client
    [javac] C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build.xml:578: warning: 'includeantruntime' was not set
, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 211 source files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws-soap-cli
ent
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
     [copy] Copying 215 files to C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\grouper-ws-soap-client
     [copy] Copied 4 empty directories to 2 empty directories under C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws
\build\grouper-ws-soap-client
      [jar] Building jar: C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist\grouper-ws-soap-client.jar

BUILD SUCCESSFUL
Total time: 24 seconds


End building Ws
##################################

Enter the URL path for the WS [grouper-ws]:
Editing tomcat config file: C:\temp\grouperInstaller\apache-tomcat-6.0.35\conf\server.xml
 - adding tomcat context for WS line: '<Context docBase="C:\temp\grouperInstaller\grouper.ws-2.0.2\grouper-ws\build\dist
\grouper-ws" path="/grouper-ws" reloadable="false"/>'

##################################
Tomcat stop with command (note you need CATALINA_HOME and JAVA_HOME set):
  C:\temp\grouperInstaller\apache-tomcat-6.0.35\bin\startup.bat


End tomcat stop (note: logs are in C:\temp\grouperInstaller\apache-tomcat-6.0.35\logs)
##################################

Waiting for tomcat to stop....
Tomcat not listening on port: 8080

##################################
Tomcat start with command (note you need CATALINA_HOME and JAVA_HOME set):
  C:\temp\grouperInstaller\apache-tomcat-6.0.35\bin\startup.bat


End tomcat start (note: logs are in C:\temp\grouperInstaller\apache-tomcat-6.0.35\logs)
##################################

Waiting for tomcat to start...
Tomcat listening on port: 8080
This is the Grouper WS URL (change hostname if on different host): http://localhost:8080/grouper-ws/
Downloading from URL: http://www.internet2.edu/grouper/release/2.0.2/grouper.clientBinary-2.0.2.tar.gz to file: C:\temp\
grouperInstaller\grouper.clientBinary-2.0.2.tar.gz
Unzipping: C:\temp\grouperInstaller\grouper.clientBinary-2.0.2.tar.gz
Expanding: C:\temp\grouperInstaller\grouper.clientBinary-2.0.2.tar
Editing C:\temp\grouperInstaller\grouper.clientBinary-2.0.2\grouper.client.properties:
 - set property: grouperClient.webService.url from:  to: http://localhost:8080/grouper-ws/servicesRest
 - set property: grouperClient.webService.login from:  to: GrouperSystem
 - set property: grouperClient.webService.password from:  to: somePass

##################################
Adding user GrouperSystem to grouper-ws users group with command:
  cmd /c C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\gsh.bat -runarg grouperSession = GrouperSession.startRootS
ession();\nwsGroup = new GroupSave(grouperSession).assignName(\"etc:webServiceClientUsers\").assignCreateParentStemsIfNo
tExist(true).save();\nwsGroup.addMember(SubjectFinder.findRootSubject(), false);

stdout: Using GROUPER_HOME:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..
Using GROUPER_CONF:           C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\../conf
Using JAVA:                   java
using MEMORY:                 64m-750m
Grouper starting up: version: 2.0.2, build date: 2011/12/22 14:53:30, env: <no label configured>
grouper.properties read from: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.properties
Grouper current directory is: C:\temp\grouperInstaller
log4j.properties read from:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\log4j.properties
Grouper is logging to file:   C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\bin\..\logs\grouper_error.log, at min lev
el WARN for package: edu.internet2.middleware.grouper, based on log4j.properties
grouper.hibernate.properties: C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\grouper.hibernate.properties
grouper.hibernate.properties: sa@jdbc:hsqldb:hsql://localhost:9001/grouper
sources.xml read from:        C:\temp\grouperInstaller\grouper.apiBinary-2.0.2\conf\sources.xml
sources.xml groupersource id: g:gsa
sources.xml jdbc source id:   jdbc: GrouperJdbcConnectionProvider
Type help() for instructions
Running command(s):

grouperSession = GrouperSession.startRootSession();
wsGroup = new GroupSave(grouperSession).assignName("etc:webServiceClientUsers").assignCreateParentStemsIfNotExist(true).
save();
wsGroup.addMember(SubjectFinder.findRootSubject(), false);


edu.internet2.middleware.grouper.GrouperSession: cb6b4791ec8546b888c506623a427ccd,'GrouperSystem','application'
group: name='etc:webServiceClientUsers' displayName='Grouper Administration:webServiceClientUsers' uuid='ff73a778dfe7455
896034301c9a9b6f6'
true

##################################
Running client command:
C:\temp\grouperInstaller\grouper.clientBinary-2.0.2> C:\dev_inst\java\bin\java -jar grouperClient.jar --operation=getMem
bersWs --groupNames=etc:webServiceClientUsers
stdout: GroupIndex 0: success: T: code: SUCCESS: group: etc:webServiceClientUsers: subjectIndex: 0: GrouperSystem

Success running client command:
##################################
##################################

Installation success!

Go here for the Grouper UI (change hostname if on different host): http://localhost:8080/grouper/

This is the Grouper WS URL (change hostname if on different host): http://localhost:8080/grouper-ws/

##################################


C:\temp\grouperInstaller>

See also

Grouper API

 

  • No labels