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
Copy file name to clipboardExpand all lines: i18n/es/docusaurus-plugin-content-docs/current/contributing/compiling.mdx
+57-48Lines changed: 57 additions & 48 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,96 +1,106 @@
1
-
# Construir el SDK de Velopack
1
+
# Compilar el SDK de Velopack
2
2
<AppliesToall />
3
-
El SDK de Velopack es responsable de compilar las versiones y los instaladores.
3
+
El SDK de Velopack es responsable de compilar versiones e instaladores.
4
4
5
-
Está compuesto de:
6
-
- Binarios de Rust que se redistribuyen con las aplicaciones instaladas,
7
-
- Paquete NuGet de .NET (`Velopack`),
8
-
- Herramienta de línea de comandos de .NET (`vpk`).
5
+
Está compuesto por:
6
+
- Binarios de Rust que se redistribuyen con las aplicaciones instaladas,
7
+
- Paquete NuGet de .NET (`Velopack`),
8
+
- Herramienta de línea de comandos de .NET (`vpk`).
9
9
10
-
Para probar el proyecto, necesitas construir los binarios de Rust antes de compilar dotnet.
10
+
Para probar el proyecto, es necesario compilar los binarios de Rust antes de compilar dotnet.
11
+
12
+
:::tip
13
+
Para el desarrollo local, solo necesitas compilar los binarios para tu **sistema operativo actual** — no es necesario compilar todas las plataformas para ejecutar las pruebas. Una compilación de producción multiplataforma completa (que combina binarios de todos los sistemas operativos) es gestionada por CI y se describe en la sección de Lanzamiento / Compilación a continuación.
-[SDK de .NET 10](https://dotnet.microsoft.com/download/dotnet/10.0) — la solución tiene como objetivo múltiple `net8.0`, `net9.0` y `net10.0`, por lo que se requiere el SDK más alto (10) para compilar todo. CI instala los SDKs `8.0.x`, `9.0.x` y `10.0.x` de forma paralela.
18
+
-[Rust / Cargo](https://www.rust-lang.org/tools/install) — la versión mínima de Rust compatible es `1.75` (edición 2021).
19
+
-`dotnet tool update -g nbgv`
20
+
-`dotnet tool install -g dotnet-coverage` (solo necesario para recopilar cobertura de código)
17
21
18
-
### Depuración / Prueba
19
-
En Windows, necesitas construir los binarios de Rust usando la característica`windows` antes de ejecutar las pruebas. En OSX o Linux, deberías ejecutar `cargo build` sin el indicador de característica en su lugar.
22
+
### Depuración / Pruebas
23
+
En Windows, debes compilar los binarios de Rust usando la función`windows` antes de ejecutar las pruebas (algunos binarios lo requieren). En OSX o Linux, debes ejecutar `cargo build` sin el indicador de función.
Crear una versión de producción completa es complejo porque Velopack debe incluir binarios nativos para Windows, Linux y macOS. Necesitas construir los binarios de Rust por separado en cada plataforma, luego combinarlos en la máquina de compilación final usando `/p:PackRustAssets=true`.
43
+
:::tip
44
+
El ejecutor de pruebas está configurado mediante `global.json` para usar [`Microsoft.Testing.Platform`](https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-intro). `dotnet test --no-build` sigue funcionando; también puedes apuntar a un proyecto individual, por ejemplo `dotnet test --project test/Velopack.Tests/Velopack.Tests.csproj --no-build`.
45
+
:::
46
+
47
+
### Lanzamiento / Compilación
48
+
Crear un lanzamiento de producción completo es complejo porque Velopack debe incluir binarios nativos para Windows, Linux y macOS. Debes compilar los binarios de Rust por separado en cada plataforma y luego combinarlos en la máquina de compilación final usando `/p:PackRustAssets=true`.
43
49
44
-
Para el **desarrollo local**, normalmente solo necesitas binarios para tu sistema operativo actual. El enfoque más simple es:
50
+
Para el **desarrollo local**, generalmente solo necesitas binarios para tu sistema operativo actual. El enfoque más simple es:
Para un ejemplo de trabajo completo de cómo construir una versión usando código local de Velopack, consulta los [dev-scripts en el ejemplo de Avalonia](https://github.com/velopack/velopack/tree/master/samples/CSharpAvalonia/dev-scripts).
77
+
Para ver un ejemplo completo y funcional de cómo compilar un lanzamiento usando código local de Velopack, consulta los [scripts de desarrollo en la muestra de Avalonia](https://github.com/velopack/velopack/tree/master/samples/CSharpAvalonia/dev-scripts).
75
78
:::
76
79
77
80
:::note
78
-
Una **compilación de producción multiplataforma** completa (que combina binarios de todos los sistemas operativos en un solo paquete) requiere construir Rust en cada plataforma primero, y luego ejecutar `dotnet build -c Release /p:PackRustAssets=true` con todos los binarios de la plataforma presentes. Este flujo de trabajo lo gestiona la CI y no es práctico replicarlo localmente. Consulta los [flujos de trabajo de CI](https://github.com/velopack/velopack/tree/master/.github/workflows) para más detalles.
81
+
Una **compilación de producción multiplataforma** completa (que combina binarios de todos los sistemas operativos en un solo paquete) requiere compilar Rust en cada plataforma primero, luego recopilar todos los artefactos en `target/release` y ejecutar `dotnet build -c Release /p:PackRustAssets=true /p:ContinuousIntegrationBuild=true`. Este flujo de trabajo es gestionado por CI y no es práctico replicarlo localmente. Consulta los [flujos de trabajo de CI](https://github.com/velopack/velopack/tree/master/.github/workflows) para más detalles.
79
82
:::
80
83
81
-
### Preparar Linux
82
-
Si estás en Linux (probado en Ubuntu), hay requisitos previos de paquetes adicionales:
84
+
### Preparación de Linux
85
+
Si estás en Linux (probado en Ubuntu), hay requisitos previos de paquetes adicionales. Ejecutar las pruebas (que construyen AppImages) requiere FUSE:
Instalar dotnet y configurar las rutas es una molestia, recomiendo usar el script [dotnet-install.sh](https://learn.microsoft.com/dotnet/core/tools/dotnet-install-script).
92
+
Si también estás compilando las bibliotecas/binarios nativos de Rust, se requieren los siguientes paquetes de desarrollo:
Instalar dotnet y configurar las rutas puede ser complicado; recomiendo usar el script [dotnet-install.sh](https://learn.microsoft.com/dotnet/core/tools/dotnet-install-script).
88
98
89
99
```shell
90
-
./dotnet-install.sh -c 8.0
100
+
./dotnet-install.sh -c 10.0
91
101
```
92
102
93
-
Y luego añadir lo siguiente al final de tu `.bashrc` o `.profile`:
103
+
Y luego agregar lo siguiente al final de tu `.bashrc` o `.profile`:
A continuación, instala las herramientas de dotnet que faltan:
112
+
A continuación, instala las herramientas de dotnet faltantes:
103
113
104
114
```shell
115
+
dotnet tool update -g nbgv
105
116
dotnet tool install -g dotnet-coverage
106
-
dotnet tool install -g nbgv
107
117
```
108
118
109
-
Necesitas verificar que `nbgv`funciona en la línea de comandos (por ejemplo, `nbgv -h`) antes de continuar.
110
-
Si no funciona, comprueba que tus herramientas se instalaron en `~/.dotnet/tools`. Si no usaste el script `dotnet-install.sh`,
111
-
dotnet podría estar en una ubicación diferente (por ejemplo, `/usr/share/dotnet`) y las rutas anteriores tendrán que actualizarse.
119
+
Debes verificar que `nbgv`funcione en la línea de comandos (p. ej., `nbgv -h`) antes de continuar.
120
+
Si no funciona, verifica que tus herramientas se instalaron en `~/.dotnet/tools`. Si no usaste el script `dotnet-install.sh`,
121
+
dotnet podría estar en una ubicación diferente (p. ej., `/usr/share/dotnet`) y las rutas anteriores deberán actualizarse.
112
122
113
-
Una vez que dotnet esté configurado, puedes instalar Rust, lo que normalmente se hace con el [script de rustup disponible aquí](https://www.rust-lang.org/tools/install)
123
+
Una vez que dotnet esté configurado, puedes instalar Rust, lo cual se hace habitualmente con el [script rustup disponible aquí](https://www.rust-lang.org/tools/install)
114
124
115
-
Para verificar que Rust está instalado y funcionando correctamente, deberías compilar los binarios de Rust en `src/bins`:
125
+
Para verificar que Rust está instalado y funcionando correctamente, debes compilar los binarios de Rust:
<FlowLink /> admite OAuth, autenticación por formularios y claves de API para la autenticación. Puedes usar cualquiera de estos métodos para autenticarte con el servicio Flow. El método recomendado es usar OAuth, ya que proporciona el mecanismo de autenticación más seguro y flexible.
2
+
<FlowLink /> admite OAuth, autenticación mediante formularios y claves de API. Puede utilizar cualquiera de estos métodos para autenticarse con el servicio Flow. El método recomendado es OAuth, ya que proporciona el mecanismo de autenticación más seguro y flexible.
3
3
4
-
Para realizar un inicio de sesión interactivo, usa el comando `vpk login`. Esto guardará tu autenticación localmente dentro de `~/.vpk`. Para ejecutar comandos sin interacción, como en una canalización de CI/CD, puedes especificar la opción `--api-key` en los comandos `vpk` que interactúan con Flow.
4
+
## Inicio de sesión interactivo
5
5
6
+
Para realizar un inicio de sesión interactivo, utilice el comando `vpk login`. Esto abre un navegador para autenticarse mediante OAuth y almacena sus credenciales localmente, de modo que los comandos posteriores no necesiten iniciar sesión de nuevo. Puede borrarlas con `vpk logout`.
7
+
8
+
```bash
9
+
vpk login
10
+
```
11
+
12
+
Las credenciales se almacenan en `~/.vpk` (el archivo `creds.bin`), respaldadas por el almacén de secretos del sistema operativo cuando está disponible (el llavero en macOS y el keyring en Linux). Este es el mismo directorio utilizado para su perfil de Flow.
13
+
14
+
## Inicio de sesión no interactivo (CI/CD)
15
+
16
+
Para ejecutar comandos sin interacción, como en un pipeline de CI/CD, cree una clave de API y pásela mediante la opción `--api-key`. Las claves de API se gestionan desde el panel de control de Flow en **Configuración de la cuenta** (consulte [Administración de cuentas](account.mdx)).
Al igual que con todas las opciones de `vpk`, puede proporcionar la clave de API como la variable de entorno `VPK_API_KEY` en lugar de incluirla en la línea de comandos, lo que resulta más seguro en los registros de CI.
23
+
24
+
## Comandos de Flow
25
+
26
+
Los comandos de `vpk` que interactúan con Flow aceptan todos `--api-key`:
27
+
28
+
-`vpk login` / `vpk logout` — inicia o cierra una sesión OAuth interactiva.
29
+
-`vpk publish` — sube una versión a Flow (utilizado en la guía de [Velopack Flow](../flow.mdx)).
30
+
-`vpk flow api` — realiza llamadas REST directas a la API de Flow (consulte [API](api.mdx)).
Copy file name to clipboardExpand all lines: i18n/es/docusaurus-plugin-content-docs/current/distributing/deploy-cli.mdx
+15-11Lines changed: 15 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,38 +1,42 @@
1
1
# CLI de Despliegue
2
2
<AppliesToall />
3
-
El proceso general para desplegar una versión de Velopack (`download -> pack -> upload`) puede simplificarse enormemente usando los comandos `download` y `upload` que están integrados en la herramienta de línea de comandos `vpk`.
3
+
El proceso general para desplegar una versión de Velopack (`download -> pack -> upload`) puede simplificarse considerablemente utilizando los comandos `download` y `upload` integrados en la herramienta de línea de comandos `vpk`.
4
4
5
-
## Empaquetar tu nueva versión con deltas
5
+
## Empaquetando tu nueva versión con deltas
6
6
7
-
Para que se generen deltas durante el comando `pack`, primero necesitas descargar la última versión actual. Esto debe hacerse con el comando download:
7
+
Para que se generen los deltas durante el comando `pack`, primero debes descargar la versión más reciente actual. Esto debe hacerse con el comando de descarga:
Hay proveedores para diversas fuentes, como GitHub, S3, HTTP, etc.
14
+
:::note
15
+
Los flags cortos `-u`, `-v` y `-p` son alias de `--packId`, `--packVersion` y `--packDir` respectivamente (consulta la [descripción general del empaquetado](../packaging/overview.mdx)). Son intercambiables.
16
+
:::
17
+
18
+
Existen proveedores para diversas fuentes, como GitHub, S3, HTTP, etc.
15
19
16
-
## Desplegar versiones
17
-
En el ejemplo anterior, usamos la fuente `http`; aunque es muy genérica, no proporciona ninguna información sobre cómo subir las versiones, así que en el siguiente ejemplo de despliegue usaremos [AWS S3](https://aws.amazon.com/s3/).
20
+
## Desplegando versiones
21
+
En el ejemplo anterior usamos la fuente `http`; aunque es muy genérica, no proporciona información sobre cómo cargar las versiones, por lo que en el siguiente ejemplo de despliegue usaremos [AWS S3](https://aws.amazon.com/s3/).
18
22
19
23
:::tip
20
-
La mayoría de los proveedores de almacenamiento en la nube de hoy en día tienen una API compatible con S3 ([GCP](https://cloud.google.com/storage/docs/interoperability), [BackBlaze B2](https://www.backblaze.com/docs/cloud-storage-s3-compatible-api), [DigitalOcean](https://docs.digitalocean.com/products/spaces/how-to/use-aws-sdks/), [Linode](https://www.linode.com/docs/products/storage/object-storage/), [IBM Cloud](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-compatibility-api), etc.) y se puede usar con este comando; no está limitado a AWS.
24
+
La mayoría de los proveedores de almacenamiento en la nube hoy en día tienen una API compatible con S3 ([GCP](https://cloud.google.com/storage/docs/interoperability), [BackBlaze B2](https://www.backblaze.com/docs/cloud-storage-s3-compatible-api), [DigitalOcean](https://docs.digitalocean.com/products/spaces/how-to/use-aws-sdks/), [Linode](https://www.linode.com/docs/products/storage/object-storage/), [IBM Cloud](https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-compatibility-api), etc.) y pueden usarse con este comando; no está limitado a AWS.
21
25
:::
22
26
23
-
Con AWS, puedes [autenticarte usando la herramienta de línea de comandos `aws`](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/creds-idc.html) o puedes proporcionar claves de acceso como se muestra a continuación.
27
+
Con AWS, puedes [autenticarte usando la herramienta de línea de comandos `aws`](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/creds-idc.html) o proporcionar claves de acceso como se muestra a continuación.
24
28
25
-
Si estás usando AWS SSO, deberías consultar la documentación de [AWS CLI SSO](https://aws.amazon.com/blogs/security/aws-single-sign-on-now-enables-command-line-interface-access-for-aws-accounts-using-corporate-credentials/) y la [autenticación de sesión de AWS](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
29
+
Si estás usando AWS SSO, debes consultar la documentación de [AWS CLI SSO](https://aws.amazon.com/blogs/security/aws-single-sign-on-now-enables-command-line-interface-access-for-aws-accounts-using-corporate-credentials/) y la [autenticación de sesión de AWS](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
Ten en cuenta que también puedes especificar la mayoría de estos argumentos como variables de entorno. Puedes revisar las [variables de entorno del SDK de AWS aquí](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) y cada opción de `vpk` también se puede proporcionar como una variable de entorno; para listarlas en el texto de ayuda usa `vpk -H` en lugar de `vpk -h`.
37
+
Ten en cuenta que también puedes especificar la mayoría de estos argumentos como variables de entorno. Puedes revisar las [variables de entorno del SDK de AWS aquí](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) y cada opción de `vpk` también puede proporcionarse como variable de entorno; para listarlas en el texto de ayuda usa `vpk -H` en lugar de `vpk -h`.
34
38
35
-
Cuando uses una API compatible con S3 que no sea de AWS (por ejemplo, BackBlaze B2), necesitas especificar un endpoint en lugar de una región:
39
+
Al usar una API compatible con S3 que no sea de AWS (p. ej., BackBlaze B2), debes especificar un endpoint en lugar de una región:
0 commit comments