import gradio as gr import tempfile from PIL import Image import uuid import os import shutil from pathlib import Path import random def create_local(): length = 100 text_string = ''.join(random.choice(string.ascii_letters + string.digits) for _ in range(length)) #rand_num = random.randint(1, 10000) file_name = os.path.join('temp_dir', f'random_file_1.txt') with open(file_name, 'w') as f: for _ in range(10): f.write(text_string + '\n') def move(): # Get the path of the system's temporary directory temp_directory = tempfile.gettempdir() # Specify the path of the file you want to move file_path = '/temp_dir/random_file1.txt' # Construct the new path in the temporary directory with the same filename new_path = os.path.join(temp_directory, os.path.basename(file_path)) print(f'new_path - {new_path}') # Move the file shutil.move(file_path, new_path) print(f"Moved the file to: {new_path}") # Assuming 'my_directory' is a directory in the current working directory #directory_name = 'temp_dir' #absolute_path1 = os.path.abspath(directory_name) #print(f"The absolute path of '{directory_name}' is: {absolute_path1}") #/home/user/app/temp_dir # Access the environment variable os.environ['GRADIO_TEMP_DIR'] = '/data' gradio_temp_dir = os.environ['GRADIO_TEMP_DIR'] print(f'GRADIO_TEMP_DIR is = {gradio_temp_dir}') absolute_path1 = os.path.abspath(gradio_temp_dir) print(f"The absolute path of gradio_temp_dir is = {absolute_path1}") # Get the path of the system's temporary directory temp_directory = tempfile.gettempdir() print(f"System's temporary directory is: {temp_directory}") def create(): """ Create a blank image with the specified dimensions, color, and filename. """ color='blue' width=512 height=512 # Create a temporary file temp_file = tempfile.NamedTemporaryFile(delete=False, suffix=".png") print(f"Temporary file created at: {temp_file.name}") #filename = f'{temp_file.name}.png' # Create a new image with the given mode and size image = Image.new("RGB", (width, height), color) # Save the image to disk image.save(temp_file, format='PNG') # Specify the directory you want to search in, e.g., the current directory directory = 'temp_dir' # List all entries in the directory entries = os.listdir(directory) #print(f"listdir of temp_dir directory = {entries}") temp_directory_file_list = os.listdir(temp_directory) print(f'temp_directory_file_list is = {temp_directory_file_list}') return temp_file.name, temp_directory_file_list with gr.Blocks(delete_cache=(5,10), theme=gr.themes.Base(radius_size="none")) as demo: with gr.Row(): inp = gr.Textbox(placeholder="What is your name?") out = gr.Image(type='filepath') gr.FileExplorer(root="/data", label="Persistent storage") with gr.Row(): with gr.Column(): btn = gr.Button("Generate temp files!") btn1 = gr.Button("Generate local files!") gr.FileExplorer(label="local storage") btn2 = gr.Button("Move files to temp dir!") btn.click(create,inputs=[],outputs=[out, inp]) btn1.click(create_local,inputs=[],outputs=[]) btn2.click(move,inputs=[],outputs=[]) demo.launch(debug=False)