- Visão geral
- Funções do Python
- Implantar e executar
Declare um recurso do Orchestrator ou Integration Service em Bindings.json, verifique se ele é resolvido durante uma execução local e torne-o remapeável entre tenants.
bindings.json é mantido manualmente: uipath init cria o arquivo com a estrutura necessária quando ele está ausente e deixa um arquivo existente intacto. Declare uma associação para cada recurso de plataforma que sua função alcança, para que o recurso possa ser remapeado quando o pacote for executado em outro tenant. Para o mecanismo de resolução por trás disso, consulte Vinculações de recursos.
Pré-requisitos
- Um projeto de função do Python criado com
uipath new. - Uma sessão autenticada, estabelecida com
uipath auth. - O recurso já existe no tenant em que você desenvolve.
- O UiPath CLI ()
uipé instalado para a pesquisa de conexão na etapa 1.
Declarar uma associação de conexão
-
Recupere o ID de conexão do Integration Service:
uip is connections list uipath-microsoft-outlook365uip is connections list uipath-microsoft-outlook365 -
Abra
bindings.jsonna raiz do projeto. -
Adicione uma entrada à matriz
resources, usando o ID de conexão parakeyeConnectionId.defaultValue:{ "resource": "connection", "key": "<connection-id>", "value": { "ConnectionId": { "defaultValue": "<connection-id>", "isExpression": false, "displayName": "Microsoft Outlook 365 Connection" }, "Connector": { "defaultValue": "uipath-microsoft-outlook365", "isExpression": false, "displayName": "Connector" } }, "metadata": { "Connector": "uipath-microsoft-outlook365", "UseConnectionService": "True", "BindingsVersion": "2.2" } }{ "resource": "connection", "key": "<connection-id>", "value": { "ConnectionId": { "defaultValue": "<connection-id>", "isExpression": false, "displayName": "Microsoft Outlook 365 Connection" }, "Connector": { "defaultValue": "uipath-microsoft-outlook365", "isExpression": false, "displayName": "Connector" } }, "metadata": { "Connector": "uipath-microsoft-outlook365", "UseConnectionService": "True", "BindingsVersion": "2.2" } } -
Declare o mesmo ID como uma constante de nível de módulo em sua função e passe-o para a chamada do SDK:
OUTLOOK_CONNECTION_KEY = "<connection-id>" conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY)OUTLOOK_CONNECTION_KEY = "<connection-id>" conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY) -
Execute a função localmente:
uipath run main -f input.jsonuipath run main -f input.json
Resultado
O log de execução contém uma linha por associação declarada:
No resource overwrite matched for connection key='connection.<connection-id>' on retrieve
No resource overwrite matched for connection key='connection.<connection-id>' on retrieve
Esta linha confirma que a pesquisa de substituição foi executada e retornou ao ID do tempo de design, que é o resultado esperado localmente porque não existe nenhum mapeamento de tenant. Se a linha nomear um ID diferente daquele em bindings.json, a constante de código e a associação desalinhadas.
A declaração de associações para outros tipos de recursos segue o mesmo padrão com um value formato diferente. Ativos, buckets, filas, processos, aplicativos e índices usam name e folderPath em vez de ConnectionId, e seu key une os dois com um ponto.
Tornar a associação remapeável entre tenants
-
Registre o projeto da função em uma solução:
uip solution project add ./my-solution/my-functionuip solution project add ./my-solution/my-function -
Sincronize a lista de recursos da solução a partir das associações declaradas do projeto:
uip solution resource refreshuip solution resource refresh -
Revise a lista de recursos resultante:
uip solution resource list --source localuip solution resource list --source local
Resultado
Cada associação declarada aparece na lista de recursos locais da solução. A implantação mapeia cada entrada para um recurso no tenant de destino, para que o mesmo pacote seja executado na própria conexão desse tenant. Para empacotar e publicar a solução, consulte uip solution pack.
Uma associação que não é mapeada no tenant de destino não gera falha no trabalho. A chamada retorna ao identificador de tempo de design; portanto, verifique se cada associação aparece no mapeamento de recursos do tenant de destino antes de promover uma solução.
Próximas Etapas
- Chame uma atividade do Integration Service — use uma conexão declarada para alcançar uma operação de conector.
- Pacotes e publicação — implante a função no Orchestrator.