Para implementar um serviço de decisão em um Decision Serverde destino, você faz download do RuleApp correspondente e seu XOM a partir do ambiente de nuvem de origem e usa a API REST para colocar os arquivos binários do RuleApp e do XOM no destino Decision Server. Em seguida, é possível executar o serviço de decisão neste Decision Server
Antes de iniciar
Você deve ter acesso ao seu ambiente de nuvem e implantado o serviço de decisão.
Sobre esta tarefa
Os comandos de exemplo fornecidos no procedimento a seguir usam cURL para autenticar com o servidor em nuvem e transferir archives do servidor em nuvem para outro Decision Server. É possível usar um programa diferente para enviar credenciais de autenticação para os servidores, acessar a API de REST e fazer o download de arquivos do servidor em nuvem.
Procedimento
- Faça download do RuleApp a partir do ambiente de nuvem.
O comando inclui credenciais de autenticação básica e o caminho para o RuleApp. Substitua as variáveis de nome do usuário e senha por suas credenciais de autenticação básicas. Forneça a URL do host de seu locatário em nuvem, e especifique o nome correto do RuleApp no caminho:
curl -k -u username@company_name.com:password server_URL/odm/cloud_env/res/api/v1/ruleapps/ruleapp_name/1.0/archive --output ruleapp_name.jar
- Faça download do XOM:
- Na propriedade ruleset.managedxom.uris na saída do comando anterior, procure a URI do XOM gerenciado. Esta propriedade obtém os
detalhes do RuleApp.
- Se a propriedade apontar para um recurso XOM (resuri), pule esta etapa. Se ela apontar para uma biblioteca (reslib), verifique a propriedade content na saída do comando anterior para o URI do XOM. A propriedade content recebe os detalhes da biblioteca. Utilize o nome e a versão da biblioteca que é retornado no comando anterior.
curl -k -u username@company_name.com:password server_URL/odm/cloud_env/res/api/libraries/library_name/1.0
- Faça download do XOM. Utilize o nome e a versão do recurso retornado no comando anterior.
curl -k -u username@company_name.com:password server_URL/odm/cloud_env/res/api/xoms/xom_name/1.0/bytecode --output xom_name.zip
- Faça o upload do modelo de objeto de execução.
curl -X POST -k -u admin_username:admin_password server_URL/res/api/v1/xoms/xom_name.zip --data-binary @xom_name.zip -H "Content-Type:application/octet-stream"
Se o RuleApp referenciar uma biblioteca em vez de um XOM, re-crie a biblioteca e especifique o recurso XOM que ele supostamente deve conter.
curl -X POST -k -u admin_username:admin_password server_URL/res/api/v1/libraries/library_name1.0 -d "resuri://xom_name.zip/1.0" -H "Content-Type:text/plain"
Nota: Mantenha os nomes dos recursos ao fazer o download e o upload deles.
- Faça upload do RuleApp para o outro Decision Server.
O comando inclui o nome de usuário, a senha e o URL para acessar o console do Rule Execution Server no outro Decision Server.
curl -X POST -k -u admin_username:admin_password server_URL/res/api/v1/ruleapps --data-binary @ruleapp_name.jar -H "Content-Type:application/octet-stream"
- Teste a execução do conjunto de regras (serviço de decisão) usando sua API REST.
curl -X POST -k -u username@company_name.com:password server_URL/DecisionService/rest/v1/ruleappname/ruleappversion/rulesetname/rulesetversion -d jsonpayload -H "Content-Type:application/json"