CloudLink : Exemple de script Python à l’aide de l’API Rest Cloudlink pour télécharger la sauvegarde Cloudlink

Summary: Ce fichier est uniquement destiné à des fins d’éducation et d’information. Peut être utilisé comme référence lors de l’écriture de scripts d’automatisation Cloudlink avec le langage Python. Dell décline toute responsabilité quant à l’exécution de ce fichier dans l’environnement du Client Dell. Le Le script montre un moyen de télécharger un fichier de sauvegarde Cloudlink avec un script Python à l’aide des appels Cloudlink RestAPI. Ce script s’applique à la ligne Cloudlink 8.x. Le script ne modifie pas l’état des /, il télécharge simplement le fichier de sauvegarde. L’accès au nœud Cloudlink (indiqué par l’adresse IP) est accordé avec les informations d’identification d’un utilisateur secadmin Cloudlink. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

# Copyright Dell © 2025

# This file is for education / information purposes only.
# Can be used as a reference when writing Cloudlink automation scripts with Python language.
# Dell takes no responsibility for this file being executed in Dell Customer's environment

# The script shows a way to download Cloudlink backup file with a Python script using Cloudlink RestAPI calls.
# Ce script s’applique à la ligne Cloudlink 8.x.
# The script doesn't alter state of any system, just downloads the backup file.
# Access to the Cloudlink node (indicated by IP address) is granted with credentials of a Cloudlink secadmin user.

import requests
import base64
import urllib3
import os

# Suppress only the single InsecureRequestWarning from urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

auth_url = "https://<cloudlink node ip>/cloudlink/oauth/token?grant_type=password&username=secadmin&password=<the password>&scope=all"

auth_response = requests.post(auth_url,timeout=1800, verify=False)

if auth_response.status_code == 200:
    # Parse the JSON response
    data = auth_response.json()
else:
    print(f"Error: {auth_response.status_code}")
    exit()

print("Auth token: "+data.get("access_token"))
access_token = data.get('access_token')

# Define the API endpoint
url = "https://<clc ip>:443/cloudlink/rest/backup"

# Define the headers (if needed)
headers = {
    "Authorization": "Bearer "+access_token,
    "Content-Type": "application/json"
}

# Make a GET request
response = requests.get(url, headers=headers, verify=False)

# Check the response status code
if response.status_code == 200:
    # Parse the JSON response
    data = response.json()
    print(data.get('file_name'))
else:
    print(f"Error: {response.status_code}")
    exit()

file_name = data.get('file_name')
file_content_base64 = data.get('file_content')

# Decode the base64 string to binary data
file_content_binary = base64.b64decode(file_content_base64)

# Save the binary data to a file
with open(str(file_name), "wb") as binary_file:
    binary_file.write(file_content_binary)

print("Backup has been saved to "+os.getcwd()+"\\"+str(file_name))

 

Article Properties
Article Number: 000330399
Article Type: How To
Last Modified: 10 Jun 2025
Version:  1
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.