13ze commited on
Commit
ad81629
·
verified ·
1 Parent(s): 2ed81ec

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -5
app.py CHANGED
@@ -1,25 +1,43 @@
1
  import gradio as gr
2
  import subprocess
3
 
4
- def execute_wp_cli(command):
5
  """
6
- Função para executar comandos WP-CLI.
7
  """
8
  try:
 
 
9
  # Executa o comando WP-CLI
10
- result = subprocess.run(['wp'] + command.split(), capture_output=True, text=True)
11
  # Retorna a saída do comando
12
  return result.stdout + result.stderr
13
  except Exception as e:
14
  return str(e)
15
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  # Cria a interface Gradio
17
  iface = gr.Interface(
18
  fn=execute_wp_cli, # Função que será chamada
19
- inputs=gr.Textbox(lines=2, placeholder="Digite o comando WP-CLI"), # Entrada de texto para comandos
 
 
 
20
  outputs="text", # Saída de texto com o resultado
21
  title="Painel de Controle WP-CLI", # Título do painel
22
- description="Digite comandos WP-CLI para gerenciar seu site WordPress." # Descrição do painel
23
  )
24
 
25
  # Inicia a interface
 
1
  import gradio as gr
2
  import subprocess
3
 
4
+ def execute_wp_cli(command, args):
5
  """
6
+ Função para executar comandos WP-CLI com argumentos.
7
  """
8
  try:
9
+ # Cria o comando completo
10
+ full_command = ['wp', command] + args.split()
11
  # Executa o comando WP-CLI
12
+ result = subprocess.run(full_command, capture_output=True, text=True)
13
  # Retorna a saída do comando
14
  return result.stdout + result.stderr
15
  except Exception as e:
16
  return str(e)
17
 
18
+ # Lista de comandos WP-CLI comuns
19
+ commands = [
20
+ "plugin list",
21
+ "plugin activate",
22
+ "plugin deactivate",
23
+ "theme list",
24
+ "theme activate",
25
+ "post list",
26
+ "post create",
27
+ "post update",
28
+ "post delete",
29
+ ]
30
+
31
  # Cria a interface Gradio
32
  iface = gr.Interface(
33
  fn=execute_wp_cli, # Função que será chamada
34
+ inputs=[
35
+ gr.Dropdown(choices=commands, label="Comando WP-CLI"), # Menu suspenso para selecionar o comando
36
+ gr.Textbox(lines=1, placeholder="Digite os argumentos (se necessário)", label="Argumentos") # Entrada de texto para argumentos
37
+ ],
38
  outputs="text", # Saída de texto com o resultado
39
  title="Painel de Controle WP-CLI", # Título do painel
40
+ description="Selecione um comando WP-CLI e insira os argumentos necessários." # Descrição do painel
41
  )
42
 
43
  # Inicia a interface