Skip to content

Commit

Permalink
Tool sync assets update
Browse files Browse the repository at this point in the history
  • Loading branch information
josimar-bazam committed Aug 2, 2024
1 parent 185e9b4 commit 4c30d43
Showing 1 changed file with 42 additions and 36 deletions.
78 changes: 42 additions & 36 deletions Sync Assets/AssetSynchronizationScript/sync.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
name
assetsTagList
updatedAt
integrations # Removido: sem seleção de subcampos
}
metadata {
currentPage
Expand Down Expand Up @@ -176,45 +177,50 @@ def sync_asset(asset_id, integration):
user_input = input("Deseja sincronizar os ativos que estão vinculados nas tags selecionadas? (s/n): ").strip().lower()
if user_input == 's':
for asset in filtered_assets:
for tag in asset['assetsTagList']:
if 'FORTIFY' in integration_tags:
sync_response = sync_asset(asset['id'], integration_tags['FORTIFY'])
print(f"Verificando se o ativo com ID {asset['id']} tem integração com FORTIFY...")

# Verifica se a resposta contém o campo esperado
sync_asset_data = sync_response.get('data', {}).get('syncAsset')
if sync_asset_data:
if sync_asset_data.get('failureReason'):
print(f"Ativo com ID {asset['id']} não tem integração com FORTIFY: {sync_asset_data['failureReason']}")
else:
errors = sync_response.get('errors', [])
if errors:
error_messages = [error.get('message', 'Erro desconhecido') for error in errors]
print(f"Erro ao sincronizar ativo {asset['id']} com FORTIFY: {', '.join(error_messages)}")
else:
fortify_count += 1
# Supondo que `integrations` é uma string simples, ajuste as verificações abaixo se necessário
has_fortify = 'FORTIFY' in asset.get('integrations', '')
has_dependency_track = 'DEPENDENCY_TRACK' in asset.get('integrations', '')

if has_fortify:
sync_response = sync_asset(asset['id'], integration_tags['FORTIFY'])
print(f"Verificando se o ativo com ID {asset['id']} tem integração com FORTIFY...")

sync_asset_data = sync_response.get('data', {}).get('syncAsset')
if sync_asset_data:
if sync_asset_data.get('failureReason'):
print(f"Ativo com ID {asset['id']} sincronizando com FORTIFY: {sync_asset_data['failureReason']}")
else:
print(f"Ativo com ID {asset['id']} sincronizado com FORTIFY.")

if 'DEPENDENCY_TRACK' in integration_tags:
sync_response = sync_asset(asset['id'], integration_tags['DEPENDENCY_TRACK'])
print(f"Verificando se o ativo com ID {asset['id']} tem integração DEPENDENCY_TRACK...")

# Verifica se a resposta contém o campo esperado
sync_asset_data = sync_response.get('data', {}).get('syncAsset')
if sync_asset_data:
if sync_asset_data.get('failureReason'):
print(f"Ativo com ID {asset['id']} não tem integração com DEPENDENCY_TRACK: {sync_asset_data['failureReason']}")
errors = sync_response.get('errors', [])
if errors:
error_messages = [error.get('message', 'Erro desconhecido') for error in errors]
print(f"Erro ao sincronizar ativo {asset['id']} com FORTIFY: {', '.join(error_messages)}")
else:
errors = sync_response.get('errors', [])
if errors:
error_messages = [error.get('message', 'Erro desconhecido') for error in errors]
print(f"Erro ao sincronizar ativo {asset['id']} com DEPENDENCY_TRACK: {', '.join(error_messages)}")
else:
dependency_track_count += 1
fortify_count += 1
else:
print(f"Ativo com ID {asset['id']} sincronizado com FORTIFY.")
else:
print(f"Ativo com ID {asset['id']} não possui integração com FORTIFY.")

if has_dependency_track:
sync_response = sync_asset(asset['id'], integration_tags['DEPENDENCY_TRACK'])
print(f"Verificando se o ativo com ID {asset['id']} tem integração DEPENDENCY_TRACK...")

sync_asset_data = sync_response.get('data', {}).get('syncAsset')
if sync_asset_data:
if sync_asset_data.get('failureReason'):
print(f"Ativo com ID {asset['id']} sincronizando com DEPENDENCY_TRACK: {sync_asset_data['failureReason']}")
else:
print(f"Ativo com ID {asset['id']} sincronizado com DEPENDENCY_TRACK.")
errors = sync_response.get('errors', [])
if errors:
error_messages = [error.get('message', 'Erro desconhecido') for error in errors]
print(f"Erro ao sincronizar ativo {asset['id']} com DEPENDENCY_TRACK: {', '.join(error_messages)}")
else:
dependency_track_count += 1
else:
print(f"Ativo com ID {asset['id']} sincronizado com DEPENDENCY_TRACK.")
else:
print(f"Ativo com ID {asset['id']} não possui integração com DEPENDENCY_TRACK.")

# Exibe a contagem de ativos sincronizados por integração
print(f"Sincronização concluída. Total de ativos sincronizados com FORTIFY: {fortify_count}")
print(f"\nSincronização concluída. Total de ativos sincronizados com FORTIFY: {fortify_count}")
print(f"Total de ativos sincronizados com DEPENDENCY_TRACK: {dependency_track_count}")

0 comments on commit 4c30d43

Please sign in to comment.