This gets the permissions structure to be compliant by having the module name as part of the permission name.
Without this, potential cross-module conflicts exist.
The provides dependencies are for individual module parts and not the entire module.
Change the behavior to use the individual mod-workflow parts as a dependency.
Remove mod-camunda from the context path.
Having mod-camunda in the context path is preventing proper deployment in OKAPI.
Local Deployment Test Process
This assumes proper login and other relating configuration.
This uses {{}} syntax to loosely represent variables.
Consider using the stripes-cli to perform the appropriate tasks.
Make sure to start up a local docker or vagrant version of folio, like the FOLIO Nolana vagrant.
For example, the OKAPI login using stripes-cli might look like this:
Perform the appropriate maven packaging of the project.
Spin up a local instance of mod-workflow, such as mvn spring-boot:run, java -jar ..., or an appropriate docker command.
A POST request to {{okapi_url}}/_/proxy/modules in order to register the module.
Make sure to use the build ModuleDescriptor.json as the payload body, generally found under service/target/.
A POST request to {{okapi_url}}/_/discovery/modules.
Rather than using the DeploymentDescriptor.json generally found under service/target/, use the following as the payload body.
resolves #113
Changes
Prepend 'camunda.' to each permission.
The
provides
dependencies are for individual module parts and not the entire module. Change the behavior to use the individual mod-workflow parts as a dependency.Remove
mod-camunda
from the context path. Havingmod-camunda
in the context path is preventing proper deployment in OKAPI.Local Deployment Test Process
This assumes proper login and other relating configuration. This uses
{{}}
syntax to loosely represent variables. Consider using the stripes-cli to perform the appropriate tasks.mvn spring-boot:run
,java -jar ...
, or an appropriate docker command.{{okapi_url}}/_/proxy/modules
in order to register the module. Make sure to use the buildModuleDescriptor.json
as the payload body, generally found underservice/target/
.{{okapi_url}}/_/discovery/modules
. Rather than using theDeploymentDescriptor.json
generally found underservice/target/
, use the following as the payload body.The
{{mod_workflow_url}}
in particular needs to point to an address of the locally running mod-workflow that the local FOLIO instance can access.{{okapi_url}}/_/proxy/tenants/{{tenant_name}}/modules
, using the following as the body payload:There may be permissions problems, in which case, they could be resolved using the stripes-cli. Example:
To disable the module, a DELETE to
{{okapi_url}}/_/proxy/tenants/{{tenant_name}}/modules/mod-workflow-{{mod_workflow_version}}
.To undeploy the module, a DELETE to
{{okapi_url}}/_/discovery/modules/mod-workflow-{{mod_workflow_version}}
.