Chargement et téléchargement des fichiers de bac à sable
Transférez les fichiers d'entrée dans un espace de travail de bac à sable et téléchargez les résultats produits par les commandes.
Utilisez des opérations de fichier avec un bac à sable en cours d'exécution. Les chemins locaux identifient les fichiers sur l'ordinateur exécutant l'interface de ligne de commande ou la trousse SDK. Les chemins du bac à sable identifient les fichiers dans l'exécution, par exemple /workspace/script.py.
Pour des exemples d'interface de ligne de commande, définissez vos valeurs de connexion :
profile_name="DEFAULT"
region="us-chicago-1"
sandbox_id="SANDBOX_ID"Chargement d'un fichier
Créez un fichier local nommé script.py :
print('Hello from the sandbox')Chargez-le dans le bac à sable :
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-file write \
--sandbox-id "$sandbox_id" \
--sandbox-file-path /workspace/script.py \
--file ./script.pyExécutez le script chargé :
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-command run-and-wait \
--sandbox-id "$sandbox_id" \
--command "python3 /workspace/script.py" \
--timeout PT1MTéléchargement d'un fichier
Lisez un fichier de bac à sable dans un fichier local. Sélectionnez une destination locale à utiliser pour le contenu téléchargé :
oci --profile "$profile_name" --auth security_token --region "$region" \
generative-ai-sandbox sandbox-file read \
--sandbox-id "$sandbox_id" \
--sandbox-file-path /workspace/script.py \
--local-file ./downloaded-script.pyTéléchargez les résultats dont vous avez besoin avant l'arrêt ou l'expiration du bac à sable. Utilisez des instantanés pour conserver un espace de travail pour créer un autre bac à sable.
Utilisation de la trousse SDK Python
Réutilisez la configuration du client à partir de la utilisation de la trousse SDK Python pour initialiser un client authentifié. Définissez l'ID d'un bac à sable en cours d'exécution, puis chargez un fichier local et lisez-le de nouveau. L'exemple de démarrage rapide complet arrête son bac à sable. Utilisez donc ce code avant de l'arrêter ou utilisez un autre bac à sable en cours d'exécution :
sandbox_id = "SANDBOX_ID"
with open("script.py", "rb") as input_file:
client.write_sandbox_file(sandbox_id, "/workspace/script.py", input_file)
response = client.read_sandbox_file(sandbox_id, "/workspace/script.py")
with open("downloaded-script.py", "wb") as output_file:
output_file.write(response.data.content)