2024:Grooper Command Console (Application): Difference between revisions
Dgreenwood (talk | contribs) |
Dgreenwood (talk | contribs) |
||
Line 611: | Line 611: | ||
** Use a built-in account ("NT AUTHORITY\\NetworkService" or "NT AUTHORITY\\SYSTEM") when running in a docker container. | ** Use a built-in account ("NT AUTHORITY\\NetworkService" or "NT AUTHORITY\\SYSTEM") when running in a docker container. | ||
* <code>password</code>: The user's password. Leave blank when using Windows authentication or if using a built-in account. | * <code>password</code>: The user's password. Leave blank when using Windows authentication or if using a built-in account. | ||
**<li class="fyi-bullet"> Enter <code>?</code> to prompt the user for their password. This will mask the entered password. | |||
|- | |- | ||
|valign=top| | |valign=top| | ||
Line 634: | Line 635: | ||
** Use a built-in account ("NT AUTHORITY\\NetworkService" or "NT AUTHORITY\\SYSTEM") when running in a docker container. | ** Use a built-in account ("NT AUTHORITY\\NetworkService" or "NT AUTHORITY\\SYSTEM") when running in a docker container. | ||
* <code>password</code>: The user's password. Leave blank when using Windows authentication or if using a built-in account. | * <code>password</code>: The user's password. Leave blank when using Windows authentication or if using a built-in account. | ||
**<li class="fyi-bullet"> Enter <code>?</code> to prompt the user for their password. This will mask the entered password. | |||
|} | |} | ||
Revision as of 16:50, 18 July 2024
2025 BETA |
This article covers new or changed functionality in the current or upcoming beta version of Grooper. Features are subject to change before version 2025's GA release. Configuration and functionality may differ from later beta builds and the final 2025 release. |
Grooper Command Console (or GCC) is an administrative application used to add and remove connections to Grooper Repositories, upgrade existing Grooper Repositories to a newer version, and install and uninstall Grooper Services.
About
FYI |
Grooper Command Console (GCC) replaced Grooper Config in version 2024. All setup and configuration previously done in Grooper Config is now done in Grooper Command Console. |
Grooper Command Console (GCC) is a command line interface for performing system configuration and administrative tasks. GCC is used to:
- Set up new and connecting to existing Grooper Repositories.
- Install and uninstall Grooper Services, such as Activity Processing services.
- Be aware: GCC's primary function is to install services. Managing and configuring them should be done from the Machines node in the Design page.
- Installing product licensing
GCC performs system admin operations using command prompts. The syntax for executing a GCC command is as follows:
gcc> group command parameters
- FYI: The GCC documentation lists required parameters in angle brackets
<>
and optional parameters in square brackets[]
There are seven (7) GCC command groups:
connections
- Used to manage Grooper Repository connectionsdatabases
- Used to manage Grooper databasesservices
- Used to manage Grooper serviceslicense
- Used to manage licensing for a local Grooper license serverscripts
- Used to manage Grooper scriptsutils
- Various utility commandshelp
- Usehelp
commands for more information about commands in a group.help
commands should always follow the syntaxhelp groupName
.- For example,
help connections
will give you information about the various commands in theconnections
group.
How To: Grooper Repository Connections
⚠ |
GCC must be run as an administrator to perform most of its functionality. It performs functions that require elevated access in Windows. |
This portion of the article will instruct you how to use Grooper Command Console to do the following things:
- Connect to an existing Grooper Repository
- Create and connect to a new Grooper Repository
- Upgrade a Grooper Repository to a new version
Connect to an existing Grooper Repository
⚠ |
BE AWARE: Recycle the Grooper app pool after adding new Grooper Repository connections If you want to immediately see the new Grooper Repository connection is Grooper, you will need to recycle the Grooper app pool in IIS. This includes connections to newly created Grooper Repositories as well as new connections to existing Grooper Repositories. |
When using GCC to connect to an existing Grooper Repository, you just need to enter a single GCC command.
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command to connect to the Grooper Repository:
connections add <server> <database> [user] [password]
<server>
is a required parameter. Enter the SQL Server instance's name hosting the Grooper database.<database>
is a required parameter. Enter the name of the Grooper database. If the database name contains spaces, you must enclose the whole name in quotes (i.e."database name"
)[user]
and[password]
are optional parameters. Windows will pass through the currently logged on user's credentials if not entered.
For example, if I wanted to connect to a Grooper Repository whose database named "2024 Grooper DB" was hosted on a SQL Server instance named "GROOPERSQL01", I would enter the following GCC command.
connections add GROOPERSQL01 "2024 Grooper DB"
FYI |
After adding a database connection, you may want to verify which Grooper Repositories you are connected to. To verify which Grooper Repositories you are connected to, use the following command:
connections listThis command will list all current Grooper Repository connections. |
Create and connect to a new Grooper Repository
⚠ |
BE AWARE: Recycle the Grooper app pool after adding new Grooper Repository connections If you want to immediately see the new Grooper Repository connection is Grooper, you will need to recycle the Grooper app pool in IIS. This includes connections to newly created Grooper Repositories as well as new connections to existing Grooper Repositories. |
Creating a new Grooper Repository is done with three GCC commands. (1) You will use a command to create a new Grooper database. (2) You will use a command to add the connection to the newly created Grooper database. (3) You will initialize the new Grooper Repository.
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command to create a new Grooper database:
databases create <serverName> <databseName> [user] [password]
<serverName>
is a required parameter. Enter the name of the SQL Server instance where the database will be created.<databaseName>
is a required parameter. Enter the name of the Grooper database.- If the database name contains spaces, you must enclose the whole name in quotes
- Ex:
"2024 Grooper Database"
[user]
and[password]
are optional parameters. Windows will pass through the currently logged on user's credentials if not entered.
- Use the following GCC command to add a connection to the new Grooper database:
connections add <serverName> <databaseName> [user] [password]
<serverName>
is a required parameter. Enter the SQL Server name from step 2.<databaseName>
is a required parameter. Enter the name of the Grooper database from step 2.- If the database name contains spaces, you must enclose the whole name in quotes.
- Ex:
"2024 Grooper Database"
[user]
and[password]
are optional parameters. Windows will pass through the currently logged on user's credentials if not entered.
- Use the following GCC command to initialize the new Grooper Repository:
connections init <connectionNo> <repositoryName> <storagePath>
- Grooper Repositories must be initialized before they can be used.
- Initialization builds the tables in the Grooper database and associates the Grooper file store's path with the Grooper Repository.
- If you do not have a folder location created for the file store, do so now. You will need to enter a UNC path for the Grooper file store for the
storagePath
parameter
connectionNo
is a required parameter. Enter the connection number for the Grooper Repository you want to initialize.<repositoryName>
is a required parameter. By default, uninitialized Grooper Repositories are named "New Grooper Repository" use the<repositoryName>
parameter to rename your Grooper Repository.- Please enclose this parameter in quotes to avoid conflicts. Spaces in Grooper Repository names will break the GCC command.
- Ex:
"2024 Grooper Repo"
storagePath
is a required parameter. Enter the storage path for your Grooper file store's folder location.- Only use fully qualified UNC paths. Mapped and local drive references may not be accessible to other users or machines.
- Please enclose this parameter in quotes to avoid conflicts. Spaces and special characters in the storage path will break the GCC command.
- Ex:
"\\servername\Grooper File Stores\2024 Grooper Repo File Store"
- Grooper Repositories must be initialized before they can be used.
For example, the following three commands would create a new Grooper Repository named "2024 Grooper Repo" (presuming this is the first Grooper Repository connection added to GCC).
databases create SQLSERVER01 "2024 Grooper Database"
connections add SQLSERVER01 "2024 Grooper Database"
connections init 1 "2024 Grooper Repository" "\\servername\Grooper File Stores\2024 Grooper Repo File Store"
FYI |
Knowing which Grooper Repository connection number you need to enter is critical to using the
connections listThis will list all Grooper Repository connections and display some basic information about them. In this image see connection number "3" is not initialized. |
Upgrade a Grooper Repository to a new version
FYI |
Major versions of Grooper change the Grooper database in meaningful ways. These changes to the database must be reflected by upgrading the Grooper Repository. For major version upgrades (For example, 2023 to 2024), all Grooper Repositories configured on an older version must be upgraded in order to connect to them to Grooper. For minor build upgrades (For example, 24.0.0001 to 24.0.0002) you do not need to upgrade each Grooper Repository. No major changes are made to the Grooper database. You do not need to run the upgrade command in GCC when upgrading minor builds. |
Upgrading a Grooper Repository to a new version is done with a single GCC command. This GCC command will run upgrade code on an older Grooper Repository, allowing it to be used in a newer Grooper version.
IMPORTANT!!! DON'T FORGET TO BACKUP YOUR REPOS
You should always perform a complete backup of your Grooper Repository's file store and database before upgrading to any newer Grooper version.
- If, for whatever reason, something goes wrong during the upgrade process and your file store and/or database is corrupted, you could loose critical components, such as your Batch Processes, Content Models, or documents in testing or production Batches.
- Performing a backup will ensure you have something to revert to in the rare cases where the upgrade does improperly overwrite existing database values or files in your file store.
- For at least one way to backup and restore your Grooper database and file store, please visit the article below:
To upgrade a Grooper Repository:
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command to upgrade the Grooper Repository:
connections upgrade <connectionNo>
connectionNo
is a required parameter. Enter the connection number for the Grooper Repository you want to upgrade.
⚠ |
IMPORTANT - If present, make sure you compile all Object Libraries after the upgrade. IMPORTANT - The devs also strongly recommend that you perform validation on your repository after upgrading.
|
FYI |
Knowing which Grooper Repository connection number you need to enter is critical to using the
connections listThis will list all Grooper Repository connections and display some basic information about them. In this image, see connection number "3" is an older version and needs to be upgraded. |
How To: Grooper services
⚠ |
BE AWARE: Managing Grooper services has changed somewhat in version 2024 Prior to version 2024, Grooper services were installed in and configured in the Grooper Config application. In version 2024, Grooper services are installed in GCC but most users will find it difficult to configure them in GCC. Services should be configured using the Machines node of the Design page. |
This portion of the article will instruct you how to use GCC to following things related to Grooper services:
- View available Grooper service types
- Install a Grooper service
- Start and stop Grooper services
- Uninstall a Grooper service
FYI: Most users will find it difficult to configure Grooper services from GCC. It will be easier to configure Grooper services from the Machines node of the Design page. For more information, go to the Configuring Grooper Services section of this article.
View available Grooper service types
To install a Grooper service in GCC, you need to know the service's type name. If you do not know the Grooper service type names by heart, you will need to use a GCC command to display a list of available Grooper services.
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command to view available Grooper service types:
services types
At the time of writing this article, this is the information GCC returns:
Type Name...: SystemMaintenanceService
Display Name: System Maintenance Service
Description.: Runs system maintenance on a recurring schedule.
Type Name...: ImportWatcher
Display Name: Import Watcher
Description.: Import Watcher is a service which schedules and runs Import Jobs.
Type Name...: LicenseService
Display Name: Grooper Licensing
Description.: Serves runtime licenses to Grooper applications. (Self-Hosted licensing only)
Type Name...: ActivityProcessing
Display Name: Activity Processing
Description.: The Activity Processing service executes Code Activities, which perform the work associated with steps in a Batch Process.
Type Name...: ApiServices
Display Name: API Services
Description.: Exposes a set of API services which enables 3rd party applications to interact with a Grooper Repository.
Type Name...: IndexingService
Display Name: Indexing Service
Description.: Automatically synchronizes data to AI Search indexes as documents are added, edited, and deleted in Grooper.
Install a Grooper service
⚠ |
GCC must be run as an administrator to perform most of its functionality. It performs functions that require elevated access in Windows. |
Installing a Grooper service is done with the services install
command.
- BE AWARE: All Grooper services are easy to install from GCC. However, Grooper services are difficult to fully configure from GCC.
- Best practice is to use GCC to install the service but use the Machines node of the Design page to configure services.
To install a Grooper service:
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command to install the service:
services install <connectionNo> <typeName> <userName> <password> [threadCount] [queueName]
<connectionNo>
is a required parameter. Enter the connection number for the Grooper Repository using the service. If you don't know the connection number, enter theconnections list
command for a list of all Grooper Repository connections.<typeName>
is a required parameter. Enter the Grooper service's type name. If you don't know the type name, enter theservices types
command for a list of Grooper service types.<userName>
is a require parameter. Enter the user name to run the service under. This user must have the "Log on as Service" permission in Windows.<password>
is a required parameter. Enter the password for the provided user name.[threadCount]
is an optional parameter and only pertains to installing Activity Processing services. Here, you can enter the number of worker threads an Activity Processing service will use. If left blank, the thread count will default to 1.[queueName]
is an optional parameter and only pertains to installing Activity Processing services. This parameter defines the Grooper Processing Queue to pull work from. The "default" Processing Queue will be used if left blank.
- After attempting the install GCC will present an installation log. At the end of this log it will inform you if:
- The service was successfully installed.
- Or, the service installation FAILED.
Example 1: The following GCC command would install an unconfigured Import Watcher service to the first Grooper Repository connection:
services install 1 ImportWatcher domain\username password
Example 2: The following GCC command would install an Activity Processing service to the first Grooper Repository that utilizes three processing threads (with no Processing Queue assigned).
services install 1 ActivityProcessing domain\username password 3
Starting and stopping Grooper services from GCC
Starting and stopping Grooper services from GCC is typically unnecessary. You can stop and start services from the Machines node of the Design page.
However, the following commands can be used to start and stop Grooper services from GCC:
Command |
Description | |
services start |
Starts all services on the machine. | |
services start <instanceNo> |
Starts a specified Grooper service.
| |
services stop |
Stops all Grooper services on the machine. | |
services stop <instanceNo> |
Stops a specified Grooper service.
|
FYI |
To start and stop specific Grooper services, you must know their service's "instance number". If you don't know the service's instance number use the following GCC command:
services listThis will list all Grooper services installed on the local machine and display some basic information about them. Please note, the "#" column denotes the service instance number. |
Uninstall a Grooper service
⚠ |
GCC must be run as an administrator to perform most of its functionality. It performs functions that require elevated access in Windows. |
Uninstalling a Grooper service is done with the services uninstall
command. Be sure services are stopped before uninstalling them.
To uninstall a Grooper service:
- Open GCC.
- GCC can be accessed from the Windows Start menu.
- The executable gcc.exe can be found in the Grooper install directory.
- Use the following GCC command uninstall the service:
services uninstall <instanceNo>
instanceNo
is a required parameter. Enter the instance number for the Grooper service you want to uninstall. If you don't know the service's number, enter theservices list
command for a list of all Grooper services installed on the machine.
FYI |
To uninstall Grooper services, you must know the service's "instance number". If you don't know the service's instance number use the following GCC command:
services listThis will list all Grooper services installed on the local machine and display some basic information about them. Please note, the "#" column denotes the service instance number. |
Configuring Grooper services
Configuring Grooper services from GCC is NOT advised. It is much easier to configure services from the Machines node of the Design page.
DOCUMENTATION FORTHCOMING. PENDING UI CHANGES IN CURRENT BETA BUILD.
Command Quick Reference
Command Group: help
Help-related commands.
Command |
Description | |
help |
Displays a list of commands. | |
help <group> |
Displays help for a specific command group. | |
help <group> <command> |
Displays help for a specific command. | |
help list |
Displays a list of commands. | |
help list <group> |
Displays help for a specific command group. | |
help list <group> <command> |
Displays help for a specific command. |
Command Group: connections
Manage Grooper repository connections.
Command |
Description | |
connections |
List the Grooper Repository connections for this machine. | |
connections add <server> <database> [user] [password] |
Add a Grooper Repository connection.
| |
connections delete <connectionNo> |
Deletes (removes) a connection to a Grooper Repository.
| |
connections init <connectionNo> <repositoryName> <storagePath> |
Initializes a new Grooper repository.
| |
connections list |
List the Grooper Repository connections for this machine.
| |
connections move <connectionNo> <newPosition> |
Moves a data source to new position in the list. Use this to reorder Grooper Repositories in the connection list.
| |
connections purge <connectionNo> |
Purges a Grooper Repository. This destroys all database tables and files for a connections. USE WITH CARE!! THIS EFFECTIVELY TRASHES A GROOPER REPOSITORY!!!
| |
connections reindex <connectionNo> [recreate] |
Rebuilds all indices on Grooper database tables.
| |
connections rename <connectionNo> <newName> |
Renames a Grooper Repository.
| |
connections repair <connectionNo> [files] |
Starts a database repair operation to detect and fix problems in the Grooper database.
| |
connections setDefault <connectionNo> |
Sets a Grooper Repository connection as the default connection.
| |
connections test <connectionNo> |
Tests a specific Grooper Repository conneciton.
| |
connections upgrade <connectionNo> |
Upgrades the selected Grooper database to the currently installed version.
| |
connections upgradeType <connectionNo> <upgraderTypeName> |
Runs a specific node upgrader. This command is not commonly used.
| |
connections validate <connectionNo> |
Validates the properties of all nodes in the Grooper Repository. Produces a list of validation messages.
|
Command Group: databases
Manage Grooper repository connections.
Command |
Description | |
databases create <serverName> <databaseName> [user] [password] |
Creates a new MSSQL database.
| |
databases delete <serverName> <databaseName> [user] [password] |
Deletes MSSQL database using MSSQL authentication. USE WITH CAUTION!!
| |
databases list <serverName> [user] [password] |
Lists the databases on an MSSQL server using MSSQL authentication.
|
Command Group: license
Manage licensing for a local Grooper license server.
Command |
Description | |
license |
Displays information about the Grooper license bound to this machine, if one exists. | |
license download <serialNo> |
Downloads a Grooper license and binds it to this machine.
| |
license import <filename> |
Imports a Grooper license file for local hosting on this machine.
| |
license refresh |
Checks for license updates. | |
license rehost <exportPath> |
Unbind licensing from this machine.
| |
license view |
Displays information about the Grooper license bound to this machine, if one exists. |
Command Group: scripts
Manages Grooper scripts.
Command |
Description | |
scripts getLatest <path> <repositoryId> <nodeId> |
Updates the local script with files from the Grooper node.
| |
scripts mismatch <path> <repositoryId> <nodeId> |
Compares the local script files to the files stored on the Grooper node.
| |
scripts update <path> <repositoryId> <nodeId> |
Saves a script project to Grooper from a file system directory.
| |
scripts updateAndCompile <path> <repositoryId> <nodeId> |
Saves a script project to Grooper from a file system directory and compile it.
|
Command Group: services
Manage Grooper services.
⚠ |
BE AWARE: There is no GCC command to update a service's logon user or password It is best practice to use a service account whose password does not change regularly to run Grooper services. However, your organization may have policies that require even service accounts' passwords change at regular intervals. If the Grooper service user's password changes, you will need to update that password in Windows. The same advice follows if the logon user changes as well. To do this:
|
Command |
Description | |
services install <connectionNo> <typeName> <userName> <password> [threadCount] [queueName] |
Installs a new instance of a Grooper service. Newly installed services will need to be started after successful installation.
| |
services list |
List all Grooper services installed on the machine. | |
services spinup <connectionNo> <typeName> [threadCount] [queueName] |
Spins up an instance of a Grooper service in a Docker container, running under the NETWORK SERVICE account.
| |
services host <connectionNo> <typeName> [settings] |
Hosts a Grooper service in-process.
| |
services host_copy <instanceNo> |
Hosts a copy of a Grooper service installed on the local machine in-process. Use this command to spin up additional Activity Processing worker services.
| |
services start |
Starts all services on the machine. | |
services start <instanceNo> |
Starts a specified Grooper service.
| |
services stop |
Stops all Grooper services on the machine. | |
services stop <instanceNo> |
Stops a specified Grooper service.
| |
services types [connectionNo] |
Displays a list of available service types. Use this command to learn what service types are available when configuring a
| |
services uninstall <instanceNo> |
Remove an instance of a Grooper service.
|
Command Group: utils
Miscellaneous utilities. These utilities are uncommonly used by most Grooper users.
Command |
Description | |
utils about |
Displays information about the installed Grooper version. | |
utils analyze <connectionNo> |
Analyzes custom objects within Grooper Object Libraries. Classes and properties that are missing documentation comments will be listed.
| |
utils exec <filename> |
Executes a Grooper Command Console batch file.
| |
utils ping <connectionNo> <name> [interval] |
Tests a CMIS Connection or a Data Connection.
| |
utils update <machineName> [applyChanges] [rebuild] |
Updates binaries on another machine to match the local machine.
| |
utils upgradeTables <connectionNo> |
Upgrades database tables for version 2024. This command should no longer be necessary. It was only used in early development builds for version 2024. |