Skip to content
rjrudin edited this page Jul 9, 2018 · 31 revisions

As a Gradle plugin, ml-gradle contributes dozens of MarkLogic-specific tasks to a Gradle project. These tasks can always be viewed by running the standard Gradle tasks command:

gradle tasks

This will list all the tasks in your Gradle project, which includes tasks contributed by other Gradle plugins. ml-gradle organizes the tasks it contributes into task groups, each beginning with "ml-gradle". And each task provides a description of how it should be used.

The purpose of this page then is to list every task in the latest version of ml-gradle, and, when appropriate, provide additional documentation beyond what's displayed via "gradle tasks". When a new task is added by an ml-gradle release, it will be listed here as well, similar to how the Property reference is updated with each new release.

Note too that the Common tasks page is intended to provide a summary of the most commonly used tasks, while this page provides a complete list.

Deploy

  • mlDeploy = Deploys the application defined by the project.
  • mlPostDeploy = An "empty" Gradle task that exists solely so that project-specific tasks can be associated with it via "dependsOn". For example, you may have a "myImportData" task that uses MLCP to import data, and you need to run it after an application is deployed. Just add "mlPostDeploy.dependsOn myImportData" to your build.gradle file.
  • mlPostUndeploy = Just like mlPostDeploy, but for post-processing after an application is undeployed.
  • mlRedeploy = Just like mlDeploy, but first runs mlClearModulesDatabase. This ensures that any modules e.g. removed from version control will be removed from the modules database as well.
  • mlUndeploy

Admin

  • mlInit
  • mlInstallAdmin

Alerting

  • mlDeleteAllAlertConfigs = Useful for wiping out all alerting data from a content database.
  • mlDeployAlerting

Cluster

  • mlAddHost
  • mlModifyCluster
  • mlDisableSslFips
  • mlEnableSslFips
  • mlRemoveHost
  • mlRestartCluster

CPF

  • mlDeployCpf
  • mlRedeployCpf = Useful for deploying CPF from scratch. Be aware that this first clears the triggers database, which may contain triggers that are not related to CPF and would need to be deployed again.
  • mlLoadDefaultPipelines

Database

  • mlClearContentDatabase
  • mlClearDatabase
  • mlClearModulesDatabase
  • mlClearSchemasDatabase
  • mlClearTriggersDatabase
  • mlDeployDatabases
  • mlMergeContentDatabase
  • mlMergeDatabase
  • mlReindexContentDatabase
  • mlReindexDatabase
  • mlSetContentUpdatesAllowed (a task for setting this on any database doesn't exist yet)
  • mlUpdateIndexes

See Creating forests for more information too.

Data Movement

See DMSDK Tasks for more information.

  • mlAddCollections
  • mlAddPermissions
  • mlDeleteCollections
  • mlExportBatchesToDirectory
  • mlExportBatchesToZips
  • mlExportToFile
  • mlExportToZip
  • mlRemoveCollections
  • mlRemovePermissions
  • mlSetCollections
  • mlSetPermissions

Development

The "mlNew*" tasks (except for mlNewProject, which was added in version 2.7.0) were added in version 3.6.0. See Generating new resources for more information on these tasks.

  • mlCreateResource
  • mlCreateTransform
  • mlExportResources
  • mlPrepareRestApiDependencies
  • mlPrintCommands = Prints information about each command used by mlDeploy and mlUndeploy; this is just for debugging purposes (moved to this group in 3.6.0; was in "General" prior to 3.6.0)
  • mlPrintProperties = New in 3.6.0; run this to see a list of all of the properties supported by ml-gradle. Can be cross-referenced with the Property reference.
  • mlPrintTokens
  • mlNewProject
  • mlNewAmp
  • mlNewDatabase
  • mlNewExternalSecurity
  • mlNewGroup
  • mlNewPrivilege
  • mlNewProtectedCollection
  • mlNewRole
  • mlNewServer
  • mlNewTask
  • mlNewUser
  • mlScaffold

In addition, you can create custom tasks using com.marklogic.gradle.task.client.CallResourceTask that simplify calling custom REST services.

Entity Services

See the [MarkLogic docs]((https://docs.marklogic.com/guide/entity-services) for more information on Entity Services.

  • mlGenerateModelArtifacts

Flexible Replication

  • mlDeleteAllFlexrepConfigs
  • mlDeployFlexrep
  • mlDeployFlexrepAtPath
  • mlDisableAllFlexrepTargets
  • mlEnableAllFlexrepTargets

Forest

  • mlConfigureForestReplicas
  • mlDeleteForestReplicas
  • mlDeployCustomForests
  • mlDeployForestReplicas
  • mlPrintForestPlan

See Creating forests for more information too.

Group

  • mlDeployGroups
  • mlSetTraceEvents

Host

  • mlAssignHostsToGroups = New in 3.6.0; assigns hosts to groups based on the value of mlHostGroups

Mimetypes

  • mlDeployMimetypes

Modules

Tasks:

  • mlClearModulesDatabase = this is listed in the Database group, but relevant to Modules too
  • mlDeleteModuleTimestampsFile = Deletes the file that ml-gradle uses for keeping track of when modules were last loaded
  • mlExportModules
  • mlLoadModules = Loads new and modified modules; modules not created/modified since the last time modules were loaded will not be loaded
  • mlReloadModules = Generally preferred to mlLoadModules, as it clears the modules database first, ensuring that modules e.g. removed from a project's version control system are removed from the modules database as well
  • mlWatch

More information:

-- How modules are loaded -- Debugging module loading

qconsole

These work on MarkLogic 8, but a bug is still open to fix them on MarkLogic 9.

  • mlExportWorkspaces
  • mlImportWorkspaces

REST APIs

  • mlDeployRestApis - New in 3.8.1; deploys REST API instances defined by a configuration file ("rest-api.json" in the root of a configuration directory, so src/main/ml-config/rest-api.json by default) or via the properties mlRestPort and mlTestRestPort

Schemas

Tasks:

  • mlClearSchemasDatabase = list in the Database group above, but relevant to Schemas too
  • mlLoadSchemas
  • mlReloadSchemas

See Loading schemas for more information as well.

Servers

  • mlDeployServers
  • mlUndeployOtherServers = "other" refers to any server that isn't the default REST server that ml-gradle creates

Security

  • mlDeployAmps
  • mlDeployCertificateAuthorities
  • mlDeployCertificateTemplates
  • mlDeployExternalSecurity
  • mlDeployPrivileges
  • mlDeployProtectedCollections
  • mlDeployProtectedPaths
  • mlDeployQueryRolesets
  • mlDeployRoles
  • mlDeployUsers
  • mlUndeployAmps
  • mlUndeployCertificateAuthorities
  • mlUndeployCertificateTemplates
  • mlUndeployExternalSecurity
  • mlUndeployPrivileges
  • mlUndeployProtectedCollections
  • mlUndeployProtectedPaths
  • mlUndeployQueryRolesets
  • mlUndeployRoles
  • mlUndeployUsers

SQL

If you're using MarkLogic 9, consider using TDE instead. TDE templates are loaded into a schemas database and generally require less setup than SQL view schemas.

  • mlDeployViewSchemas

Task (scheduled tasks)

  • mlDeleteAllTasks
  • mlDeployTasks
  • mlDisableAllTasks
  • mlEnableAllTasks
  • mlUndeployTasks
  • mlWaitForTaskServer

Temporal

  • mlDeployTemporal

Triggers

  • mlDeployTriggers

Unit Test

See this sample project for more information on using these tasks.

  • mlGenerateUnitTestSuite
  • mlUnitTest
Clone this wiki locally