You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**CLOUDY**automatiza la ejecución de experimentos en máquinas virtuales de [Google Cloud](https://console.cloud.google.com). Crea instancias y *buckets*, instala dependencias, ejecuta *scripts* de Python y maneja la limpieza de recursos.
10
+
**CLOUDY**automates the execution of experiments on [Google Cloud](https://console.cloud.google.com). It creates instances and buckets, installs dependencies, runs Python scripts, and handles resource cleanup.
11
11
12
-
## ⚙️ **¿Cómo funciona?**
12
+
## ⚙️ **How it works?**
13
13
14
-
El flujo de trabajo de **CLOUDY**es el siguiente:
14
+
The workflow of **CLOUDY**comprises the following steps:
15
15
16
-
1.El *script*`launch.sh`lanza un número determinado de instancias de máquinas virtuales, de acuerdo a las opciones especificadas en el fichero `config.json`.
16
+
1.The script `launch.sh`launches a specified number of virtual machine instances, according to the options specified in the `config.json` file.
17
17
18
-
2.En cada máquina virtual se ejecuta el *script*`setup.sh`, que instala dependencias, descarga un repositorio y ejecuta un *script* especificado.
18
+
2.The script `setup.sh` is executed in each VM to install dependencies, download the specified repository and run the Python script indicated.
19
19
20
-
3.La salida se guarda en un *bucket* existente, o lo crea en caso contrario.
20
+
3.The output is saved to an existing bucket, or a new one is created as required.
21
21
22
-
4.Las máquinas se autoeliminan una vez finalizada su ejecución.
22
+
4.The instances are automatically deleted once their execution has finished.
-`launch.sh`: crea instancias de máquinas virtuales en Google Cloud según la configuración definida en`config.json`.
33
-
-`setup.sh`: se ejecuta en cada instancia creada, instala dependencias, clona un repositorio, ejecuta un *script* de Python y guarda los resultados en un *bucket* de Google Cloud.
34
-
-`clean_cloud.sh`: limpia todas las instancias de máquinas virtuales y *buckets* en Google Cloud.
35
-
-`Makefile`: facilita la ejecución de los *scripts* mediante comandos simples.
32
+
-`launch.sh`: creates VM instances on Google Cloud according to the configuration defined in`config.json`.
33
+
-`setup.sh`: runs on each VM instance. Installs dependencies, clones a repository, runs a Python script, and saves the results to a Google Cloud bucket, creating it if necessary.
34
+
-`clean.sh`: cleans up all virtual machine instances and buckets on Google Cloud.
35
+
-`Makefile`: enables the execution of the scripts through simple commands.
36
36
37
-
## 💻 **¿Cómo utilizar CLOUDY?**
37
+
## 💻 **How to use CLOUDY?**
38
38
39
-
0.**Prerrequisitos**.
39
+
1.**Prerequisites**
40
40
41
-
Debes contar con una [cuenta de servicio en GCP](https://cloud.google.com/iam/docs/service-accounts-create?hl=es-419) con los permisos requeridos por *Compute engine* y *Cloud Storage* (ej. administrador de almacenamiento, administrador de instancias de compute).
41
+
First, create a [service account on GCP](https://cloud.google.com/iam/docs/service-accounts-create?hl=en) with the required permissions for Compute Engine and Cloud Storage (e.g., *storage administrator*, *compute instances administrator*).
42
42
43
-
1.**Definir `config.json`.**
43
+
Then, install the following dependencies:
44
44
45
-
Define tu configuración en el archivo `config.json`, ubicado en el directorio raíz del proyecto. Por ejemplo:
45
+
-`Google Cloud SDK`: required to interact with Google Cloud from the command line.
46
+
47
+
-`jq`: used to read the JSON configuration file.
48
+
49
+
2.**Edit `config.json`**
50
+
51
+
Define your custom configuration in the `config.json` file, located in the root directory of the project. For example:
46
52
47
53
```json
48
54
{
@@ -64,36 +70,29 @@ Este proyecto consta de los siguientes *scripts*:
64
70
}
65
71
```
66
72
67
-
Los principales campos a editar son:
68
-
69
-
- `INSTANCE_NAME_BASE` y `BUCKET_NAME`: identificador de las instancias y *bucket* creados.
70
-
- `REPO_NAME` y `REPO_URL`: repositorio a clonar. En él se ubica el código que queremos ejecutar.
71
-
- `DEPENDENCIES`: dependencias requeridas para ejecutar el *script*.
72
-
- `SCRIPT_PATH` y `SCRIPT_ARGS`: ruta al *script* de Python que se encuentra en el repositorio y que queremos ejecutar, así como argumentos de entrada.
73
-
- `SERVICE_ACCOUNT`: cuenta de servicio en GCP que vamos a utilizar. Debe contar con los permisos necesarios.
74
-
75
-
76
-
2. **Instalar las dependencias necesarias.**
77
-
78
-
- `Google Cloud SDK`: necesario para interactuar con Google Cloud desde la línea de comandos.
73
+
The main options to edit are:
79
74
80
-
- `jq`: empleado para leer el archivo JSON de configuración.
75
+
- `INSTANCE_NAME_BASE` and `BUCKET_NAME`: identifiers for the created instances and bucket.
76
+
- `REPO_NAME` and `REPO_URL`: repository to clone. This is where the code you want to execute is located.
77
+
- `SCRIPT_PATH` and `SCRIPT_ARGS`: path to the Python script you want to execute in the repository, along with its input arguments.
78
+
- `DEPENDENCIES`: dependencies required to run the Python script.
79
+
- `SERVICE_ACCOUNT`: GCP service account to be used. It must have the necessary permissions.
81
80
82
-
3. **Ejecución.**
81
+
3. **Run CLOUDY**
83
82
84
-
- Para crear las instancias de máquinas virtuales, ejecuta:
83
+
- To launch the virtual machine instances, run:
85
84
86
85
```bash
87
86
make launch
88
87
```
89
88
90
-
- Para limpiar todas las instancias y *buckets*, ejecuta:
89
+
- To clean up all instances and buckets, run:
91
90
92
91
```bash
93
92
make clean
94
93
```
95
94
96
-
- Para eliminar máquinas y *buckets* y volver a lanzar:
95
+
- To delete machines and buckets and then relaunch, run:
0 commit comments