APIs de gestão de ciclo de vida

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 2 min. de leitura
  • A Gestão de ciclo de vida do IC fornece um conjunto de APIs de gestão de estados para gerenciar estados operacionais de IC e aplicar ações de IC.

    As APIs de gestão de estado aderem às restrições e permissões especificadas por Ações de IC não permitidas, Ações de IC compatíveis e Transições operacionais não permitidas. Se uma API tentar executar uma operação restrita, a operação será bloqueada, um erro será registrado em log e uma tarefa será criada automaticamente se apropriado.

    As APIs de gestão de ciclo de vida podem definir estados operacionais e ações de IC para grupos do CMDB ao usar APIs de gestão de ciclo de vida em massa.

    APIs de registro

    • registerOperator() — método para registrar o operador com gestão de estado para usuário sem fluxo de trabalho.
    • unregisterOperator(String requestorId) — método para cancelar o registro do operador para usuários sem fluxo de trabalho.
    • isValidRequestor(String requestorId) — método para determinar se o solicitante especificado é um usuário de fluxo de trabalho ativo válido ou um usuário registrado.
    • isLeaseExpired(String requestorId, String ciSysId, String ciActionName) — método para verificar se o leasing do usuário registrado expirou.
    • extendCIActionLease(String requestorId, String ciSysId, String ciActionName, String leaseTime) — método para estender o tempo de leasing da ação de IC para usuários registrados. Se o leasing anterior já tiver expirado, estenda o leasing a partir de agora.

    APIs de estado operacional

    • setBulkCIOperationalState(String requestorId, String sysIdList, String opsLabel, String opsStateListOld) — método para definir o Estado operacional de uma matriz de ICs.
    • getOperationalState(String ciSysId) — método para obter o Estado operacional de IC.

    APIs de ações de IC

    • addBulkCIAction(String requestorId, String sysIdList, String ciActionName, String ciActionListOld, String leaseTime) — método para adicionar uma Ação de IC a uma matriz de ICs.
    • removeBulkCIAction(String requestorId, String sysIdList, String ciActionName) — método para remover uma Ação de IC de uma lista de ICs.
    • getCIActions(String ciSysId) — método para obter Ações de IC.

    Ação não permitida com base na API do estado operacional

    isNotAllowedAction(String ciType, String opsLabel, String actionName) — método para verificar se uma ação de IC específica não é permitida para um Estado operacional específico em um Tipo de IC.

    API de transição de estado operacional não permitida

    isNotAllowedOpsTransition(String ciType, String opsLabel, String transitionOpsLabel) — método para verificar se uma transição de estado operacional específica não é permitida em um Tipo de IC.

    API de ação compatível

    isCompatibleCIAction(String actionName, String otherActionName) — método para verificar se duas ações específicas são compatíveis entre si.

    Como usar APIs de gestão de estado

    // 1. Register Operator with State Mgmt
    var output = SNC.StateManagementScriptableApi.registerOperator();
    var jsonUntil = new JSON();
    var result = jsonUntil.decode(output);
    var requestorId = result.requestorId;
    
    // Get list of sys_ids to update
    var sys_ids;
    
    // 2. Set list of sys_ids's Operational State to 'Repair in Progress'
    output = SNC.StateManagementScriptableApi.setBulkCIOperationalState(requestorId, sys_ids,'Repair in Progress');
    gs.print(output);
    
    // 3. Set list of sys_ids's CI Action State to 'Patching'
    output = SNC.StateManagementScriptableApi.addBulkCIAction(requestorId, sys_ids, 'Patching');
    gs.print(output);