1
0
mirror of synced 2026-01-08 21:02:10 -05:00

Merge pull request #18899 from github/repo-sync

repo sync
This commit is contained in:
Octomerger Bot
2022-06-30 14:56:11 -05:00
committed by GitHub
306 changed files with 5817 additions and 1637 deletions

View File

@@ -56,7 +56,7 @@ GitHub mostrará el README de tu perfil en tu página de perfil si cuentas con t
El archivo de README que se ha generado está pre-llenado con una plantilla para que te inspires en completarlo. ![Archivo README con la plantilla pre-llenada](/assets/images/help/repository/personal-repository-readme-template.png)
Para encontrar un resumen de todos los emojis disponibles y de sus códigos, consulta el [Directorio de Emojis](http://www.emoji-cheat-sheet.com/)".
Para encontrar un resumen de todos los emojis disponibles y de sus códigos, consulta el [Directorio de Emojis](https://www.webfx.com/tools/emoji-cheat-sheet/)".
## Eliminar un README de perfil

View File

@@ -29,7 +29,7 @@ When you sign up for an account, {% data variables.product.product_name %} provi
**Note{% ifversion ghec %}s{% endif %}**: {% ifversion ghec %}
* {% endif %}Your profile picture should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend keeping the image at about 500 by 500 pixels.
* {% endif %}Your profile picture should be a PNG, JPG, or GIF file, and it must be less than 1 MB in size and smaller than 3000 by 3000 pixels. For the best quality rendering, we recommend keeping the image at about 500 by 500 pixels.
{% ifversion ghec %}* Gravatar profile pictures are not supported with {% data variables.product.prodname_emus %}.{% endif %}
{% endnote %}
@@ -39,8 +39,8 @@ When you sign up for an account, {% data variables.product.product_name %} provi
{% data reusables.user-settings.access_settings %}
2. Under **Profile Picture**, click {% octicon "pencil" aria-label="The edit icon" %} **Edit**.
![Edit profile picture](/assets/images/help/profile/edit-profile-photo.png)
3. Click **Upload a photo...**.
![Update profile picture](/assets/images/help/profile/edit-profile-picture-options.png)
3. Click **Upload a photo...**.{% ifversion not ghae %}
![Update profile picture](/assets/images/help/profile/edit-profile-picture-options.png){% endif %}
3. Crop your picture. When you're done, click **Set new profile picture**.
![Crop uploaded photo](/assets/images/help/profile/avatar_crop_and_save.png)
@@ -49,8 +49,8 @@ When you sign up for an account, {% data variables.product.product_name %} provi
{% data reusables.user-settings.access_settings %}
2. Under **Profile Picture**, click {% octicon "pencil" aria-label="The edit icon" %} **Edit**.
![Edit profile picture](/assets/images/help/profile/edit-profile-photo.png)
3. To revert to your identicon, click **Remove photo**. If your email address is associated with a [Gravatar](https://en.gravatar.com/), you cannot revert to your identicon. Click **Revert to Gravatar** instead.
![Update profile picture](/assets/images/help/profile/edit-profile-picture-options.png)
3. To revert to your identicon, click **Remove photo**. {% ifversion not ghae %}If your email address is associated with a [Gravatar](https://en.gravatar.com/), you cannot revert to your identicon. Click **Revert to Gravatar** instead.
![Update profile picture](/assets/images/help/profile/edit-profile-picture-options.png){% endif %}
## Changing your profile name

View File

@@ -52,7 +52,7 @@ Para garantizar que las confirmaciones se te atribuyan y aparezcan en tu gráfic
{% note %}
**Note:** If you created your account on {% data variables.product.product_location %} _after_ July 18, 2017, your `noreply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of <code><em>ID+username</em>@users.noreply.github.com</code>. If you created your account on {% data variables.product.product_location %} _prior to_ July 18, 2017, your `noreply` email address from {% data variables.product.product_name %} is <code><em>username</em>@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
**Nota:** Si creaste tu cuenta en {% data variables.product.product_location %} _después_ del 18 de julio de 2017, tu dirección de correo electrónico de `noreply` para {% data variables.product.product_name %} es un número de ID de siete dígitos y tu nombre de usuario en formato <code><em>ID+username</em>@users.noreply.github.com</code>. Si creaste tu cuenta en {% data variables.product.product_location %} _antes del_ 18 de julio de 2017, tu dirección de correo electrónico de tipo `noreply` de {% data variables.product.product_name %} es <code><em>username</em>@users.noreply.github.com</code>. You can get an ID-based `noreply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings.
{% endnote %}

View File

@@ -0,0 +1,217 @@
---
title: Crear y probar Go
intro: Puedes crear un flujo de trabajo de integración continua (IC) para compilar y probar tu proyecto de Go.
versions:
fpt: '*'
ghes: '*'
ghae: '*'
ghec: '*'
type: tutorial
topics:
- CI
shortTitle: Compilar & probar Go
---
{% data reusables.actions.enterprise-beta %}
{% data reusables.actions.enterprise-github-hosted-runners %}
## Introducción
Esta guía te muestra cómo compilar, probar y publicar un paquete de Go.
{% ifversion ghae %}
{% data reusables.actions.self-hosted-runners-software %}
{% else %} Los ejecutores hospedados en {% data variables.product.prodname_dotcom %} tienen un caché de herramientas con software preinstalado, el cual incluye las dependencias para Go. Para encontrar una lista completa de software actualizado y las versiones preinstaladas de Go, consulta la sección "[Acerca de los ejecutores hospedados en {% data variables.product.prodname_dotcom %}](/actions/using-github-hosted-runners/about-github-hosted-runners#preinstalled-software)".
{% endif %}
## Prerrequisitos
Ya debes estar familiarizado con la sintaxis de YAML y con cómo se utiliza con {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las {% data variables.product.prodname_actions %}](/actions/using-workflows/workflow-syntax-for-github-actions)".
Te recomendamos que tener un entendimiento básico del lenguaje de Go. Para obtener más información, consulta la sección [Iniciar con Go](https://golang.org/doc/tutorial/getting-started).
## Utilizar el flujo de trabajo inicial de Go
{% data variables.product.prodname_dotcom %} proporciona un flujo de trabajo inicial de Go que debería funcionar con la mayoría de los proyectos de Go. Esta guía incluye ejemplos que puedes utilizar para personalizar los flujos de trabajo iniciales. Para obtener más información, consulta el [flujo de trabajo inicial de Go](https://github.com/actions/starter-workflows/blob/main/ci/go.yml).
Para comenzar rápidamente, agrega el flujo de trabajo inicial al directorio de `.github/workflows` de tu repositorio.
```yaml{:copy}
name: Go package
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: {% data reusables.actions.action-checkout %}
- name: Set up Go
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: 1.15
- name: Build
run: go build -v ./...
- name: Test
run: go test -v ./...
```
## Especificar una versión de Go
La forma más fácil de especificar una versión de Go es utilizando la acción `setup-go` que proporciona {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta la [acción de `setup-go`](https://github.com/actions/setup-go/).
Para utilizar una versión preinstalada de Go en un ejecutor hospedado en {% data variables.product.prodname_dotcom %}, pasa la versión relevante a la propiedad `go-version` de la acción `setup-go`. Esta acción encuentra una versión específica de Go desde el caché de herramientas en cada ejecutor y agrega los binarios necesarios a `PATH`. Estos cambios persistirán para el recordatorio del job.
La acción `setup-go` es la forma recomendada de utilizar Go con las {% data variables.product.prodname_actions %}, ya que esta ayuda a garantizar el comportamiento consistente a lo largo de los diferentes ejecutores y versiones de Go. Si estás utilizando un ejecutor auto-hospedado, debes instalar Go y agregarlo a `PATH`.
### Utilizar versiones múltiples de Go
```yaml{:copy}
name: Go
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
go-version: [ '1.14', '1.15', '1.16.x' ]
steps:
- uses: {% data reusables.actions.action-checkout %}
- name: Setup Go {% raw %}${{ matrix.go-version }}{% endraw %}
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: {% raw %}${{ matrix.go-version }}{% endraw %}
# You can test your matrix by printing the current Go version
- name: Display Go version
run: go version
```
### Utilizar una versión específica de Go
Puedes configurar tu job para utilizar una versión específica de Go, tal como la `1.16.2`. Como alternativa, puedes utilizar una sintaxis de versión semántica para obtener el último lanzamiento menor. Este ejemplo utiliza el último lanzamiento de parche de Go 1.16:
```yaml{:copy}
- name: Setup Go 1.16.x
uses: {% data reusables.actions.action-setup-go %}
with:
# Semantic version range syntax or exact version of Go
go-version: '1.16.x'
```
## Instalar dependencias
Puedes utilziar `go get` para instalar dependencias:
```yaml{:copy}
steps:
- uses: {% data reusables.actions.action-checkout %}
- name: Setup Go
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: '1.16.x'
- name: Install dependencies
run: |
go get .
go get example.lab/octo-examplemodule
go get example.lab/octo-examplemodule@v1.3.4
```
{% ifversion actions-caching %}
### Almacenar dependencias en caché
Puedes almacenar en caché y restaurar las dependencias utilizando la [acción `setup-go`](https://github.com/actions/setup-go). El almacenamiento en caché se encuentra inhabilitado predeterminadamente, pero puedes configurar el parámetro `cache` en `true` para habilitarlo.
Cuando se habilita el almacenamiento en caché, la acción `setup-go` busca el archivo de dependencia, `go.sum`, en la raíz del repositorio y utiliza el hash del archivo de dependencia como parte de la llave del caché.
```yaml{:copy}
- name: Setup Go
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: '1.16.x'
cache: true
```
Como alternativa, puedes utilizar el parámetro `cache-dependency-path` para los casos en donde se utilizan archivos de dependencias múltiples o cuando se ubican en subdirectorios diferentes.
```yaml{:copy}
- uses: {% data reusables.actions.action-setup-go %}
with:
go-version: '1.17'
cache: true
cache-dependency-path: subdir/go.sum
```
Si tienes un requisito personalizado o necesitas controles más exactos para almacenar en caché, puedes utilizar la [acción `cache`](https://github.com/marketplace/actions/cache). Para obtener más información, consulta la sección "[Almacenar las dependencias en caché para agilizar los flujos de trabajo](/actions/using-workflows/caching-dependencies-to-speed-up-workflows)".
{% endif %}
## Construir y probar tu código
Puedes usar los mismos comandos que usas de forma local para construir y probar tu código. Este flujo de trabajo de ejemplo demuestra cómo utilizar `go build` y `go test` en un job:
```yaml{:copy}
name: Go
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: {% data reusables.actions.action-checkout %}
- name: Setup Go
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: '1.16.x'
- name: Install dependencies
run: go get .
- name: Build
run: go build -v ./...
- name: Test with the Go CLI
run: go test
```
## Empaquetar datos de flujo de trabajo como artefactos
Después de que se completa un flujo de trabajo, puedes cargar los artefactos que se den como resultado para su análisis. Por ejemplo, es posible que debas guardar los archivos de registro, los vaciados de memoria, los resultados de las pruebas o las capturas de pantalla. El siguiente ejemplo demuestra cómo puedes utilizar la acción `upload-artifact` para cargar los resultados de las pruebas.
Para obtener más información, consulta la sección "[Almacenar los datos de los flujos de trabajo como artefactos](/actions/using-workflows/storing-workflow-data-as-artifacts)".
```yaml{:copy}
name: Upload Go test results
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
go-version: [ '1.14', '1.15', '1.16.x' ]
steps:
- uses: {% data reusables.actions.action-checkout %}
- name: Setup Go
uses: {% data reusables.actions.action-setup-go %}
with:
go-version: {% raw %}${{ matrix.go-version }}{% endraw %}
- name: Install dependencies
run: go get .
- name: Test with Go
run: go test -json > TestResults-{% raw %}${{ matrix.go-version }}{% endraw %}.json
- name: Upload Go test results
uses: {% data reusables.actions.action-upload-artifact %}
with:
name: Go-results-{% raw %}${{ matrix.go-version }}{% endraw %}
path: TestResults-{% raw %}${{ matrix.go-version }}{% endraw %}.json
```

View File

@@ -69,7 +69,7 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Build with Gradle
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: build
```
@@ -105,7 +105,7 @@ steps:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Run the Gradle package task
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: -b ci.gradle package
```
@@ -136,7 +136,7 @@ steps:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Build with Gradle
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: build
- uses: {% data reusables.actions.action-upload-artifact %}

View File

@@ -134,7 +134,7 @@ Si no especificas una versión de Node.js, {% data variables.product.prodname_do
Los ejecutores alojados en {% data variables.product.prodname_dotcom %} tienen instalados administradores de dependencias de npm y Yarn. Puedes usar npm y Yarn para instalar dependencias en tu flujo de trabajo antes de construir y probar tu código. Los ejecutores Windows y Linux alojados en {% data variables.product.prodname_dotcom %} también tienen instalado Grunt, Gulp y Bower.
{% ifversion actions-caching %}You can also cache dependencies to speed up your workflow. Para obtener más información, consulta la sección "[Almacenar las dependencias en caché para agilizar los flujos de trabajo](/actions/using-workflows/caching-dependencies-to-speed-up-workflows)".{% endif %}
{% ifversion actions-caching %}También puedes almacenar las dependencias en caché para agilizar tu flujo de trabajo. Para obtener más información, consulta la sección "[Almacenar las dependencias en caché para agilizar los flujos de trabajo](/actions/using-workflows/caching-dependencies-to-speed-up-workflows)".{% endif %}
### Ejemplo con npm

View File

@@ -57,7 +57,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.6", "3.7", "3.8", "3.9"]
python-version: ["3.7", "3.8", "3.9", "3.10"]
steps:
- uses: {% data reusables.actions.action-checkout %}
@@ -114,7 +114,7 @@ jobs:
# You can use PyPy versions in python-version.
# For example, {% ifversion actions-node16-action %}pypy-2.7 and pypy-3.8{% else %}pypy2 and pypy3{% endif %}
matrix:
python-version: ["2.7", "3.6", "3.7", "3.8", "3.9"]
python-version: ["2.7", "3.7", "3.8", "3.9", "3.10"]
steps:
- uses: {% data reusables.actions.action-checkout %}
@@ -129,7 +129,7 @@ jobs:
### Using a specific Python version
You can configure a specific version of python. For example, 3.8. Alternatively, you can use semantic version syntax to get the latest minor release. This example uses the latest minor release of Python 3.
You can configure a specific version of python. For example, 3.9. Alternatively, you can use semantic version syntax to get the latest minor release. This example uses the latest minor release of Python 3.
```yaml{:copy}
name: Python package
@@ -173,12 +173,12 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.6", "3.7", "3.8", "3.9", {% ifversion actions-node16-action %}pypy-2.7, pypy-3.8{% else %}pypy2, pypy3{% endif %}]
python-version: ["3.7", "3.8", "3.9", "3.10", {% ifversion actions-node16-action %}pypy-2.7, pypy-3.8{% else %}pypy2, pypy3{% endif %}]
exclude:
- os: macos-latest
python-version: "3.6"
python-version: "3.7"
- os: windows-latest
python-version: "3.6"
python-version: "3.7"
```
### Using the default Python version
@@ -238,7 +238,7 @@ steps:
- uses: {% data reusables.actions.action-checkout %}
- uses: {% data reusables.actions.action-setup-python %}
with:
python-version: '3.9'
python-version: '3.10'
cache: 'pip'
- run: pip install -r requirements.txt
- run: pip test
@@ -315,7 +315,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python: ["3.7", "3.8", "3.9"]
python: ["3.8", "3.9", "3.10"]
steps:
- uses: {% data reusables.actions.action-checkout %}
@@ -347,7 +347,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.6", "3.7", "3.8", "3.9"]
python-version: ["3.7", "3.8", "3.9", "3.10"]
steps:
- uses: {% data reusables.actions.action-checkout %}

View File

@@ -18,6 +18,7 @@ redirect_from:
- /actions/automating-builds-and-tests/building-and-testing-nodejs-or-python
children:
- /about-continuous-integration
- /building-and-testing-go
- /building-and-testing-java-with-ant
- /building-and-testing-java-with-gradle
- /building-and-testing-java-with-maven

View File

@@ -664,254 +664,249 @@ Aquí mostramos una lista exhaustiva de todos los iconos compatibles actualmente
<td>eye</td>
</tr>
<tr>
<td>facebook</td>
<td>fast-forward</td>
<td>avance rápido</td>
<td>feather</td>
<td>file-minus</td>
</tr>
<tr>
<td>file-plus</td>
<td>file-text</td>
<td>file</td>
<td>film</td>
</tr>
<tr>
<td>file-text</td>
<td>archivo</td>
<td>film</td>
<td>filter</td>
</tr>
<tr>
<td>marcador</td>
<td>folder-minus</td>
<td>folder-plus</td>
<td>folder</td>
</tr>
<tr>
<td>folder</td>
<td>gift</td>
<td>git-branch</td>
<td>git-commit</td>
<td>git-merge</td>
</tr>
<tr>
<td>git-merge</td>
<td>git-pull-request</td>
<td>globe</td>
<td>grid</td>
<td>hard-drive</td>
</tr>
<tr>
<td>hard-drive</td>
<td>hash</td>
<td>headphones</td>
<td>heart</td>
<td>help-circle</td>
</tr>
<tr>
<td>help-circle</td>
<td>home</td>
<td>image</td>
<td>inbox</td>
<td>info</td>
</tr>
<tr>
<td>info</td>
<td>italic</td>
<td>layers</td>
<td>layout</td>
<td>life-buoy</td>
</tr>
<tr>
<td>life-buoy</td>
<td>link-2</td>
<td>link</td>
<td>list</td>
<td>loader</td>
</tr>
<tr>
<td>loader</td>
<td>lock</td>
<td>log-in</td>
<td>log-out</td>
<td>mail</td>
</tr>
<tr>
<td>mail</td>
<td>map-pin</td>
<td>map</td>
<td>maximize-2</td>
<td>maximize</td>
</tr>
<tr>
<td>maximize</td>
<td>menu</td>
<td>message-circle</td>
<td>message-square</td>
<td>mic-off</td>
</tr>
<tr>
<td>mic-off</td>
<td>mic</td>
<td>minimize-2</td>
<td>minimize</td>
<td>minus-circle</td>
</tr>
<tr>
<td>minus-circle</td>
<td>minus-square</td>
<td>minus</td>
<td>monitor</td>
<td>moon</td>
</tr>
<tr>
<td>moon</td>
<td>more-horizontal</td>
<td>more-vertical</td>
<td>move</td>
<td>music</td>
</tr>
<tr>
<td>music</td>
<td>navigation-2</td>
<td>navigation</td>
<td>octagon</td>
<td>paquete</td>
</tr>
<tr>
<td>package</td>
<td>paperclip</td>
<td>pause-circle</td>
<td>pause</td>
<td>percent</td>
</tr>
<tr>
<td>percent</td>
<td>phone-call</td>
<td>phone-forwarded</td>
<td>phone-incoming</td>
<td>phone-missed</td>
</tr>
<tr>
<td>phone-missed</td>
<td>phone-off</td>
<td>phone-outgoing</td>
<td>phone</td>
<td>pie-chart</td>
</tr>
<tr>
<td>pie-chart</td>
<td>play-circle</td>
<td>play</td>
<td>plus-circle</td>
<td>plus-square</td>
</tr>
<tr>
<td>plus-square</td>
<td>plus</td>
<td>pocket</td>
<td>power</td>
<td>printer</td>
</tr>
<tr>
<td>printer</td>
<td>radio</td>
<td>refresh-ccw</td>
<td>refresh-cw</td>
<td>repeat</td>
</tr>
<tr>
<td>repeat</td>
<td>rewind</td>
<td>retroceder</td>
<td>rotate-ccw</td>
<td>rotate-cw</td>
<td>rss</td>
</tr>
<tr>
<td>rss</td>
<td>guardar</td>
<td>save</td>
<td>scissors</td>
<td>search</td>
<td>send</td>
</tr>
<tr>
<td>send</td>
<td>server</td>
<td>settings</td>
<td>share-2</td>
<td>share</td>
</tr>
<tr>
<td>share</td>
<td>shield-off</td>
<td>shield</td>
<td>shopping-bag</td>
</tr>
<tr>
<td>shopping-cart</td>
<td>shuffle</td>
<td>sidebar</td>
<td>skip-back</td>
</tr>
<tr>
<td>shuffle</td>
<td>barra lateral</td>
<td>skip-back</td>
<td>skip-forward</td>
</tr>
<tr>
<td>slash</td>
<td>sliders</td>
<td>smartphone</td>
</tr>
<tr>
<td>speaker</td>
<td>square</td>
<td>star</td>
<td>stop-circle</td>
</tr>
<tr>
<td>square</td>
<td>estrella</td>
<td>stop-circle</td>
<td>sun</td>
</tr>
<tr>
<td>sunrise</td>
<td>sunset</td>
<td>tablet</td>
<td>etiqueta</td>
</tr>
<tr>
<td>tag</td>
<td>target</td>
<td>terminal</td>
<td>thermometer</td>
<td>thumbs-down</td>
</tr>
<tr>
<td>thumbs-down</td>
<td>thumbs-up</td>
<td>toggle-left</td>
<td>toggle-right</td>
<td>trash-2</td>
</tr>
<tr>
<td>trash-2</td>
<td>trash</td>
<td>trending-down</td>
<td>trending-up</td>
<td>triangle</td>
</tr>
<tr>
<td>triangle</td>
<td>truck</td>
<td>tv</td>
<td>type</td>
<td>umbrella</td>
</tr>
<tr>
<td>umbrella</td>
<td>underline</td>
<td>unlock</td>
<td>upload-cloud</td>
<td>cargar</td>
</tr>
<tr>
<td>upload</td>
<td>user-check</td>
<td>user-minus</td>
<td>user-plus</td>
<td>user-x</td>
</tr>
<tr>
<td>user-x</td>
<td>user</td>
<td>usuario</td>
<td>users</td>
<td>video-off</td>
<td>video</td>
</tr>
<tr>
<td>video</td>
<td>voicemail</td>
<td>volume-1</td>
<td>volume-2</td>
</tr>
<tr>
<td>volume-x</td>
<td>volume</td>
<td>watch</td>
<td>wifi-off</td>
</tr>
<tr>
<td>volume</td>
<td>observar</td>
<td>wifi-off</td>
<td>wifi</td>
</tr>
<tr>
<td>wind</td>
<td>x-circle</td>
<td>x-square</td>
<td>x</td>
</tr>
<tr>
<td>x</td>
<td>zap-off</td>
<td>zap</td>
<td>zoom-in</td>
</tr>
<tr>
<td>zoom-out</td>
<td></td>
<td></td>
<td></td>
</tr>
</table>

View File

@@ -61,7 +61,7 @@ env:
API_LOCATION: "api" # location of your api source code - optional
APP_ARTIFACT_LOCATION: "build" # location of client code build output
on:
on:
push:
branches:
- main
@@ -72,6 +72,7 @@ env:
permissions:
issues: write
contents: read
jobs:
build_and_deploy:

View File

@@ -1,13 +1,12 @@
---
title: 'Using concurrency, expressions, and a test matrix'
shortTitle: 'Using concurrency, expressions, and a test matrix'
intro: 'How to use advanced {% data variables.product.prodname_actions %} features for continuous integration (CI).'
intro: 'Cómo utilizar características avanzadas de {% data variables.product.prodname_actions %} para la integración continua (IC).'
versions:
fpt: '*'
ghes: '>= 3.5'
ghae: issue-4925
ghec: '*'
showMiniToc: false
type: how_to
topics:
- Workflows
@@ -15,21 +14,15 @@ topics:
{% data reusables.actions.enterprise-github-hosted-runners %}
- [Example overview](#example-overview)
- [Features used in this example](#features-used-in-this-example)
- [Ejemplo de flujo de trabajo](#example-workflow)
- [Understanding the example](#understanding-the-example)
- [Pasos siguientes](#next-steps)
## Resumen de ejemplo
{% data reusables.actions.example-workflow-intro-ci %} When this workflow is triggered, it tests your code using a matrix of test combinations with `npm test`.
{% data reusables.actions.example-diagram-intro %}
![Overview diagram of workflow steps](/assets/images/help/images/overview-actions-using-concurrency-expressions-and-a-test-matrix.png)
![Diagrama de resumen de los pasos del flujo de trabajo](/assets/images/help/images/overview-actions-using-concurrency-expressions-and-a-test-matrix.png)
## Features used in this example
## Características utilizadas en este ejemplo
{% data reusables.actions.example-table-intro %}
@@ -54,7 +47,7 @@ topics:
{% data reusables.actions.note-understanding-example %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:100%"></th>
@@ -218,15 +211,15 @@ jobs:
</tbody>
</table>
## Understanding the example
## Cómo entender el ejemplo
 {% data reusables.actions.example-explanation-table-intro %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:60%"><b>Código</b></th>
<th style="width:40%"><b>Explanation</b></th>
<th style="width:40%"><b>Explicación</b></th>
</tr>
</thead>
<tbody>
@@ -303,7 +296,7 @@ permissions:
</td>
<td>
Modifies the default permissions granted to `GITHUB_TOKEN`. This will vary depending on the needs of your workflow. For more information, see "[Assigning permissions to jobs](/actions/using-jobs/assigning-permissions-to-jobs)."
Modifica los permisos predeterminados que se otorgan al `GITHUB_TOKEN`. Esto variará dependiendo de las necesidades de tu flujo de trabajo. Para obtener más información, consulta la sección "[Asignar permisos a los jobs](/actions/using-jobs/assigning-permissions-to-jobs)".
</td>
</tr>
<tr>
@@ -341,7 +334,7 @@ jobs:
</td>
<td>
Groups together all the jobs that run in the workflow file.
Agrupa todos los jobs que se ejecutan en el archivo de flujo de trabajo.
</td>
</tr>
<tr>
@@ -451,7 +444,7 @@ Groups together all the steps that will run as part of the `test` job. Each job
</td>
<td>
The `uses` keyword tells the job to retrieve the action named `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio. Some extra options are provided to the action using the `with` key.
La palabra clave `uses` le indica al job recuperar la acción llamada `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio. Some extra options are provided to the action using the `with` key.
</td>
</tr>
<tr>
@@ -589,7 +582,7 @@ This step runs a shell command that uses an output from the previous step to cre
</td>
<td>
This step uses the `actions/setup-node` action to install the specified version of the `node` software package on the runner, which gives you access to the `npm` command.
Este paso utiliza la acción `actions/setup-node` para instalar la versión especificada del paquete de software `node` en el ejecutor, lo cuál te da acceso al comando `npm`.
</td>
</tr>
<tr>

View File

@@ -7,7 +7,6 @@ versions:
ghes: '> 3.1'
ghae: '*'
ghec: '*'
showMiniToc: false
type: how_to
topics:
- Workflows
@@ -15,19 +14,13 @@ topics:
{% data reusables.actions.enterprise-github-hosted-runners %}
- [Resumen de ejemplo](#example-overview)
- [Características utilizadas en este ejemplo](#features-used-in-this-example)
- [Ejemplo de flujo de trabajo](#example-workflow)
- [Understanding the example](#understanding-the-example)
- [Pasos siguientes](#next-steps)
## Resumen de ejemplo
{% data reusables.actions.example-workflow-intro-ci %} When this workflow is triggered, it automatically runs a script that checks whether the {% data variables.product.prodname_dotcom %} Docs site has any broken links.
{% data reusables.actions.example-workflow-intro-ci %} Cuando se activa este flujo de trabajo, este ejecuta automáticamente un script que verifica si el sitio de {% data variables.product.prodname_dotcom %} Docs tiene enlaces rotos.
{% data reusables.actions.example-diagram-intro %}
![Overview diagram of workflow steps](/assets/images/help/images/overview-actions-using-scripts-ci-example.png)
![Diagrama de resumen de los pasos del flujo de trabajo](/assets/images/help/images/overview-actions-using-scripts-ci-example.png)
## Características utilizadas en este ejemplo
@@ -52,7 +45,7 @@ topics:
{% data reusables.actions.note-understanding-example %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:100%"></th>
@@ -136,15 +129,15 @@ jobs:
</tbody>
</table>
## Understanding the example
## Cómo entender el ejemplo
{% data reusables.actions.example-explanation-table-intro %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:60%"><b>Código</b></th>
<th style="width:40%"><b>Explanation</b></th>
<th style="width:40%"><b>Explicación</b></th>
</tr>
</thead>
<tbody>
@@ -181,7 +174,7 @@ The `on` keyword lets you define the events that trigger when the workflow is ru
</td>
<td>
Add the `workflow_dispatch` event if you want to be able to manually run this workflow from the UI. For more information, see [`workflow_dispatch`](/actions/using-workflows/events-that-trigger-workflows#workflow_dispatch).
Add the `workflow_dispatch` event if you want to be able to manually run this workflow from the UI. Para obtener más información, consulta [`workflow_dispatch`](/actions/using-workflows/events-that-trigger-workflows#workflow_dispatch).
</td>
</tr>
<tr>
@@ -221,7 +214,7 @@ permissions:
</td>
<td>
Modifies the default permissions granted to `GITHUB_TOKEN`. This will vary depending on the needs of your workflow. For more information, see "[Assigning permissions to jobs](/actions/using-jobs/assigning-permissions-to-jobs)."
Modifica los permisos predeterminados que se otorgan al `GITHUB_TOKEN`. Esto variará dependiendo de las necesidades de tu flujo de trabajo. Para obtener más información, consulta la sección "[Asignar permisos a los jobs](/actions/using-jobs/assigning-permissions-to-jobs)".
</td>
</tr>
<tr>
@@ -260,7 +253,7 @@ jobs:
</td>
<td>
Groups together all the jobs that run in the workflow file.
Agrupa todos los jobs que se ejecutan en el archivo de flujo de trabajo.
</td>
</tr>
<tr>
@@ -311,7 +304,7 @@ Groups together all the steps that will run as part of the `check-links` job. Ea
</td>
<td>
The `uses` keyword tells the job to retrieve the action named `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio.
La palabra clave `uses` le indica al job recuperar la acción llamada `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio.
</td>
</tr>
<tr>
@@ -341,7 +334,7 @@ This step uses the `actions/setup-node` action to install the specified version
</td>
<td>
The `run` keyword tells the job to execute a command on the runner. In this case, `npm ci` is used to install the npm software packages for the project.
La palabra clave `run` le indica al job ejecutar un comando en el ejecutor. In this case, `npm ci` is used to install the npm software packages for the project.
</td>
</tr>

View File

@@ -1,13 +1,12 @@
---
title: Using the GitHub CLI on a runner
shortTitle: Using the GitHub CLI on a runner
intro: 'How to use advanced {% data variables.product.prodname_actions %} features for continuous integration (CI).'
title: Utilizar el CLI de GitHub en un ejecutor
shortTitle: Utilizar el CLI de GitHub en un ejecutor
intro: 'Cómo utilizar características avanzadas de {% data variables.product.prodname_actions %} para la integración continua (IC).'
versions:
fpt: '*'
ghes: '> 3.1'
ghae: '*'
ghec: '*'
showMiniToc: false
type: how_to
topics:
- Workflows
@@ -15,19 +14,13 @@ topics:
{% data reusables.actions.enterprise-github-hosted-runners %}
- [Resumen de ejemplo](#example-overview)
- [Características utilizadas en este ejemplo](#features-used-in-this-example)
- [Ejemplo de flujo de trabajo](#example-workflow)
- [Understanding the example](#understanding-the-example)
- [Pasos siguientes](#next-steps)
## Resumen de ejemplo
{% data reusables.actions.example-workflow-intro-ci %} When this workflow is triggered, it automatically runs a script that checks whether the {% data variables.product.prodname_dotcom %} Docs site has any broken links. If any broken links are found, the workflow uses the {% data variables.product.prodname_dotcom %} CLI to create a {% data variables.product.prodname_dotcom %} issue with the details.
{% data reusables.actions.example-workflow-intro-ci %} Cuando se activa este flujo de trabajo, este ejecuta automáticamente un script que verifica si el sitio de {% data variables.product.prodname_dotcom %} Docs tiene enlaces rotos. Si se encuentra algún enlace roto, el flujo de trabajo utiliza el CLI de {% data variables.product.prodname_dotcom %} para crear una propuesta de {% data variables.product.prodname_dotcom %} con los detalles.
{% data reusables.actions.example-diagram-intro %}
![Overview diagram of workflow steps](/assets/images/help/images/overview-actions-using-cli-ci-example.png)
![Diagrama de resumen de los pasos del flujo de trabajo](/assets/images/help/images/overview-actions-using-cli-ci-example.png)
## Características utilizadas en este ejemplo
@@ -42,7 +35,7 @@ topics:
{% data reusables.actions.secrets-table-entry %}
{% data reusables.actions.checkout-action-table-entry %}
{% data reusables.actions.setup-node-table-entry %}
| Using a third-party action: | [`peter-evans/create-issue-from-file`](https://github.com/peter-evans/create-issue-from-file)| | Running shell commands on the runner: | [`run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun) | | Running a script on the runner: | Using `script/check-english-links.js` | | Generating an output file: | Piping the output using the `>` operator | | Checking for existing issues using {% data variables.product.prodname_cli %}: | [`gh issue list`](https://cli.github.com/manual/gh_issue_list) | | Commenting on an issue using {% data variables.product.prodname_cli %}: | [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) |
| Using a third-party action: | [`peter-evans/create-issue-from-file`](https://github.com/peter-evans/create-issue-from-file)| | Running shell commands on the runner: | [`run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun) | | Running a script on the runner: | Using `script/check-english-links.js` | | Generating an output file: | Enlazar la salida utilizando el operador `>` | | Verificar si existen propuestas utilizando el {% data variables.product.prodname_cli %}: | [`gh issue list`](https://cli.github.com/manual/gh_issue_list) | | Coentar en una propuesta utilizando el {% data variables.product.prodname_cli %}: | [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) |
## Ejemplo de flujo de trabajo
@@ -50,7 +43,7 @@ topics:
{% data reusables.actions.note-understanding-example %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:70%"></th>
@@ -177,15 +170,15 @@ jobs:
</tbody>
</table>
## Understanding the example
## Cómo entender el ejemplo
{% data reusables.actions.example-explanation-table-intro %}
<table style="width:350px">
<table style="table-layout: fixed;">
<thead>
<tr>
<th style="width:60%"><b>Código</b></th>
<th style="width:40%"><b>Explanation</b></th>
<th style="width:40%"><b>Explicación</b></th>
</tr>
</thead>
<tbody>
@@ -213,10 +206,10 @@ on:
</td>
<td>
Defines the `workflow_dispatch` and `scheduled` as triggers for the workflow:
Define a `workflow_dispatch` y a `scheduled` como activadores para el flujo de trabajo:
* The `workflow_dispatch` lets you manually run this workflow from the UI. For more information, see [`workflow_dispatch`](/actions/using-workflows/events-that-trigger-workflows#workflow_dispatch).
* The `schedule` event lets you use `cron` syntax to define a regular interval for automatically triggering the workflow. For more information, see [`schedule`](/actions/reference/events-that-trigger-workflows#schedule).
* El `workflow_dispatch` te permite ejecutar manualmente este flujo de trabajo desde la IU. Para obtener más información, consulta [`workflow_dispatch`](/actions/using-workflows/events-that-trigger-workflows#workflow_dispatch).
* El evento `schedule` te permite utilizar la sintaxis de `cron` para definir un intervalo regular para activar el flujo de trabajo automáticamente. Para obtener más información, consulta [`schedule`](/actions/reference/events-that-trigger-workflows#schedule).
</td>
</tr>
<tr>
@@ -230,7 +223,7 @@ permissions:
</td>
<td>
Modifies the default permissions granted to `GITHUB_TOKEN`. This will vary depending on the needs of your workflow. For more information, see "[Assigning permissions to jobs](/actions/using-jobs/assigning-permissions-to-jobs)."
Modifica los permisos predeterminados que se otorgan al `GITHUB_TOKEN`. Esto variará dependiendo de las necesidades de tu flujo de trabajo. Para obtener más información, consulta la sección "[Asignar permisos a los jobs](/actions/using-jobs/assigning-permissions-to-jobs)".
</td>
</tr>
<tr>
@@ -242,7 +235,7 @@ jobs:
</td>
<td>
Groups together all the jobs that run in the workflow file.
Agrupa todos los jobs que se ejecutan en el archivo de flujo de trabajo.
</td>
</tr>
<tr>
@@ -255,7 +248,7 @@ Groups together all the jobs that run in the workflow file.
</td>
<td>
Defines a job with the ID `check_all_english_links`, and the name `Check all links`, that is stored within the `jobs` key.
Define un job con la ID `check_all_english_links` y con el nombre `Check all links`, lo cual se almacena dentro de la clave `jobs`.
</td>
</tr>
<tr>
@@ -267,7 +260,7 @@ if: github.repository == 'github/docs-internal'
</td>
<td>
Only run the `check_all_english_links` job if the repository is named `docs-internal` and is within the `github` organization. Otherwise, the job is marked as _skipped_.
Solo ejecuta el job `check_all_english_links` si el repositorio se llama `docs-internal` y se encuentra dentro de la organización `github`. De otra forma, el job se marca como _skipped_.
</td>
</tr>
<tr>
@@ -279,7 +272,7 @@ runs-on: ubuntu-latest
</td>
<td>
Configura el job para ejecutarse en un ejecutor Ubuntu Linux. This means that the job will execute on a fresh virtual machine hosted by {% data variables.product.prodname_dotcom %}. For syntax examples using other runners, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on)."
Configura el job para ejecutarse en un ejecutor Ubuntu Linux. Esto significa que el job se ejecutará en una máquina virtual nueva hospedada en {% data variables.product.prodname_dotcom %}. Para obtener ejemplos de sintaxis utilizando otros ejecutores, consulta la sección "[Sintaxis de flujo de trabajo para las {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on)".
</td>
</tr>
<tr>
@@ -295,7 +288,7 @@ Configura el job para ejecutarse en un ejecutor Ubuntu Linux. This means that th
</td>
<td>
Creates custom environment variables, and redefines the built-in `GITHUB_TOKEN` variable to use a custom [secret](/actions/security-guides/encrypted-secrets). These variables will be referenced later in the workflow.
Crea variables de ambiente personalizadas y redefine la variable integrada `GITHUB_TOKEN` para utilizar un [secret] personalizado(/actions/security-guides/encrypted-secrets). Estas variables se referenciarán más adelante en el flujo de trabajo.
</td>
</tr>
<tr>
@@ -307,7 +300,7 @@ Creates custom environment variables, and redefines the built-in `GITHUB_TOKEN`
</td>
<td>
Groups together all the steps that will run as part of the `check_all_english_links` job. Each job in the workflow has its own `steps` section.
Agrupa todos los pasos que se ejecutarán como parte del job `check_all_english_links`. Cada job en el flujo de trabajo tiene su propia sección de `steps`.
</td>
</tr>
<tr>
@@ -320,7 +313,7 @@ Groups together all the steps that will run as part of the `check_all_english_li
</td>
<td>
The `uses` keyword tells the job to retrieve the action named `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio.
La palabra clave `uses` le indica al job recuperar la acción llamada `actions/checkout`. Esta es una acción que revisa tu repositorio y lo descarga al ejecutor, lo que te permite ejecutar acciones contra tu código (tales como las herramientas de prueba). Debes utilizar la acción de verificación cada que tu flujo de trabajo se ejecute contra el código del repositorio o cada que estés utilizando una acción definida en el repositorio.
</td>
</tr>
<tr>
@@ -336,7 +329,7 @@ The `uses` keyword tells the job to retrieve the action named `actions/checkout`
</td>
<td>
This step uses the `actions/setup-node` action to install the specified version of the `node` software package on the runner, which gives you access to the `npm` command.
Este paso utiliza la acción `actions/setup-node` para instalar la versión especificada del paquete de software `node` en el ejecutor, lo cuál te da acceso al comando `npm`.
</td>
</tr>
<tr>
@@ -351,7 +344,7 @@ This step uses the `actions/setup-node` action to install the specified version
</td>
<td>
The `run` keyword tells the job to execute a command on the runner. In this case, the `npm ci` and `npm run build` commands are run as separate steps to install and build the Node.js application in the repository.
La palabra clave `run` le indica al job ejecutar un comando en el ejecutor. En este caso, los comandos `npm ci` y `npm run build` se ejecutan como pasos separados para instalar y compilar la aplicación de Node.js en el repositorio.
</td>
</tr>
<tr>
@@ -365,7 +358,7 @@ The `run` keyword tells the job to execute a command on the runner. In this case
</td>
<td>
This `run` command executes a script that is stored in the repository at `script/check-english-links.js`, and pipes the output to a file called `broken_links.md`.
Este comando de `run` ejecuta un script que se almacena en el repositorio en `script/check-english-links.js` y enlaza la salida con un archivo llamado `broken_links.md`.
</td>
</tr>
<tr>
@@ -380,7 +373,7 @@ This `run` command executes a script that is stored in the repository at `script
</td>
<td>
If the `check-english-links.js` script detects broken links and returns a non-zero (failure) exit status, then use a [workflow command](/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter) to set an output that has the value of the first line of the `broken_links.md` file (this is used the next step).
Si el script `check-english-links.js` detecta enlaces rotos y se devuelve a un estado de salida no-cero (falla), entonces utiliza un [comando de flujo de trabajo](/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter) para configurar una salida que tiene el valor de la primera línea del archivo `broken_links.md` (este se utiliza en el siguiente paso).
</td>
</tr>
<tr>
@@ -402,7 +395,7 @@ If the `check-english-links.js` script detects broken links and returns a non-ze
</td>
<td>
Uses the `peter-evans/create-issue-from-file` action to create a new {% data variables.product.prodname_dotcom %} issue. This example is pinned to a specific version of the action, using the `b4f9ee0a9d4abbfc6986601d9b1a4f8f8e74c77e` SHA.
Utiliza la acción `peter-evans/create-issue-from-file` para crear una propuesta nueva de {% data variables.product.prodname_dotcom %}. Este ejemplo está fijado a una versión específica de la acción, utilizando el SHA `b4f9ee0a9d4abbfc6986601d9b1a4f8f8e74c77e`.
</td>
</tr>
<tr>
@@ -430,9 +423,9 @@ Uses the `peter-evans/create-issue-from-file` action to create a new {% data var
</td>
<td>
Uses [`gh issue list`](https://cli.github.com/manual/gh_issue_list) to locate the previously created issue from earlier runs. This is [aliased](https://cli.github.com/manual/gh_alias_set) to `gh list-reports` for simpler processing in later steps. To get the issue URL, the `jq` expression processes the resulting JSON output.
Utiliza [`gh issue list`](https://cli.github.com/manual/gh_issue_list) para ubicar la propuesta que se creó anteriormente a partir de ejecuciones anteriores. Esto se pone en [aliased](https://cli.github.com/manual/gh_alias_set) como `gh list-reports` para procesarse de forma más simple en pasos subsecuentes. Para obtener la URL de la propuesta, la expresión `jq` procesa la salida JSON resultante.
[`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) is then used to add a comment to the new issue that links to the previous one.
Entonces se utiliza [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) para agregar un comentario a la propuesta nueva que enlaza a la anterior.
</td>
</tr>
<tr>
@@ -450,7 +443,7 @@ Uses [`gh issue list`](https://cli.github.com/manual/gh_issue_list) to locate th
</td>
<td>
If an issue from a previous run is open and assigned to someone, then use [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) to add a comment with a link to the new issue.
Si se abre una propuesta de una ejecución anterior y se le asigna a alguien, utiliza entonces [`gh issue comment`] (https://cli.github.com/manual/gh_issue_comment) para agregar un comentario con un enlace a la propuesta nueva.
</td>
</tr>
<tr>
@@ -471,11 +464,11 @@ If an issue from a previous run is open and assigned to someone, then use [`gh i
</td>
<td>
If an issue from a previous run is open and is not assigned to anyone, then:
Si la propuesta de una ejecución previa está abierta y no está asignada a nadie, entonces:
* Use [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) to add a comment with a link to the new issue.
* Use [`gh issue close`](https://cli.github.com/manual/gh_issue_close) to close the old issue.
* Use [`gh issue edit`](https://cli.github.com/manual/gh_issue_edit) to edit the old issue to remove it from a specific {% data variables.product.prodname_dotcom %} project board.
* Utiliza [`gh issue comment`](https://cli.github.com/manual/gh_issue_comment) para agregar un comentario con un enlace a la propuesta nueva.
* Utiliza [`gh issue close`](https://cli.github.com/manual/gh_issue_close) para cerrar la propuesta antigua.
* Utiliza [`gh issue edit`](https://cli.github.com/manual/gh_issue_edit) para editar la propuesta antigua para eliminarla de un tablero de proyecto de {% data variables.product.prodname_dotcom %} específico.
</td>
</tr>
</tbody>

View File

@@ -63,9 +63,9 @@ The `prepare_job` command is called when a job is started. {% data variables.pro
- `targetVolumePath`: **Required**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Required**. Determines whether or not the mount should be read-only.
- `systemMountVolumes`: **Required**. An array of mounts to mount into the container, same fields as above.
- `sourceVolumePath`: **Required**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Required**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Required**. Determines whether or not the mount should be read-only.
- `sourceVolumePath`: **Requerido**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Requerido**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Opcional**. Determines whether or not the mount should be read-only.
- `registro` **Optional**. The Docker registry credentials for a private container registry.
- `username`: **Optional**. The username of the registry account.
- `password`: **Optional**. The password to the registry account.
@@ -73,18 +73,18 @@ The `prepare_job` command is called when a job is started. {% data variables.pro
- `portMappings`: **Optional**. A key value hash of _source:target_ ports to map into the container.
- `services`: **Optional**. An array of service containers to spin up.
- `contextName`: **Required**. The name of the service in the Job context.
- `image`: **Required**. A string containing the Docker image.
- `createOptions`: **Optional**. The optional _create_ options specified in the YAML. For more information, see "[Example: Running a job within a container](/actions/using-jobs/running-jobs-in-a-container#example-running-a-job-within-a-container)."
- `environmentVariables`: **Optional**. Sets a map of key environment variables.
- `image`: **Opcional**. A string containing the Docker image.
- `createOptions`: **Opcional**. The optional _create_ options specified in the YAML. For more information, see "[Example: Running a job within a container](/actions/using-jobs/running-jobs-in-a-container#example-running-a-job-within-a-container)."
- `environmentVariables`: **Opcional**. Sets a map of key environment variables.
- `userMountVolumes`: **Optional**. An array of mounts to mount into the container, same fields as above.
- `sourceVolumePath`: **Required**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Required**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Required**. Determines whether or not the mount should be read-only.
- `sourceVolumePath`: **Requerido**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Requerido**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Opcional**. Determines whether or not the mount should be read-only.
- `registro` **Optional**. The Docker registry credentials for the private container registry.
- `username`: **Optional**. The username of the registry account.
- `password`: **Optional**. The password to the registry account.
- `serverUrl`: **Optional**. The registry URL.
- `portMappings`: **Optional**. A key value hash of _source:target_ ports to map into the container.
- `password`: **Opcional**. The password to the registry account.
- `serverUrl`: **Opcional**. The registry URL.
- `portMappings`: **Opcional**. A key value hash of _source:target_ ports to map into the container.
#### Example input
@@ -254,22 +254,22 @@ The `run_container_step` command is called once for each container action in you
- `entryPointArgs`: **Optional**. A list containing the entry point args.
- `entryPoint`: **Optional**. The container entry point to use if the default image entrypoint should be overwritten.
- `workingDirectory`: **Required**. A string containing the absolute path of the working directory.
- `createOptions`: **Optional**. The optional _create_ options specified in the YAML. For more information, see "[Example: Running a job within a container](/actions/using-jobs/running-jobs-in-a-container#example-running-a-job-within-a-container)."
- `environmentVariables`: **Optional**. Sets a map of key environment variables.
- `createOptions`: **Opcional**. The optional _create_ options specified in the YAML. For more information, see "[Example: Running a job within a container](/actions/using-jobs/running-jobs-in-a-container#example-running-a-job-within-a-container)."
- `environmentVariables`: **Opcional**. Sets a map of key environment variables.
- `prependPath`: **Optional**. An array of additional paths to prepend to the `$PATH` variable.
- `userMountVolumes`: **Optional**. an array of user mount volumes set in the YAML. For more information, see "[Example: Running a job within a container](/actions/using-jobs/running-jobs-in-a-container#example-running-a-job-within-a-container)."
- `sourceVolumePath`: **Required**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Required**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Required**. Determines whether or not the mount should be read-only.
- `systemMountVolumes`: **Required**. An array of mounts to mount into the container, using the same fields as above.
- `sourceVolumePath`: **Required**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Required**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Required**. Determines whether or not the mount should be read-only.
- `sourceVolumePath`: **Requerido**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Requerido**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Requerido**. Determines whether or not the mount should be read-only.
- `systemMountVolumes`: **Requerido**. An array of mounts to mount into the container, using the same fields as above.
- `sourceVolumePath`: **Requerido**. The source path to the volume that will be mounted into the Docker container.
- `targetVolumePath`: **Requerido**. The target path to the volume that will be mounted into the Docker container.
- `readOnly`: **Requerido**. Determines whether or not the mount should be read-only.
- `registro` **Optional**. The Docker registry credentials for a private container registry.
- `username`: **Optional**. The username of the registry account.
- `password`: **Optional**. The password to the registry account.
- `serverUrl`: **Optional**. The registry URL.
- `portMappings`: **Optional**. A key value hash of the _source:target_ ports to map into the container.
- `password`: **Opcional**. The password to the registry account.
- `serverUrl`: **Opcional**. The registry URL.
- `portMappings`: **Opcional**. A key value hash of the _source:target_ ports to map into the container.
#### Example input for image
@@ -436,11 +436,11 @@ No output is expected for `run_container_step`.
#### Argumentos
- `entryPointArgs`: **Optional**. A list containing the entry point arguments.
- `entryPoint`: **Optional**. The container entry point to use if the default image entrypoint should be overwritten.
- `prependPath`: **Optional**. An array of additional paths to prepend to the `$PATH` variable.
- `entryPointArgs`: **Opcional**. A list containing the entry point arguments.
- `entryPoint`: **Opcional**. The container entry point to use if the default image entrypoint should be overwritten.
- `prependPath`: **Opcional**. An array of additional paths to prepend to the `$PATH` variable.
- `workingDirectory`: **Required**. A string containing the absolute path of the working directory.
- `environmentVariables`: **Optional**. Sets a map of key environment variables.
- `environmentVariables`: **Opcional**. Sets a map of key environment variables.
#### Example input

View File

@@ -57,6 +57,12 @@ Hay algunos límites de uso de {% data variables.product.prodname_actions %} cua
| Pro | 40 | 5 |
| Team | 60 | 5 |
| Empresa | 180 | 50 |
{% note %}
**Note:** If required, customers on enterprise plans can request a higher limit for concurrent jobs. For more information, contact {% data variables.contact.contact_ent_support %} or your sales representative.
{% endnote %}
- **Matiz de jobs** - {% data reusables.actions.usage-matrix-limits %}
{% data reusables.actions.usage-workflow-queue-limits %}
@@ -75,7 +81,7 @@ Además de los límites de uso, debes asegurarte de usar las {% data variables.p
{% data reusables.actions.reusable-workflows-ghes-beta %}
Si reutilizas un flujo de trabajo, la facturación siempre se asociará con el flujo de trabajo llamante. La asignación de los ejecutores hospedados en {% data variables.product.prodname_dotcom %} siempre se evalúa utilizando únicamente el contexto del llamador. El llamador no puede utilizar ejecutores hospedados en {% data variables.product.prodname_dotcom %} desde el repositorio llamado.
Si vuelves a utilizar un flujo de trabajo la facturación siempre se asociará con aquél del que llama. La asignación de los ejecutores hospedados en {% data variables.product.prodname_dotcom %} siempre se evalúa utilizando únicamente el contexto del llamador. El llamador no puede utilizar ejecutores hospedados en {% data variables.product.prodname_dotcom %} desde el repositorio llamado.
Para obtener más información, consulta la sección "[Reutilizar los flujos de trabajo](/actions/learn-github-actions/reusing-workflows)".
{% endif %}
@@ -103,7 +109,7 @@ Para obtener más información, consulta:
## Inhabilitar y habilitar flujos de trabajo
Puedes habilitar e inhabilitar flujos de trabajo independientes en tu repositorio de {% data variables.product.prodname_dotcom %}.
Puedes habilitar e inhabilitar flujos de trabajo independientes en tu repositorio en {% data variables.product.prodname_dotcom %}.
{% data reusables.actions.scheduled-workflows-disabled %}

View File

@@ -96,7 +96,7 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Publish package
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: publish
env:
@@ -167,7 +167,7 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Publish package
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: publish
env:
@@ -246,7 +246,7 @@ jobs:
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b
- name: Publish package
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: publish
env: {% raw %}

View File

@@ -286,17 +286,17 @@ Un flujo de trabajo que se haya creado en un repositorio puede acceder a la sigu
Los secretos tienen un tamaño máximo de 64 KB. Para almacenar los secretos más grandes, consulta la solución alternativa "[Almacenar secretos grandes](#storing-large-secrets)" debajo.
### Storing large secrets
### Almacenar secretos grandes
To use secrets that are larger than 64 KB, you can use a workaround to store encrypted secrets in your repository and save the decryption passphrase as a secret on {% data variables.product.prodname_dotcom %}. For example, you can use `gpg` to encrypt a file containing your secret locally before checking the encrypted file in to your repository on {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta la página del manual "[gpg](https://www.gnupg.org/gph/de/manual/r1023.html)".
Para utilizar secretos mayores a 64 KB, puedes utilizar un modo alterno para almacenar secretos cifrados en tu repositorio y guardar la frase de ingreso de descifrado como secreto en {% data variables.product.prodname_dotcom %}. Por ejemplo, puedes utilizar `gpg` para cifrar un archivo que contiene tu secreto localmente antes de verificar el archivo cifrado en tu repositorio de {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta la página del manual "[gpg](https://www.gnupg.org/gph/de/manual/r1023.html)".
{% warning %}
**Warning**: Be careful that your secrets do not get printed when your workflow runs. Cuando usas esta solución, {% data variables.product.prodname_dotcom %} no redacta los secretos que están impresos en los registros.
**Advertencia**: Ten cuidado de que tus secretos no se impriman cuando se ejecuta tu flujo de trabajo. Cuando usas esta solución, {% data variables.product.prodname_dotcom %} no redacta los secretos que están impresos en los registros.
{% endwarning %}
1. Run the following command from your terminal to encrypt the file containing your secret using `gpg` and the AES256 cipher algorithm. In this example, `my_secret.json` is the file containing the secret.
1. Ejecuta el siguiente comando desde tu terminal para cifrar el archivo que contiene tu secreto utilizando `gpg` y el algoritmo de cifrado AES256. En este ejemplo, `my_secret.json` es el archivo que contiene el secreto.
```bash
gpg --symmetric --cipher-algo AES256 my_secret.json
@@ -304,13 +304,13 @@ To use secrets that are larger than 64 KB, you can use a workaround to store enc
1. Se te pedirá que ingreses una contraseña. Recuerda la contraseña, porque deberás crear un nuevo secreto en {% data variables.product.prodname_dotcom %} que use esa contraseña como valor.
1. Crear un nuevo secreto que contiene la frase de acceso. For example, create a new secret with the name `LARGE_SECRET_PASSPHRASE` and set the value of the secret to the passphrase you used in the step above.
1. Crear un nuevo secreto que contiene la frase de acceso. Por ejemplo, crea un secreto nuevo con el nombre `LARGE_SECRET_PASSPHRASE` y configura su valor con la frase de ingreso que utilizaste en el paso anterior.
1. Copy your encrypted file to a path in your repository and commit it. En este ejemplo, el archivo cifrado es `my_secret.json.gpg`.
1. Copia tu archivo cifrado a una ruta en tu repositorio y confírmalo. En este ejemplo, el archivo cifrado es `my_secret.json.gpg`.
{% warning %}
**Warning**: Make sure to copy the encrypted `my_secret.json.gpg` file ending with the `.gpg` file extension, and **not** the unencrypted `my_secret.json` file.
**Advertencia**: Asegúrate de copiar la terminación cifrada del archivo `my_secret.json.gpg` con la extensión de archivo `.gpg` y **no** el archivo `my_secret.json` sin cifrar.
{% endwarning %}
@@ -319,7 +319,7 @@ To use secrets that are larger than 64 KB, you can use a workaround to store enc
git commit -m "Add new encrypted secret JSON file"
```
1. Create a shell script in your repository to decrypt the secret file. In this example, the script is named `decrypt_secret.sh`.
1. Crea un script de shell en tu repositorio para descifrar el archivo del secreto. En este ejemplo, el script se nombra `decrypt_secret.sh`.
```bash
#!/bin/sh
@@ -341,7 +341,7 @@ To use secrets that are larger than 64 KB, you can use a workaround to store enc
git push
```
1. In your {% data variables.product.prodname_actions %} workflow, use a `step` to call the shell script and decrypt the secret. Para tener una copia de tu repositorio en el entorno en el que se ejecuta tu flujo de trabajo, deberás usar la acción [`code>actions/checkout`](https://github.com/actions/checkout). Haz referencia a tu shell script usando el comando `run` relacionado con la raíz de tu repositorio.
1. En tu flujo de trabajo de {% data variables.product.prodname_actions %}, utiliza un `step` para llamar al script del shell y descifrar el secreto. Para tener una copia de tu repositorio en el entorno en el que se ejecuta tu flujo de trabajo, deberás usar la acción [`code>actions/checkout`](https://github.com/actions/checkout). Haz referencia a tu shell script usando el comando `run` relacionado con la raíz de tu repositorio.
```yaml
name: Workflows with large secrets

View File

@@ -202,11 +202,11 @@ El mismo principio que se describió anteriormente para utilizar acciones de ter
{% endif %}
{% ifversion allow-actions-to-approve-pr %}
## Preventing {% data variables.product.prodname_actions %} from {% ifversion allow-actions-to-approve-pr-with-ent-repo %}creating or {% endif %}approving pull requests
## Prevenir que {% data variables.product.prodname_actions %} {% ifversion allow-actions-to-approve-pr-with-ent-repo %}cree o {% endif %} apruebe solicitudes de cambio
{% data reusables.actions.workflow-pr-approval-permissions-intro %} Allowing workflows, or any other automation, to {% ifversion allow-actions-to-approve-pr-with-ent-repo %}create or {% endif %}approve pull requests could be a security risk if the pull request is merged without proper oversight.
{% data reusables.actions.workflow-pr-approval-permissions-intro %} El permitir que los flujos de trabajo, o cualquier otro tipo de automatización, {% ifversion allow-actions-to-approve-pr-with-ent-repo %}cree o {% endif %}apruebe solicitudes de cambios podría ser un riesgo de seguridad si la solicitud de cambios se fusiona sin una supervisión adecuada.
For more information on how to configure this setting, see {% ifversion allow-actions-to-approve-pr-with-ent-repo %}{% ifversion ghes or ghec or ghae %}"[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#preventing-github-actions-from-creating-or-approving-pull-requests)",{% endif %}{% endif %} "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization#preventing-github-actions-from-{% ifversion allow-actions-to-approve-pr-with-ent-repo %}creating-or-{% endif %}approving-pull-requests)"{% ifversion allow-actions-to-approve-pr-with-ent-repo %}, and "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#preventing-github-actions-from-creating-or-approving-pull-requests)"{% endif %}.
Para obtener más información sobre cómo configurar este ajuste, consulta las secciones {% ifversion allow-actions-to-approve-pr-with-ent-repo %}{% ifversion ghes or ghec or ghae %}"[Requerir políticas para {% data variables.product.prodname_actions %} en tu empresa](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#preventing-github-actions-from-creating-or-approving-pull-requests)",{% endif %}{% endif %} "[Inhabilitar o limitar las {% data variables.product.prodname_actions %} en tu organización](/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization#preventing-github-actions-from-{% ifversion allow-actions-to-approve-pr-with-ent-repo %}creating-or-{% endif %}approving-pull-requests)"{% ifversion allow-actions-to-approve-pr-with-ent-repo %} y "[Administrar los ajustes de {% data variables.product.prodname_actions %} en un repositorio](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#preventing-github-actions-from-creating-or-approving-pull-requests)"{% endif %}.
{% endif %}
## Utilizar las tarjetas de puntuación para asegurar los flujos de trabajo
@@ -279,7 +279,7 @@ Los ejecutores **hospedados en {% data variables.product.prodname_dotcom %}** ej
{% ifversion fpt or ghec %}Como resultado, los ejecutores auto-hospedados no deberán [utilizarse casi nunca para repositorios públicos](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories) en {% data variables.product.product_name %}, ya que cualquier usuario puede abrir solicitudes de extracción contra este repositorio y poner en riesgo el ambiente. De forma similar, ten{% elsif ghes or ghae %}Ten{% endif %} cuidado al utilizar ejecutores auto-hospedados en repositorios privados o internos, ya que cualquiera que pueda bifurcar el repositorio y abrir una solicitud de cambios (habitualmente, aquellos con acceso de lectura al mismo) pueden poner en riesgo el ambiente del ejecutor auto-hospedado, incluyendo el obtener acceso a los secretos y al `GITHUB_TOKEN` que,{% ifversion fpt or ghes > 3.1 or ghae or ghec %} dependiendo de su configuración, puede otorgar{% else %} otorga{% endif %}acceso de escritura al repositorio. Aunque los flujos de trabajo pueden controlar el acceso a los secretos de ambiente utilizando ambientes y revisiones requeridas, estos flujos de trabajo no se encuentran en un ambiente aislado y aún son susceptibles a los mismos riesgos cuando se ejecutan en un ejecutor auto-hospedado.
Cuando se define un ejecutor auto-hospedado a nivel de organización o de empresa, {% data variables.product.product_name %} puede programar flujos de trabajo de repositorios múltiples en el mismo ejecutor. Como consecuencia, si se pone en riesgo la seguridad de estos ambientes, se puede ocasionar un impacto amplio. Para ayudar a reducir el alcance de esta vulneración, puedes crear límites si organizas tus ejecutores auto-hospedados en grupos separados. You can restrict what {% ifversion restrict-groups-to-workflows %}workflows, {% endif %}organizations and repositories can access runner groups. Para obtener más información, consulta la sección "[Administrar el acceso a los ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)".
Cuando se define un ejecutor auto-hospedado a nivel de organización o de empresa, {% data variables.product.product_name %} puede programar flujos de trabajo de repositorios múltiples en el mismo ejecutor. Como consecuencia, si se pone en riesgo la seguridad de estos ambientes, se puede ocasionar un impacto amplio. Para ayudar a reducir el alcance de esta vulneración, puedes crear límites si organizas tus ejecutores auto-hospedados en grupos separados. Puedes restringir a qué {% ifversion restrict-groups-to-workflows %}flujos de trabajo, {% endif %}organizaciones y repositorios pueden acceder los grupos de ejecutores. Para obtener más información, consulta la sección "[Administrar el acceso a los ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)".
También deberás considerar el ambiente de las máquinas del ejecutor auto-hospedado:
- ¿Qué información sensible reside en la máquina configurada como el ejecutor auto-hospedado? Por ejemplo, llaves SSH privadas, tokens de acceso a la API, entre otros.

View File

@@ -88,13 +88,13 @@ While the job runs, the logs and output can be viewed in the {% data variables.p
Hardware specification for Windows and Linux virtual machines:
- 2-core CPU
- 7 GB of RAM memory
- 14 GB of SSD disk space
- 7 GB of RAM
- 14 GB of SSD space
Hardware specification for macOS virtual machines:
- 3-core CPU
- 14 GB of RAM memory
- 14 GB of SSD disk space
- 14 GB of RAM
- 14 GB of SSD space
{% data reusables.actions.supported-github-runners %}

View File

@@ -37,14 +37,19 @@ But there are various advantages too:
- You don't need to configure any firewalls, or modify the routing of your private network.
- The API gateway is stateless, and so it scales horizontally to handle high availability and high throughput.
For more information, see [a reference implementation of an API Gateway](https://github.com/github/actions-oidc-gateway-example) (note that this requires customization for your use case and is not ready-to-run as-is), and "[About security hardening with OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)".
Para obtener más información, consulta </a>una implementación de referencia de una puerta de enlace de API
(toma en cuenta que esto requiere cierto grado de personalización para tu caso de uso y no está lista para ejecutarse por sí misma) y la sección "[Acerca del fortalecimiento de seguridad con OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)". </p>
{% endif %}
### Using WireGuard to create a network overlay
If you don't want to maintain separate infrastructure for an API Gateway, you can create an overlay network between your runner and a service in your private network, by running WireGuard in both places.
There are various disadvantages to this approach:
There are various disadvantages to this approach:
- To reach WireGuard running on your private service, you will need a well-known IP address and port that your workflow can reference: this can either be a public IP address and port, a port mapping on a network gateway, or a service that dynamically updates DNS.
- WireGuard doesn't handle NAT traversal out of the box, so you'll need to identify a way to provide this service.
@@ -53,19 +58,25 @@ There are various disadvantages to this approach:
There are some advantages too, as you can run WireGuard on an existing server so you don't have to maintain separate infrastructure, and it's well supported on {% data variables.product.prodname_dotcom %}-hosted runners.
### Example: Configuring WireGuard
This example workflow configures WireGuard to connect to a private service.
For this example, the WireGuard instance running in the private network has this configuration:
- Overlay network IP address of `192.168.1.1`
- Public IP address and port of `1.2.3.4:56789`
- Public key `examplepubkey1234...`
The WireGuard instance in the {% data variables.product.prodname_actions %} runner has this configuration:
- Overlay network IP address of `192.168.1.2`
- Private key stores as an {% data variables.product.prodname_actions %} secret under `WIREGUARD_PRIVATE_KEY`
```yaml
name: WireGuard example
@@ -91,8 +102,11 @@ jobs:
- run: curl -vvv http://192.168.1.1
```
For more information, see [WireGuard's Quick Start](https://www.wireguard.com/quickstart/), as well as "[Encrypted Secrets](/actions/security-guides/encrypted-secrets)" for how to securely store keys.
### Using Tailscale to create a network overlay
Tailscale is a commercial product built on top of WireGuard. This option is very similar to WireGuard, except Tailscale is more of a complete product experience instead of an open source component.

View File

@@ -24,32 +24,13 @@ Las ejecuciones de flujo de trabajo a menudo reutilizan las mismas salidas o dep
Para almacenar las dependencias en caché para un job, puedes utilizar la {% data variables.product.prodname_dotcom %}acción de [cache`` de ](https://github.com/actions/cache). La acción crea y restablece un caché identificado con una llave única. Como alternativa, si estás almacenando los siguientes administradores de paquetes en caché, el utilizar sus acciones respectivas de setup-* requiere de una configuración mínima y creará y restablecerá los cachés de dependencia para ti.
<table>
<thead>
<tr>
<th>Administradores de paquetes</th>
<th>acción de setup-* para almacenar en caché</th>
</tr>
</thead>
<tbody>
<tr>
<td>npm, yarn, pnpm</td>
<td><a href="https://github.com/actions/setup-node#caching-global-packages-data">setup-node</a></td>
</tr>
<tr>
<td>pip, pipenv, poetry</td>
<td><a href="https://github.com/actions/setup-python#caching-packages-dependencies">setup-python</a></td>
</tr>
<tr>
<td>gradle, maven</td>
<td><a href="https://github.com/actions/setup-java#caching-packages-dependencies">setup-java</a></td>
</tr>
<tr>
<td>ruby gems</td>
<td><a href="https://github.com/ruby/setup-ruby#caching-bundle-install-automatically">setup-ruby</a></td>
</tr>
</tbody>
</table>
| Administradores de paquetes | acción de setup-* para almacenar en caché |
| --------------------------- | ------------------------------------------------------------------------------------------ |
| npm, Yarn, pnpm | [setup-node](https://github.com/actions/setup-node#caching-global-packages-data) |
| pip, pipenv, Poetry | [setup-python](https://github.com/actions/setup-python#caching-packages-dependencies) |
| Gradle, Maven | [setup-java](https://github.com/actions/setup-java#caching-packages-dependencies) |
| RubyGems | [setup-ruby](https://github.com/ruby/setup-ruby#caching-bundle-install-automatically) |
| Go `go.sum` | [setup-go](https://github.com/actions/setup-go#caching-dependency-files-and-build-outputs) |
{% warning %}
@@ -257,7 +238,7 @@ Por ejemplo, si una solicitud de cambios contiene una rama de `feature` y apunta
## Límites de uso y política de desalojo
{% data variables.product.prodname_dotcom %} eliminará todas las entradas de caché a las que no se haya accedido en más de 7 días. There is no limit on the number of caches you can store, but the total size of all caches in a repository is limited{% ifversion actions-cache-policy-apis %}. Predeterminadamente, el límite es de 10 GB por repositorio, pero este límite podría ser diferente dependiendo de las políticas que configuren tus propietarios de empresa o administradores de repositorio.{% else %} a 10 GB.{% endif %}
{% data variables.product.prodname_dotcom %} eliminará todas las entradas de caché a las que no se haya accedido en más de 7 días. No hay límite en la cantidad de cachés que puedes almacenar, pero el tamaño total de todos ellos en un repositorio se limita{% ifversion actions-cache-policy-apis %}. Predeterminadamente, el límite es de 10 GB por repositorio, pero este límite podría ser diferente dependiendo de las políticas que configuren tus propietarios de empresa o administradores de repositorio.{% else %} a 10 GB.{% endif %}
{% data reusables.actions.cache-eviction-process %}
@@ -269,6 +250,6 @@ Para obtener más información sobre cómo cambiar las políticas del límite de
## Administrar los cachés
Puedes utilizar la API de REST de {% data variables.product.product_name %} para administrar tus cachés. En la actualidad, puedes utilizar la API para ver tu uso de caché y esperamos tener más funcionalidades en las siguientes actualizaciones. Para obtener más información, consulta la sección "[Acciones](/rest/reference/actions#cache)" en la documentación de la API de REST.
Puedes utilizar la API de REST de {% data variables.product.product_name %} para administrar tus cachés. {% ifversion actions-cache-list-delete-apis %}You can use the API to list and delete cache entries, and see your cache usage.{% elsif actions-cache-management %}At present, you can use the API to see your cache usage, with more functionality expected in future updates.{% endif %} For more information, see the "[{% data variables.product.prodname_actions %} Cache](/rest/actions/cache)" REST API documentation.
{% endif %}

View File

@@ -569,17 +569,17 @@ on:
{% note %}
**Nota:** Los flujos de trabajo no se ejecutarán en la actividad de `pull_request` si la solicitud de cambios tiene un conflicto de fusión. The merge conflict must be resolved first.
**Nota:** Los flujos de trabajo no se ejecutarán en la actividad de `pull_request` si la solicitud de cambios tiene un conflicto de fusión. El conflicto de fusión se debe resolver primero.
Conversely, workflows with the `pull_request_target` event will run even if the pull request has a merge conflict. Before using the `pull_request_target` trigger, you should be aware of the security risks. For more information, see [`pull_request_target`](#pull_request_target).
Por el contrario, los flujos de trabajo con el evento `pull_request_target` se ejecutarán incluso si la solicitud de cambios presenta un conflicto de fusión. Antes de utilizar el activador `pull_request_target`, deberás estar consciente de los riesgos de seguridad. Para obtener más información, consulta la sección [`pull_request_target`](#pull_request_target).
{% endnote %}
Runs your workflow when activity on a pull request in the workflow's repository occurs. For example, if no activity types are specified, the workflow runs when a pull request is opened or reopened or when the head branch of the pull request is updated. For activity related to pull request reviews, pull request review comments, or pull request comments, use the [`pull_request_review`](#pull_request_review), [`pull_request_review_comment`](#pull_request_review_comment), or [`issue_comment`](#issue_comment) events instead. For information about the pull request APIs, see "[PullRequest](/graphql/reference/objects#pullrequest)" in the GraphQL API documentation or "[Pull requests](/rest/reference/pulls)" in the REST API documentation.
Ejecuta tu flujo de trabajo cuando ocurre alguna actividad en la solicitud de cambios del flujo de trabajo del repositorio. Por ejemplo, si no se especifican tipos de actividad, el flujo de trabajo se ejecutará cuando se abra o vuelva a abrir una solicitud de cambios o cuando se actualice la rama de encabezado de la misma. Para encontrar actividad relacionada con las revisiones, comentarios de revisión o comentarios de las solicitudes de cambios, utiliza los eventos [`pull_request_review`](#pull_request_review), [`pull_request_review_comment`](#pull_request_review_comment) o [`issue_comment`](#issue_comment) en su lugar. Para obtener más información sobre las API de solicitud de cambios, consulta la sección "[PullRequest](/graphql/reference/objects#pullrequest)" en la documentación de la API de GraphQL o "[Solicitudes de cambios](/rest/reference/pulls)" en la documentación de la API de REST.
Note that `GITHUB_SHA` for this event is the last merge commit of the pull request merge branch. If you want to get the commit ID for the last commit to the head branch of the pull request, use `github.event.pull_request.head.sha` instead.
Nota que el `GITHUB_SHA` para este evento es la última confirmación de fusión de la rama fusionada de la solicitud de cambios. Si quieres obtener la ID de confirmación para la última confirmación de la rama de encabezado de la solicitud de cambios, utiliza `github.event.pull_request.head.sha` en su lugar.
For example, you can run a workflow when a pull request has been opened or reopened.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se haya abierto o vuelto a abrir una solicitud de cambios.
```yaml
on:
@@ -587,7 +587,7 @@ on:
types: [opened, reopened]
```
You can use the event context to further control when jobs in your workflow will run. For example, this workflow will run when a review is requested on a pull request, but the `specific_review_requested` job will only run when a review by `octo-team` is requested.
Puedes utilizar el contexto del evento para controlar aún más cuándo se ejecutarán los jobs en tu flujo de trabajo. Por ejemplo, este flujo de trabajo se ejecutará cuando se solicite una revisión en una solicitud de cambios, pero el job `specific_review_requested` solo se ejecutará cuando se solicite una revisión de `octo-team`.
```yaml
on:
@@ -603,9 +603,9 @@ jobs:
#### Ejecutar tu flujo de trabajo con base en la rama base o de encabezado de una solicitud de cambios.
You can use the `branches` or `branches-ignore` filter to configure your workflow to only run on pull requests that target specific branches. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpull_requestpull_request_targetbranchesbranches-ignore)."
Puedes utilizar el filtro `branches` o `branches-ignore` para configurar tu flujo de trabajo para que solo se ejecute en solicitudes de cambio que apunten a ramas específicas. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpull_requestpull_request_targetbranchesbranches-ignore)".
For example, this workflow will run when someone opens a pull request that targets a branch whose name starts with `releases/`:
Por ejemplo, este flujo de trabajo se ejecutará cuando alguien vuelva a abrir una solicitud de cambios que apunte a una rama cuyo nombre inicie con `releases/`:
```yaml
on:
@@ -633,7 +633,7 @@ on:
{% endnote %}
To run a job based on the pull request's head branch name (as opposed to the pull request's base branch name), use the `github.head_ref` context in a conditional. For example, this workflow will run whenever a pull request is opened, but the `run_if` job will only execute if the head of the pull request is a branch whose name starts with `releases/`:
Para ejecutar un job con base en el nombre de la rama de encabezado de la solicitud de cambios (contrario al nombre de la rama base de dicha solicitud de cambios), utiliza el contexto `github.head_ref` en un condicional. Por ejemplo, este flujo de trabajo se ejecutará cada que se abra una solicitud de cambios, pero el job `run_if` solo se ejecutará si el encabezado de la solicitud de cambios es una rama cuyo nombre inicie con `releases/`:
```yaml
on:
@@ -650,9 +650,9 @@ jobs:
#### Ejecutar tu flujo de trabajo con base en los archivos que cambiaron en una solicitud de cambios
You can also configure your workflow to run when a pull request changes specific files. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
También puedes configurar tu flujo de trabajo para que se ejecute cuando una solicitud de cambios cambie archivos específicos. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)".
For example, this workflow will run when a pull request includes a change to a JavaScript file (`.js`):
Por ejemplo, este flujo de trabajo se ejecutará cuando una solicitud de cambios incluya un cambio en un archivo de JavaScript (`.js`):
```yaml
on:
@@ -680,7 +680,7 @@ on:
#### Ejecutar tu flujo de trabajo cuando se fusiona una solicitud de cambios
When a pull request merges, the pull request is automatically closed. To run a workflow when a pull request merges, use the `pull_request` `closed` event type along with a conditional that checks the `merged` value of the event. For example, the following workflow will run whenever a pull request closes. The `if_merged` job will only run if the pull request was also merged.
Cuando se fusiona una solicitud de cambios, esta se cierra automáticamente. Para ejecutar un flujo de trabajo cuando se fusiona una solicitud de cambios, utiliza el tipo de evento `pull_request` `closed` junto con una condicional que verifique el valor `merged` del mismo. Por ejemplo, el siguiente flujo de trabajo se ejecutará cada que se cierre una solicitud de cambios. El job `if_merged` solo se ejecutará si la solicitud de cambios también se fusionó.
```yaml
on:
@@ -701,7 +701,7 @@ jobs:
### `pull_request_comment` (utiliza `issue_comment`)
To run your workflow when a comment on a pull request (not on a pull request's diff) is created, edited, or deleted, use the [`issue_comment`](#issue_comment) event. For activity related to pull request reviews or pull request review comments, use the [`pull_request_review`](#pull_request_review) or [`pull_request_review_comment`](#pull_request_review_comment) events.
Para ejecutar tu flujo de trabajo cuando se crea, edita o borra un comentario en una solicitud de cambios (no así en un diff de esta), utiliza el evento [`issue_comment`](#issue_comment). Para encontrar actividad relacionada con las revisiones de solicitudes de cambios o comentarios de revisión de estas, utiliza los eventos [`pull_request_review`](#pull_request_review) o [`pull_request_review_comment`](#pull_request_review_comment).
### `revisión_solicitud de extracción`
@@ -711,13 +711,13 @@ To run your workflow when a comment on a pull request (not on a pull request's d
{% note %}
**Note**: {% data reusables.developer-site.multiple_activity_types %} For information about each activity type, see "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_review)." {% data reusables.developer-site.limit_workflow_to_activity_types %}
**Nota**: {% data reusables.developer-site.multiple_activity_types %} para obtener más información acerca de cada tipo de actividad, consulta la sección "[Cargas útiles y eventos de webhook](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_review)". {% data reusables.developer-site.limit_workflow_to_activity_types %}
{% endnote %}
Runs your workflow when a pull request review is submitted, edited, or dismissed. A pull request review is a group of pull request review comments in addition to a body comment and a state. For activity related to pull request review comments or pull request comments, use the [`pull_request_review_comment`](#pull_request_review_comment) or [`issue_comment`](#issue_comment) events instead. For information about the pull request review APIs, see "[PullRequestReview](/graphql/reference/objects#pullrequest)" in the GraphQL API documentation or "[Pull request reviews](/rest/reference/pulls#reviews)" in the REST API documentation.
Ejecuta tu flujo de trabajo cuando se emite, edita o descarta una revisión de una solicitud de cambios. Una revisión de solicitud de cambios es un grupo de comentarios de dicha revisión junto con un comentario del cuerpo y un estado. Para encontrar actividad relacionada con los comentarios de revisión de solicitudes de cambio o comentarios de solicitudes de cambios, utiliza los eventos [`pull_request_review_comment`](#pull_request_review_comment) o [`issue_comment`](#issue_comment) en su lugar. Para obtener más información acerca de las API de revisión de solicitudes de cambio, consulta la sección "[PullRequestReview](/graphql/reference/objects#pullrequest)" en la documentación de la API de GraphQL o "[Revisiones de solicitudes de cambio](/rest/reference/pulls#reviews)" en la documentación de la API de REST.
For example, you can run a workflow when a pull request review has been `edited` or `dismissed`.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una revisión de solicitud de cambios está como `edited` o `dismissed`.
```yaml
on:
@@ -727,7 +727,7 @@ on:
#### Ejecutar un flujo de trabajo cuando se aprueba una solicitud de cambios
To run your workflow when a pull request has been approved, you can trigger your workflow with the `submitted` type of `pull_request_review` event, then check the review state with the `github.event.review.state` property. For example, this workflow will run whenever a pull request review is submitted, but the `approved` job will only run if the submitted review is an approving review:
Para ejecutar tu flujo de trabajo cuando se aprobó una solicitud de cambios, puedes activarlo con el tipo `submitted` del evento `pull_request_review` y luego verificar el estado de revisión con la propiedad `github.event.review.state`. Por ejemplo, este flujo de trabajo se ejecutará cada que se emita una revisión de solicitud de cambios, pero el job `approved` solo se ejecutará si la revisión emitida es una aprobada:
```yaml
on:
@@ -752,13 +752,13 @@ jobs:
{% note %}
**Note**: {% data reusables.developer-site.multiple_activity_types %} For information about each activity type, see "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_review_comment)." {% data reusables.developer-site.limit_workflow_to_activity_types %}
**Nota**: {% data reusables.developer-site.multiple_activity_types %} para obtener más información acerca de cada tipo de actividad, consulta la sección "[Cargas útiles y eventos de webhook](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_review_comment)". {% data reusables.developer-site.limit_workflow_to_activity_types %}
{% endnote %}
Runs your workflow when a pull request review comment is modified. A pull request review comment is a comment on a pull request's diff. For activity related to pull request reviews or pull request comments, use the [`pull_request_review`](#pull_request_review) or [`issue_comment`](#issue_comment) events instead. For information about the pull request review comment APIs, see "[PullRequestReviewComment](/graphql/reference/objects#pullrequestreviewcomment)" in the GraphQL API documentation or "[Review comments](/rest/reference/pulls#comments)" in the REST API documentation.
Ejecuta tu flujo de trabajo cuando se modifica un comentario de una revisión de solicitud de cambios. Un comentario de revisión de una solicitud de cambios es un comentario en el diff de dicha solicitud. Para encontrar actividad relacionada con las revisiones o comentarios de las solicitudes de cambio, utiliza los eventos [`pull_request_review`](#pull_request_review) o [`issue_comment`](#issue_comment) en su lugar. Para obtener más información acerca de las API de comentarios de las revisiones de solicitudes de cambio, consulta la sección "[PullRequestReviewComment](/graphql/reference/objects#pullrequestreviewcomment)" en la documentación de la API de GraphQL o "[Comentarios de revisión](/rest/reference/pulls#comments)" en la documentación de la API de REST.
For example, you can run a workflow when a pull request review comment has been `created` or `deleted`.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un comentario de revisión de solicitud de cambios está como `created` o `deleted`.
```yaml
on:
@@ -776,17 +776,17 @@ on:
{% note %}
**Note**: {% data reusables.developer-site.multiple_activity_types %} For information about each activity type, see "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_target)." By default, a workflow only runs when a `pull_request_target` event's activity type is `opened`, `synchronize`, or `reopened`. Para activar los flujos de trabajo de acuerdo a sus tipos de actividad, utiliza la palabra clave `types`. Para obtener más información, consulta "[Sintaxis del flujo de trabajo para {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)".
**Nota**: {% data reusables.developer-site.multiple_activity_types %} para obtener más información acerca de cada tipo de actividad, consulta la sección "[Cargas útiles y eventos de webhook](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request_target)". Predeterminadamente, un flujo de trabajo se ejecuta únicamente cuando el tipo de actividad de evento `pull_request_target` se encuentra como `opened`, `synchronize` o `reopened`. Para activar los flujos de trabajo de acuerdo a sus tipos de actividad, utiliza la palabra clave `types`. Para obtener más información, consulta "[Sintaxis del flujo de trabajo para {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)".
{% endnote %}
Runs your workflow when activity on a pull request in the workflow's repository occurs. For example, if no activity types are specified, the workflow runs when a pull request is opened or reopened or when the head branch of the pull request is updated.
Ejecuta tu flujo de trabajo cuando ocurre alguna actividad en la solicitud de cambios del flujo de trabajo del repositorio. Por ejemplo, si no se especifican tipos de actividad, el flujo de trabajo se ejecutará cuando se abra o vuelva a abrir una solicitud de cambios o cuando se actualice la rama de encabezado de la misma.
This event runs in the context of the base of the pull request, rather than in the context of the merge commit, as the `pull_request` event does. This prevents execution of unsafe code from the head of the pull request that could alter your repository or steal any secrets you use in your workflow. This event allows your workflow to do things like label or comment on pull requests from forks. Avoid using this event if you need to build or run code from the pull request.
Este evento se ejecuta en el contexto de la base de la solicitud de cambios en vez de en aquel de la confirmación de fusión, como lo hace el evento `pull_request`. Esto previene la ejecución del código no seguro desde el encabezado de la solicitud de cambios que pudiera alterar tu repositorio o robar cualquier secreto que utilices en tu flujo de trabajo. Este evento permite que tu flujo de trabajo haga cosas como etiquetar o comentar en las solicitudes de cambios de las bifurcaciones. Evita utilizar este evento si necesitas compilar o ejecutar código desde la solicitud de cambios.
{% warning %}
**Warning:** For workflows that are triggered by the `pull_request_target` event, the `GITHUB_TOKEN` is granted read/write repository permission unless the `permissions` key is specified and the workflow can access secrets, even when it is triggered from a fork. Although the workflow runs in the context of the base of the pull request, you should make sure that you do not check out, build, or run untrusted code from the pull request with this event. Adicionalmente, cualquier caché comparte el mismo alcance que la rama base. Para ayudar a prevenir el envenenamiento del caché, no debes guardarlo si existe la posibilidad de que su contenido se haya alterado. Para obtener más información, consulta la sección "[Mantener seguros tus GitHub Actions y flujos de trabajo: Prevenir solicitudes de pwn](https://securitylab.github.com/research/github-actions-preventing-pwn-requests)" en el sitio web de GitHub Security Lab.
**Advertencia:** En el caso de los flujos de trabajo que se activan con el evento `pull_request_target`, se otorgarán permisos de lectura/escritura en el repositorio al `GITHUB_TOKEN` a menos de que se especifique la clave `permissions` y que el flujo de trabajo pueda acceder a los secretos, incluso cuando se activa desde una bifurcación. Aunque las ejecuciones de flujo de trabajo se ejecutan en el contexto de la base de la solicitud de cambios, debes asegurarte de que no revisas, compilas o ejecutas código no confiable desde ella con este evento. Adicionalmente, cualquier caché comparte el mismo alcance que la rama base. Para ayudar a prevenir el envenenamiento del caché, no debes guardarlo si existe la posibilidad de que su contenido se haya alterado. Para obtener más información, consulta la sección "[Mantener seguros tus GitHub Actions y flujos de trabajo: Prevenir solicitudes de pwn](https://securitylab.github.com/research/github-actions-preventing-pwn-requests)" en el sitio web de GitHub Security Lab.
{% endwarning %}
@@ -800,9 +800,9 @@ on:
#### Ejecutar tu flujo de trabajo con base en la rama base o de encabezado de una solicitud de cambios.
You can use the `branches` or `branches-ignore` filter to configure your workflow to only run on pull requests that target specific branches. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpull_requestpull_request_targetbranchesbranches-ignore)."
Puedes utilizar el filtro `branches` o `branches-ignore` para configurar tu flujo de trabajo para que solo se ejecute en solicitudes de cambio que apunten a ramas específicas. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpull_requestpull_request_targetbranchesbranches-ignore)".
For example, this workflow will run when someone opens a pull request that targets a branch whose name starts with `releases/`:
Por ejemplo, este flujo de trabajo se ejecutará cuando alguien vuelva a abrir una solicitud de cambios que apunte a una rama cuyo nombre inicie con `releases/`:
```yaml
on:
@@ -830,7 +830,7 @@ on:
{% endnote %}
To run a job based on the pull request's head branch name (as opposed to the pull request's base branch name), use the `github.head_ref` context in a conditional. For example, this workflow will run whenever a pull request is opened, but the `run_if` job will only execute if the head of the pull request is a branch whose name starts with `releases/`:
Para ejecutar un job con base en el nombre de la rama de encabezado de la solicitud de cambios (contrario al nombre de la rama base de dicha solicitud de cambios), utiliza el contexto `github.head_ref` en un condicional. Por ejemplo, este flujo de trabajo se ejecutará cada que se abra una solicitud de cambios, pero el job `run_if` solo se ejecutará si el encabezado de la solicitud de cambios es una rama cuyo nombre inicie con `releases/`:
```yaml
on:
@@ -847,9 +847,9 @@ jobs:
#### Ejecutar tu flujo de trabajo con base en los archivos que cambiaron en una solicitud de cambios
Puedes utilizar el filtro `paths` o `paths-ignore` para configurar tu flujo de trabajo para que se ejecute cuando una solicitud de cambios cambie archivos específicos. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
Puedes utilizar el filtro `paths` o `paths-ignore` para configurar tu flujo de trabajo para que se ejecute cuando una solicitud de cambios cambie archivos específicos. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)".
For example, this workflow will run when a pull request includes a change to a JavaScript file (`.js`):
Por ejemplo, este flujo de trabajo se ejecutará cuando una solicitud de cambios incluya un cambio en un archivo de JavaScript (`.js`):
```yaml
on:
@@ -877,7 +877,7 @@ on:
#### Ejecutar tu flujo de trabajo cuando se fusiona una solicitud de cambios
When a pull request merges, the pull request is automatically closed. Para ejecutar un flujo de trabajo cuando se fusiona una solicitud de cambios, utiliza el tipo de evento `pull_request_target` `closed` junto con una condicional que verifique el valor `merged` del mismo. For example, the following workflow will run whenever a pull request closes. The `if_merged` job will only run if the pull request was also merged.
Cuando se fusiona una solicitud de cambios, esta se cierra automáticamente. Para ejecutar un flujo de trabajo cuando se fusiona una solicitud de cambios, utiliza el tipo de evento `pull_request_target` `closed` junto con una condicional que verifique el valor `merged` del mismo. Por ejemplo, el siguiente flujo de trabajo se ejecutará cada que se cierre una solicitud de cambios. El job `if_merged` solo se ejecutará si la solicitud de cambios también se fusionó.
```yaml
on:
@@ -921,9 +921,15 @@ on:
push
```
{% note %}
**Note**: When a `push` webhook event triggers a workflow run, the Actions UI's "pushed by" field shows the account of the pusher and not the author or committer. However, if the changes are pushed to a repository using SSH authentication with a deploy key, then the "pushed by" field will be the repository admin who verified the deploy key when it was added it to a repository.
{% endnote %}
#### Ejecutar tu flujo de trabajo solo cuando ocurra una subida de información a ramas específicas
Puedes utilizar el filtro `branches` o `branches-ignore` para configurar tu flujo de trabajo para que solo se ejecute cuando se suben ramas específicas. Para obtener más información, consultala sección "[Sintaxis de flujo de trabajo para GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)".
Puedes utilizar el filtro `branches` o `branches-ignore` para configurar tu flujo de trabajo para que solo se ejecute cuando se suben ramas específicas. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)".
Por ejemplo, este flujo de trabajo se ejecutará cuando alguien suba información a la rama `main` o a alguna que inicie con `releases/`.
@@ -952,7 +958,7 @@ on:
#### Ejecutar tu flujo de trabajo únicamente cuando ocurra una subida de etiquetas específicas
Puedes utilizar el filtro `tags` o `tags-ignore` para configurar que tu flujo de trabajo solo se ejecute cuando se suban etiquetas específicas. Para obtener más información, consultala sección "[Sintaxis de flujo de trabajo para GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)".
Puedes utilizar el filtro `tags` o `tags-ignore` para configurar que tu flujo de trabajo solo se ejecute cuando se suban etiquetas específicas. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)".
Por ejemplo, este flujo de trabajo se ejecutará cuando alguien suba una etiqueta que inicie con `v1.`.
@@ -965,7 +971,7 @@ on:
#### Ejecutar tu flujo de trabajo únicamente cuando una subida de información afecta archivos específicos
Puedes utilizar el filtro `paths` o `paths-ignore` para configurar que tu flujo de trabajo se ejecute cuando ocurra una subida de archivos específicos. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
Puedes utilizar el filtro `paths` o `paths-ignore` para configurar que tu flujo de trabajo se ejecute cuando ocurra una subida de archivos específicos. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)".
Por ejemplo, este flujo de trabajo se ejecutará cuando alguien suba un cambio a un archivo de JavaScript (`.js`):
@@ -1029,7 +1035,7 @@ on:
{% note %}
**Nota:** Los flujos de trabajo no se ejecutan para los tipos de actividad `created`, `edited` o `deleted` en los borradores de lanzamiento. Cuando creas tu lanzamiento mediante el la IU del buscador de {% data variables.product.product_name %}, este podría guardarse automáticamente como borrador.
**Nota:** Los flujos de trabajo no se ejecutan para los tipos de actividad `created`, `edited`, o `deleted` en los borradores de lanzamiento. Cuando creas tu lanzamiento mediante el la IU del buscador de {% data variables.product.product_name %}, este podría guardarse automáticamente como borrador.
{% endnote %}
@@ -1041,7 +1047,7 @@ on:
Ejecuta tu flujo de trabajo cuando ocurre una actividad de lanzamiento en tu repositorio. Para obtener más información sobre las API de lanzamiento, consulta la sección de "[Lanzamiento](/graphql/reference/objects#release)" en la documentación de la API de GraphQL o "[Lanzamientos](/rest/reference/releases)" en la documentación de la API de REST.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un lanzamiento está como `published`.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un lanzamiento ha sido `publish`.
```yaml
on:
@@ -1114,7 +1120,7 @@ El evento `schedule` te permite activar un flujo de trabajo en una hora programa
{% data reusables.repositories.actions-scheduled-workflow-example %}
La sintaxis de cron tiene cinco campos separados por un espacio y cada campo representa una unidad de tiempo.
La sintaxis de cron tiene cinco campos separados por un espacio, y cada campo representa una unidad de tiempo.
```
┌───────────── minuto (0 - 59)
@@ -1143,9 +1149,9 @@ Puedes utilizar estos operadores en cualquiera de los cinco campos:
{% endnote %}
Puedes utilizar [contrab guru](https://crontab.guru/) para generar tu sintaxis de cron y confirmar a qué hora se ejecutará. To help you get started, there is also a list of [crontab guru examples](https://crontab.guru/examples.html).
Puedes usar [contrab guru](https://crontab.guru/) para generar tu sintaxis de cron y confirmar a qué hora se ejecutará. Para que puedas comenzar, hay también una lista de [ejemplos de crontab guru](https://crontab.guru/examples.html).
Notifications for scheduled workflows are sent to the user who last modified the cron syntax in the workflow file. For more information, see "[Notifications for workflow runs](/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs)."
Las notificaciones para los flujos de trabajo programados se envían al usuario que modificó por última vez la sintaxis de cron en el archivo de flujo de trabajo. Para obtener más información, consulta la sección "[Notificaciones para las ejecuciones de flujo de trabajo](/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs)".
### `estado`
@@ -1155,16 +1161,16 @@ Notifications for scheduled workflows are sent to the user who last modified the
{% data reusables.actions.branch-requirement %}
Runs your workflow when the status of a Git commit changes. For example, commits can be marked as `error`, `failure`, `pending`, or `success`. If you want to provide more details about the status change, you may want to use the [`check_run`](#check_run) event. For information about the commit status APIs, see "[Status](/graphql/reference/objects#statue)" in the GraphQL API documentation or "[Statuses](/rest/reference/commits#commit-statuses)" in the REST API documentation.
Ejecuta tu flujo de trabajo cuando cambia el estado de una confirmación de Git. Por ejemplo, las confirmaciones pueden marcarse como `error`, `failure`, `pending` o `success`. Si quieres proporcionar más detalles sobre el cambio de estado, puede que quieras utilizar el evento [`check_run`](#check_run). Para obtener más información sobre las API de estado de confirmación, consulta la sección "[Estado](/graphql/reference/objects#statue)" en la documentación de la API de GraphQL o "[Estados](/rest/reference/commits#commit-statuses)" en la documentación de la API de REST.
For example, you can run a workflow when the `status` event occurs.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento `status`.
```yaml
on:
status
```
If you want to run a job in your workflow based on the new commit state, you can use the `github.event.state` context. For example, the following workflow triggers when a commit status changes, but the `if_error_or_failure` job only runs if the new commit state is `error` or `failure`.
Si quieres ejecutar un job en tu flujo de trabajo con base en el estado de confirmación nuevo, puedes utilizar el contexto `github.event.state`. Por ejemplo, el siguiente flujo de trabajo se activa cuando cambia un estado de confirmación, pero el job `if_error_or_failure` solo se ejecuta si el estado de confirmación nuevo es `error` o `failure`.
```yaml
on:
@@ -1190,15 +1196,15 @@ jobs:
{% note %}
**Note**: {% data reusables.developer-site.multiple_activity_types %} Although only the `started` activity type is supported, specifying the activity type will keep your workflow specific if more activity types are added in the future. For information about each activity type, see "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#watch)." {% data reusables.developer-site.limit_workflow_to_activity_types %}
**Nota**: {% data reusables.developer-site.multiple_activity_types %} Aunque solo el tipo de actividad `started` es compatible, el especificar el tipo de actividad mantendrá tu flujo de trabajo específico si se agregan más tipos de actividad en el futuro. Para obtener más información sobre cada tipo de actividad, consulta la sección "[Cargas útiles y eventos de webhook](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#watch)". {% data reusables.developer-site.limit_workflow_to_activity_types %}
{% endnote %}
{% data reusables.actions.branch-requirement %}
Runs your workflow when the workflow's repository is starred. For information about the pull request APIs, see "[addStar](/graphql/reference/mutations#addstar)" in the GraphQL API documentation or "[Starring](/rest/reference/activity#starring)" in the REST API documentation.
Ejecuta tu flujo de trabajo cuando su repositorio se marcó como favorito. Para obtener más información sobre las API de solicitud de cambios, consulta la sección "[addStar](/graphql/reference/mutations#addstar)" en la documentación de la API de GraphQL o "[Marcar como favorito](/rest/reference/activity#starring)" en la documentación de la API de REST.
For example, you can run a workflow when someone stars a repository, which is the `started` activity type for a watch event.
Por ejemplo, puedes ejecutar un flujo de trabajo cuando alguien marca un repositorio como favorito, lo cual es el tipo de actividad `started` para un evento de observación.
```yaml
on:
@@ -1214,9 +1220,9 @@ on:
| ------------------------------------------ | ------------------ | ------------------------------------------ | ------------------------------------------ |
| El mismo que el flujo de trabajo que llama | n/a | El mismo que el flujo de trabajo que llama | El mismo que el flujo de trabajo que llama |
`workflow_call` is used to indicate that a workflow can be called by another workflow. When a workflow is triggered with the `workflow_call` event, the event payload in the called workflow is the same event payload from the calling workflow. Para obtener más información, consulta la sección "[Reutilizar los flujos de trabajo](/actions/learn-github-actions/reusing-workflows)".
`workflow_call` se utiliza para indicar que un flujo de trabajo puede llamar a otro. Cuando se activa un flujo de trabajo con el evento `workflow_call`, la carga útil del evento en el flujo de trabajo llamado es la misma del flujo de trabajo llamante. Para obtener más información, consulta la sección "[Reutilizar los flujos de trabajo](/actions/learn-github-actions/reusing-workflows)".
The example below only runs the workflow when it's called from another workflow:
El siguiente ejemplo solo ejecuta el flujo de trabajo cuando se le llama desde otro flujo de trabajo:
```yaml
on: workflow_call
@@ -1230,7 +1236,7 @@ on: workflow_call
| ------------------------------------------------------------------------------------------------------------ | ------------------ | ---------------------------------------------- | ------------------------- |
| [workflow_dispatch](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads/#workflow_dispatch) | n/a | Última confirmacion en la rama de `GITHUB_REF` | Rama que recibió el envío |
To manually trigger a workflow, use the `workflow_dispatch` event. You can manually trigger a workflow run using the {% data variables.product.product_name %} API, {% data variables.product.prodname_cli %}, or {% data variables.product.product_name %} browser interface. For more information, see "[Manually running a workflow](/actions/managing-workflow-runs/manually-running-a-workflow)."
Para activar un flujo de trabajo manualmente, utiliza el evento `workflow_dispatch`. Puedes activar un flujo de trabajo manualmente utilizando la API de {% data variables.product.product_name %}, el {% data variables.product.prodname_cli %} o la interfaz de buscador de {% data variables.product.product_name %}. Para obtener más información, consulta la sección "[Ejecutar un flujo de trabajo manualmente](/actions/managing-workflow-runs/manually-running-a-workflow)".
```yaml
on: workflow_dispatch
@@ -1238,12 +1244,12 @@ on: workflow_dispatch
#### Proporcionar entradas
You can configure custom-defined input properties, default input values, and required inputs for the event directly in your workflow. When you trigger the event, you can provide the `ref` and any `inputs`. When the workflow runs, you can access the input values in the {% ifversion actions-unified-inputs %}`inputs`{% else %}`github.event.inputs`{% endif %} context. Para obtener más información, consulta "[Contextos](/actions/learn-github-actions/contexts)".
Puedes configurar propiedades de entrada definidas personalmente, valores de entrada predeterminados y entradas requeridas para el evento directamente en tu flujo de trabajo. Cuando activas el evento, puedes proporcionar el `ref` y cualquier `inputs`. Cuando el flujo de trabajo se ejecuta, puedes acceder a los valores de entrada en el contexto {% ifversion actions-unified-inputs %}`inputs`{% else %}`github.event.inputs`{% endif %}. Para obtener más información, consulta "[Contextos](/actions/learn-github-actions/contexts)".
{% data reusables.actions.inputs-vs-github-event-inputs %}
{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5511 %}
This example defines inputs called `logLevel`, `tags`, and `environment`. You pass values for these inputs to the workflow when you run it. This workflow then prints the values to the log, using the {% ifversion actions-unified-inputs %}`inputs.logLevel`, `inputs.tags`, and `inputs.environment`{% else %}`github.event.inputs.logLevel`, `github.event.inputs.tags`, and `github.event.inputs.environment`{% endif %} context properties.
Este ejemplo define las entradas llamadas `logLevel`, `tags` y `environment`. Pasarás los valores para estas entradas al flujo de trabajo cuando lo ejecutes. Entonces, este flujo de trabajo imprime los valores en la bitácora, utilizando las propiedades de contexto {% ifversion actions-unified-inputs %}`inputs.logLevel`, `inputs.tags` y `inputs.environment`{% else %}`github.event.inputs.logLevel`, `github.event.inputs.tags` y `github.event.inputs.environment`{% endif %}.
```yaml
on:
@@ -1281,20 +1287,20 @@ jobs:
ENVIRONMENT: {% ifversion actions-unified-inputs %}{% raw %}${{ inputs.environment }}{% endraw %}{% else %}{% raw %}${{ github.event.inputs.environment }}{% endraw %}{% endif %}
```
If you run this workflow from a browser you must enter values for the required inputs manually before the workflow will run.
Si ejecutas este flujo de trabajo desde un buscador, debes ingresar los valores para las entradas requeridas manualmente antes de que dicho flujo se ejecute.
![Entering inputs for a workflow](/assets/images/help/images/workflow-dispatch-inputs.png)
![Ingresar entradas para un flujo de trabajo](/assets/images/help/images/workflow-dispatch-inputs.png)
You can also pass inputs when you run a workflow from a script, or by using {% data variables.product.prodname_cli %}. Por ejemplo:
También puedes pasar las entradas cuando ejecutas un flujo de trabajo desde un script o utilizando el {% data variables.product.prodname_cli %}. Por ejemplo:
```
gh workflow run run-tests.yml -f logLevel=warning -f tags=false -f environment=staging
```
For more information, see the {% data variables.product.prodname_cli %} information in "[Manually running a workflow](/actions/managing-workflow-runs/manually-running-a-workflow)."
Para obtener más información, consulta la información del {% data variables.product.prodname_cli %} en la sección "[Ejecutar un flujo de trabajo manualmente](/actions/managing-workflow-runs/manually-running-a-workflow)".
{% else %}
This example defines the `name` and `home` inputs and prints them using the {% ifversion actions-unified-inputs %}`inputs.name` and `inputs.home`{% else %}`github.event.inputs.name` and `github.event.inputs.home`{% endif %} contexts. If a `home` isn't provided, the default value 'The Octoverse' is printed.
Este ejemplo define las entradas de `name` y `home` y las imprime utilizando los contextos de {% ifversion actions-unified-inputs %}`inputs.name` y `inputs.home`{% else %}`github.event.inputs.name` y `github.event.inputs.home`{% endif %}. Si no se proporciona un `home`, se imprime el valor predeterminado 'The Octoverse'.
```yaml
name: Manually triggered workflow
@@ -1331,7 +1337,7 @@ jobs:
{% note %}
**Note**: {% data reusables.developer-site.multiple_activity_types %} The `requested` activity type does not occur when a workflow is re-run. For information about each activity type, see "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_run)." {% data reusables.developer-site.limit_workflow_to_activity_types %}
**Nota**: {% data reusables.developer-site.multiple_activity_types %} El tipo de actividad `requested` no ocurre cuando se vuelve a ejecutar un flujo de trabajo. Para obtener más información sobre cada tipo de actividad, consulta la sección "[Cargas útiles y eventos de webhook](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_run)". {% data reusables.developer-site.limit_workflow_to_activity_types %}
{% endnote %}
@@ -1339,13 +1345,13 @@ jobs:
{% note %}
**Note:** You can't use `workflow_run` to chain together more than three levels of workflows. For example, if you attempt to trigger five workflows (named `B` to `F`) to run sequentially after an initial workflow `A` has run (that is: `A``B``C``D``E``F`), workflows `E` and `F` will not be run.
**Nota:** No puedes utilizar `workflow_run` para concatenar más de tres niveles de flujos de trabajo. Por ejemplo, si intentas activar cinco flujos de trabajo (denominados de la `B` a la `F`) para que se ejecuten secuencialmente después de que se ejecute el flujo de trabajo inicial `A` (esto quiere decir: `A``B``C``D``E``F`), los flujos de trabajo `E` y `F` no se ejecutarán.
{% endnote %}
This event occurs when a workflow run is requested or completed. It allows you to execute a workflow based on execution or completion of another workflow. The workflow started by the `workflow_run` event is able to access secrets and write tokens, even if the previous workflow was not. This is useful in cases where the previous workflow is intentionally not privileged, but you need to take a privileged action in a later workflow.
Este evento ocurre cuando se solicita o completa una ejecución de flujo de trabajo. Te permite ejecutar un flujo de trabajo con base en una ejecución o compleción de otro de ellos. El flujo de trabajo que inició el evento `workflow_run` puede acceder a secretos y tokens de escritura, incluso si el flujo de trabajo anterior no podía hacerlo. Esto es útil en los casos en que el flujo de trabajo anterior no tiene privilegios intencionalmente, pero necesitas tomar una acción que requiere de privilegios en un flujo de trabajo subsecuente.
In this example, a workflow is configured to run after the separate "Run Tests" workflow completes.
En este ejemplo, se configura un flujo de trabajo para que se ejecute después de que se complete el flujo de trabajo separado de "Run Tests".
```yaml
on:
@@ -1355,7 +1361,7 @@ on:
- completed
```
If you specify multiple `workflows` for the `workflow_run` event, only one of the workflows needs to run. For example, a workflow with the following trigger will run whenever the "Staging" workflow or the "Lab" workflow completes.
Si especificas `workflows` múltiples para el evento `workflow_run`, solo uno de estos flujos de trabajo necesitará ejecutarse. Por ejemplo, un flujo de trabajo con el siguiente activador se ejecutará cada que se complete el flujo de trabajo "Staging" o "Lab".
```yaml
on:
@@ -1367,7 +1373,7 @@ on:
#### Ejecutar un flujo de trabajo con base en la conclusión de otro flujo de trabjo
A workflow run is triggered regardless of the conclusion of the previous workflow. If you want to run a job or step based on the result of the triggering workflow, you can use a conditional with the `github.event.workflow_run.conclusion` property. For example, this workflow will run whenever a workflow named "Build" completes, but the `on-success` job will only run if the "Build" workflow succeeded, and the `on-failure` job will only run if the "Build" workflow failed:
Los flujos de trabajo se activan sin importar la conclusión del flujo previo. Si quieres ejecutar un job o paso con base en el resultado del flujo de trabajo desencadenante, puedes utilizar una condicional con la propiedad `github.event.workflow_run.conclusion`. Por ejemplo, esta ejecución de flujo de trabajo se ejecutará cada que otro flujo de nombre "Build" se complete, pero el job `on-success` solo se ejecutará si "Build" se completa con éxito y el job `on-failure` solo se ejecutará si el flujo de trabajo "Build" falla:
```yaml
on:
@@ -1390,7 +1396,7 @@ jobs:
#### Ltimitar tu flujo de trabajo para que se ejecute con base a las ramas
You can use the `branches` or `branches-ignore` filter to specify what branches the triggering workflow must run on in order to trigger your workflow. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onworkflow_runbranchesbranches-ignore)." For example, a workflow with the following trigger will only run when the workflow named `Build` runs on a branch named `canary`.
Puedes utilizar el filtro `branches` o `branches-ignore` para especificar en qué ramas se debe ejecutar el flujo de trabajo activador para poder activar tu flujo de trabajo. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onworkflow_runbranchesbranches-ignore)". Por ejemplo, un flujo de trabajo con el siguiente activador solo se ejecutará cuando el flujo de trabajo que se llama `Build` se ejecute en una rama llamada `canary`.
```yaml
on:
@@ -1402,9 +1408,9 @@ on:
#### Utilizar datos desde el flujo de trabajo llamante
You can access the [`workflow_run` event payload](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_run) that corresponds to the workflow that triggered your workflow. For example, if your triggering workflow generates artifacts, a workflow triggered with the `workflow_run` event can access these artifacts.
Puedes acceder a la [carga útil del evento `workflow_run`](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_run) que corresponde al flujo de trabajo que activó el tuyo. Por ejemplo, si tu flujo de trabajo activador genera artefactos, los flujos de trabajo que se activen con el evento `workflow_run` podrán acceder a estos artefactos.
The following workflow uploads data as an artifact. (In this simplified example, the data is the pull request number.)
El siguiente flujo de trabajo carga datos como un artefacto. (En este ejemplo simplificado, los datos son el número de la solicitud de cambios).
```yaml
name: Upload data
@@ -1429,7 +1435,7 @@ jobs:
path: pr/
```
When a run of the above workflow completes, it triggers a run of the following workflow. The following workflow uses the `github.event.workflow_run` context and the {% data variables.product.product_name %} REST API to download the artifact that was uploaded by the above workflow, unzips the downloaded artifact, and comments on the pull request whose number was uploaded as an artifact.
Cuando se complete una ejecución del flujo de trabajo anterior, este activará una ejecución del siguiente. El siguiente flujo de trabajo utiliza el contexto `github.event.workflow_run` y la API de REST de {% data variables.product.product_name %} para descargar el artefacto que cargó el flujo de trabajo anterior, descomprime el artefacto descargado y comenta en la solicitud de cambios cuyo número se haya subido como un artefacto.
```yaml
name: Use the data

View File

@@ -267,11 +267,11 @@ Para aprender cómo ver y cerrar las alertas para los secretos que se registraro
### Paso 7: Configurar la administración de dependencias
GitHub te permite evitar utilizar software de terceros que contenga vulnerabilidades conocidas. We provide the following tools for updating vulnerable dependencies{% ifversion GH-advisory-db-supports-malware %} and removing malware{% endif %}.
GitHub te permite evitar utilizar software de terceros que contenga vulnerabilidades conocidas. Proporcionamos las siguientes herramientas para atualizar las dependencias vulnerabiles{% ifversion GH-advisory-db-supports-malware %} y eliminar el malware{% endif %}.
| Herramienta de administración de dependencias | Descripción |
| ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Alertas del dependabot | You can track your repository's dependencies and receive Dependabot alerts when your enterprise detects insecure dependencies. Para obtener más información, consulta la sección "[Acerca de{% data variables.product.prodname_dependabot_alerts %}](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies)". |
| Alertas del dependabot | Puedes rastrear las dependencias de tus repositorios y recibir alertas del Dependabot cuando tu empresa detecte dependencias inseguras. Para obtener más información, consulta la sección "[Acerca de{% data variables.product.prodname_dependabot_alerts %}](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies)". |
| Gráfica de dependencias | La gráfica de dependencias es un resumen de los archivos de bloqueo y de manifiesto que se almacenan en un repositorio. Te muestra los ecosistemas y paquetes de los cuales depende tu base de código (sus dependencias) y los repositorios y paquetes que dependen de tu proyecto (sus dependencias). Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)". |{% ifversion ghes > 3.1 or ghec %}
| Revisión de dependencias | Si una solicitud de cambios contiene cambios a las dependencias, puedes ver un resumen de lo que ha cambiado y si es que existen vulnerabilidades conocidas en cualquiera de estas dependencias. Para obtener más información, consulta la sección "[Acerca de la revisión de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review)" o "[Revisar los cambios de dependencias en una solicitud de cambios](/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-dependency-changes-in-a-pull-request)". |{% endif %} {% ifversion ghec or ghes > 3.2 %}
| Actualziaciones de seguridad del dependabot | El dependabot puede corregir las dependencias vulnerables levantando solicitudes de cambios con actualizaciones de seguridad. Para obtener más información, consulta la sección "[Acerca de las actualizaciones de seguridad del dependabot](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates)". |

View File

@@ -16,7 +16,7 @@ topics:
{% data reusables.dependabot.about-the-dependency-graph %} Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)"
After you enable the dependency graph for your enterprise, you can enable {% data variables.product.prodname_dependabot %} to detect insecure dependencies in your repository{% ifversion ghes > 3.2 %} and automatically fix the vulnerabilities{% endif %}. Para obtener más información, consulta la sección "[Habilitar la {% data variables.product.prodname_dependabot %} en tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)".
Después de que habilitas la gráfica de dependencias para tu empresa, puedes habilitar el {% data variables.product.prodname_dependabot %} para que detecte dependencias inseguras en tu repositorio{% ifversion ghes > 3.2 %} y corrija las vulnerabilidades automáticamente{% endif %}. Para obtener más información, consulta la sección "[Habilitar la {% data variables.product.prodname_dependabot %} en tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)".
{% ifversion ghes > 3.1 %}
Puedes habilitar la gráfica de dependencias a través de la {% data variables.enterprise.management_console %} o del shell administrativo. Te recomendamos utilizar la {% data variables.enterprise.management_console %} a menos de que {% data variables.product.product_location %} utilice clústering.

View File

@@ -33,7 +33,7 @@ El {% data variables.product.prodname_dependabot %} ayuda a que los usuarios de
{% data reusables.dependabot.dependabot-alerts-beta %}
With {% data variables.product.prodname_dependabot_alerts %}, {% data variables.product.prodname_dotcom %} identifies insecure dependencies in repositories and creates alerts on {% data variables.product.product_location %}, using data from the {% data variables.product.prodname_advisory_database %} and the dependency graph service.
Con las {% data variables.product.prodname_dependabot_alerts %}, {% data variables.product.prodname_dotcom %} identifica las dependencias inseguras en los repositorios y crea alertas en {% data variables.product.product_location %} utilizando datos de la {% data variables.product.prodname_advisory_database %} y el servicio de la gráfica de dependencias.
{% data reusables.repositories.tracks-vulnerabilities %}

View File

@@ -17,7 +17,7 @@ topics:
Si configuras un nombre del host en lugar de una dirección IP codificada de forma rígida, podrás cambiar el hardware físico que ejecuta {% data variables.product.product_location %} sin afectar a los usuarios o al software del cliente.
La configuración del nombre de host en la {% data variables.enterprise.management_console %} debe ajustarse a un nombre de dominio adecuado y que cumpla con todos los requisitos (FQDN) el cual se pueda resolver en la internet o dentro de tu red interna. Por ejemplo, tu ajuste de nombre de host podría ser `github.companyname.com.` Las solicitudes web y de la API se redireccionarán automáticamente al nombre de host que se configuró en la {% data variables.enterprise.management_console %}.
La configuración del nombre de host en la {% data variables.enterprise.management_console %} debe ajustarse a un nombre de dominio adecuado y que cumpla con todos los requisitos (FQDN) el cual se pueda resolver en la internet o dentro de tu red interna. Por ejemplo, tu ajuste de nombre de host podría ser `github.companyname.com.` Las solicitudes web y de la API se redireccionarán automáticamente al nombre de host que se configuró en la {% data variables.enterprise.management_console %}. Toma en cuenta que `localhost` no es un ajuste válido de nombre de host.
Después de que configuras un nombre de host, puedes habilitar el aislamiento de subdominios para incrementar la seguridad de {% data variables.product.product_location %} aún más. Para obtener más información, consulta "[Habilitar el aislamiento de subdominio](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)."

View File

@@ -36,6 +36,8 @@ Tu certificado también deberá tener configurados Nombres alternativos de sujet
Puedes generar una solicitud de firma de certificados (CSR) para tu instancia usando el comando `ghe-ssl-generate-csr`. Para obtener más información, consulta "[utilidades de línea de comandos](/enterprise/admin/guides/installation/command-line-utilities/#ghe-ssl-generate-csr)"
Your key must be an RSA key and must not have a passphrase. Para obtener más información, consulta "[Eliminar la contraseña de tu archivo clave](/admin/guides/installation/troubleshooting-ssl-errors#removing-the-passphrase-from-your-key-file)".
## Cargar un certificado TLS personalizado
{% data reusables.enterprise_site_admin_settings.tls-downtime %}
@@ -48,11 +50,6 @@ Puedes generar una solicitud de firma de certificados (CSR) para tu instancia us
5. En "Certificate" (Certificado), haz clic en **Choose File** (Elegir archivo) para elegir el certificado TLS o la cadena de certificación (en formato de PEM) que quieras instalar. Este archivo suele tener una extensión *.pem*, *.crt* o *.cer*. ![Botón para encontrar archivo de certificado TLS](/assets/images/enterprise/management-console/install-tls-certificate.png)
6. Debajo de "Llave descifrada", haz clic en **Elegir archivo** para elegir una llave RSA (en formato PEM) a instalar. Ese archivo suele tener una extensión *.key*. ![Botón para encontrar archivo de clave TLS](/assets/images/enterprise/management-console/install-tls-key.png)
{% warning %}
**Advertencia**: Tu llave debe ser una llave RSA y no debe tener una frase de acceso. Para obtener más información, consulta "[Eliminar la contraseña de tu archivo clave](/admin/guides/installation/troubleshooting-ssl-errors#removing-the-passphrase-from-your-key-file)".
{% endwarning %}
{% data reusables.enterprise_management_console.save-settings %}
## Acerca de la asistencia de Let's Encrypt

View File

@@ -1,26 +1,26 @@
---
title: Deploying GitHub AE
intro: 'You can deploy {% data variables.product.product_name %} to an available Azure region.'
title: Desplegar GitHub AE
intro: 'Puedes desplegar {% data variables.product.product_name %} en una región disponible para Azure.'
versions:
ghae: '*'
topics:
- Accounts
- Enterprise
type: how_to
shortTitle: Deploy GitHub AE
shortTitle: Desplegar GitHub AE
redirect_from:
- /get-started/signing-up-for-github/setting-up-a-trial-of-github-ae
---
## About deployment of {% data variables.product.product_name %}
## Acerca del despliegue de {% data variables.product.product_name %}
{% data reusables.github-ae.github-ae-enables-you %} Para obtener más información, consulta la sección "[Acerca del {% data variables.product.prodname_ghe_managed %}](/admin/overview/about-github-ae)".
After you purchase or start a trial of {% data variables.product.product_name %}, you can deploy {% data variables.product.product_name %} to an available Azure region. This guide refers to the Azure resource that contains the deployment of {% data variables.product.product_name %} as the {% data variables.product.product_name %} account. You'll use the Azure portal at [https://portal.azure.com](https://portal.azure.com) to deploy the {% data variables.product.product_name %} account.
Después de que compras o inicias un periodo de prueba de {% data variables.product.product_name %}, puedes desplegar {% data variables.product.product_name %} a una región disponible para Azure. Esta guía se refiere al recurso de Azure que contiene el despliegue de {% data variables.product.product_name %} como la cuenta de {% data variables.product.product_name %}. Utilizarás el portal de Azure en [https://portal.azure.com](https://portal.azure.com) para desplegar la cuenta de {% data variables.product.product_name %}.
## Prerrequisitos
- Before you can deploy {% data variables.product.product_name %}, you must request access from your {% data variables.product.company_short %} account team. {% data variables.product.company_short %} will enable deployment of {% data variables.product.product_name %} for your Azure subscription. If you haven't already purchased {% data variables.product.product_name %}, you can contact {% data variables.contact.contact_enterprise_sales %} to check your eligibility for a trial.
- Antes de que puedas desplegar {% data variables.product.product_name %}, debes solicitar acceso desde tu equipo de cuenta de {% data variables.product.company_short %}. {% data variables.product.company_short %} habilitará el despliegue de {% data variables.product.product_name %} para tu suscripción de Azure. If you haven't already purchased {% data variables.product.product_name %}, you can contact {% data variables.contact.contact_enterprise_sales %} to check your eligibility for a trial.
- You must have permission to perform the `/register/action` operation for the resource provider in Azure. The permission is included in the `Contributor` and `Owner` roles. For more information, see [Azure resource providers and types](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/resource-providers-and-types#register-resource-provider) in the Microsoft documentation.

View File

@@ -29,7 +29,7 @@ Una verificación de salud proporciona la siguiente información sobre {% data v
- El análisis de la solicitud de Git, con los detalles sobre los usuarios de Git y repositorios más ocupados
- El análisis de las solicitudes a la API, incluyendo los tiempos más ocupados, las terminales que se solicitan con más frecuencia y los llamadores más activos
If you want to generate a Health Check for {% data variables.product.prodname_ghe_cloud %}, contact {% data variables.contact.github_support %}. Para obtener más información, consulta la sección "[Crear un ticket de soporte](/support/contacting-github-support/creating-a-support-ticket)".
Si quieres generar una verificación de salud para {% data variables.product.prodname_ghe_cloud %}, contacta al {% data variables.contact.github_support %}. Para obtener más información, consulta la sección "[Crear un ticket de soporte](/support/contacting-github-support/creating-a-support-ticket)".
## Generar una verificación de salud

View File

@@ -6,6 +6,7 @@ redirect_from:
- /enterprise/admin/guides/installation/finding-the-current-github-enterprise-release
- /enterprise/admin/enterprise-management/upgrade-requirements
- /admin/enterprise-management/upgrade-requirements
- /enterprise/admin/guides/installation/about-upgrade-requirements
versions:
ghes: '*'
type: reference

View File

@@ -22,7 +22,7 @@ shortTitle: Puerta de enlace de MinIO para el almacenamiento en NAS
Antes de que habilites las {% data variables.product.prodname_actions %}, asegúrate de que has completado los siguientes pasos:
* Para evitar la contención de recursos en el aplicativo, te recomendamos que hospedes a MinIO separado de {% data variables.product.product_location %}.
* Crea tu bucket para almacenar datos de flujo de trabajo. Para configurar tu bucket y clave de acceso, consulta la [Documentación de MinIO](https://docs.min.io/docs/minio-gateway-for-nas.html). {% indented_data_reference reusables.actions.enterprise-s3-permission spaces=2 %}
* Crea tu bucket para almacenar datos de flujo de trabajo. {% indented_data_reference reusables.actions.enterprise-s3-permission spaces=2 %}
{% data reusables.actions.enterprise-common-prereqs %}
@@ -38,7 +38,7 @@ Antes de que habilites las {% data variables.product.prodname_actions %}, asegú
* **URL de servicio de AWS**: La URL para tu servicio de MinIO. Por ejemplo, `https://my-minio.example:9000`.
* **AWS S3 Bucket**: El nombre de tu bucket de S3.
* **Clave de AWS S3 Access** y **Clave de AWS S3 Secret**: La `MINIO_ACCESS_KEY` y `MINIO_SECRET_KEY` que se utiliza para tu instancia de MinIO. Para obtener más información, consulta la [Documentación de MinIO](https://docs.min.io/docs/minio-gateway-for-nas.html).
* **Clave de AWS S3 Access** y **Clave de AWS S3 Secret**: La `MINIO_ACCESS_KEY` y `MINIO_SECRET_KEY` que se utiliza para tu instancia de MinIO.
![Botón radial para seleccionar el almacenamiento de Amazon S3 y los campos para la configuración de MinIO](/assets/images/enterprise/management-console/actions-minio-s3-storage.png)
1. Debajo de "Almacenamiento de artefactos & bitácoras", selecciona **Forzar el estilo de la ruta**. ![Casilla de verificación para forzar el estilo de ruta](/assets/images/enterprise/management-console/actions-minio-force-path-style.png)

View File

@@ -42,8 +42,8 @@ Después de que configuras {% data variables.product.product_location %} para qu
Cualquier máquina virtual que utilices para los ejecutores del {% data variables.product.prodname_dependabot %} debe cumplir con los requisitos de los ejecutores auto-hospedados. Adicionalmente, deben cumplir con los siguientes requisitos.
- Sistema operativo Linux
- Git instalado
- Sistema operativo Linux{% ifversion ghes < 3.5 %}
- Git instalado{% endif %}
- Docker instalado con acceso para los usuarios del ejecutor:
- Recomendamos instalar Docker en modo sin raíz y configurar los ejecutores para acceder a Docker sin privilegios de `root`.
- Como alternativa, instala Docker y otorga a los usuarios del ejecutor privilegios superiores para ejecutarlo.
@@ -68,9 +68,9 @@ Los ejecutores del {% data variables.product.prodname_dependabot %} necesitan ac
1. Aprovisionar los ejecutores auto-hospedados a nivel de cuenta empresarial, organizacional o de repositorio. Para obtener más información, consulta las secciones "[Acerca de los ejecutores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)" y "[Agregar ejecutores auto-hospedados](/actions/hosting-your-own-runners/adding-self-hosted-runners)".
2. Configurar los ejecutores auto hospedados con los requisitos que se describen anteriormente. Por ejemplo, en una MV que ejecuta Ubuntu 20.04, lo que harías sería:
2. Configurar los ejecutores auto hospedados con los requisitos que se describen anteriormente. Por ejemplo, en una MV que ejecuta Ubuntu 20.04, podrías:{% ifversion ghes < 3.5 %}
- Verificar que Git esté instalado: `command -v git`
- Verificar que Git está instalado: `command -v git`{% endif %}
- Instalar Docker y asegurarte de que los usuarios del ejecutor tengan acceso a él. Para obtener más información, consulta la documentación de Docker.
- [Instalar Docker Engine en Ubuntu](https://docs.docker.com/engine/install/ubuntu/)
- Enfoque recomendado: [Ejecuta el Docker daemon como un usuario no raíz (Modo sin raíz)](https://docs.docker.com/engine/security/rootless/)

View File

@@ -143,7 +143,7 @@ Opcionalmente, puedes crear herramientas personalizadas para escalar automática
- "[Habilitar el acceso automático a las acciones de {% data variables.product.prodname_dotcom_the_website %} utilizando {% data variables.product.prodname_github_connect %}](/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect)"
{%- elsif ghec %}
- "Sincronizar acciones manualmente desde {% data variables.product.prodname_dotcom_the_website %}" en la documentación de [{% data variables.product.prodname_ghe_server %}](/enterprise-server@latest//admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom) o de [{% data variables.product.prodname_ghe_managed %}](/github-ae@latest//admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom)
- "Enabling automatic access to {% data variables.product.prodname_dotcom_the_website %} actions using {% data variables.product.prodname_github_connect %}" in the [{% data variables.product.prodname_ghe_server %}](/enterprise-server@latest/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect) or [{% data variables.product.prodname_ghe_managed %}](/github-ae@latest//admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect) documentation
- "Habilitar el acceso automático a las acciones de {% data variables.product.prodname_dotcom_the_website %} utilizando {% data variables.product.prodname_github_connect %}" en la documentación de [{% data variables.product.prodname_ghe_server %}](/enterprise-server@latest/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect) o de [{% data variables.product.prodname_ghe_managed %}](/github-ae@latest//admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect)
{%- endif %}
- Puedes personalizar el software disponible en tus máquinas ejecutoras auto-hospedadas o configurar tus ejecutores para que ejecuten software similar a aquellos hospedados en {% data variables.product.company_short %}{% ifversion ghes or ghae %} disponible para los clientes que utilizan {% data variables.product.prodname_dotcom_the_website %}{% endif %}. El software que impulsa las máquinas ejecutoras para {% data variables.product.prodname_actions %} es de código abierto. Para obtener más información, consulta los repositorios [`actions/runner`](https://github.com/actions/runner) y [`actions/virtual-environments`](https://github.com/actions/virtual-environments).

View File

@@ -31,7 +31,7 @@ Puedes poblar el caché de la herramienta del ejecutor si ejecutas un flujo de t
{% note %}
**Nota:** Solo puedes utilizar un caché de la herramienta del ejecutor hospedado en {% data variables.product.prodname_dotcom %} para un ejecutor auto-hospedado que tenga un sistema operativo y arquitectura idénticos. Por ejemplo, si estás utilizando un ejecutor hospedado en {% data variables.product.prodname_dotcom %} con `ubuntu-18.04` para generar un caché de la herramienta, tu ejecutor auto-hospedado también debe ser una máquina con Ubuntu 18.04 de 64 bits. Para obtener más información sobre los ejecutores hospedados en {% data variables.product.prodname_dotcom %}, consulta la sección "<a href="/actions/reference/virtual-environments-for-github-hosted-runners#supported-runners-and-hardware-resources" class="dotcom-only">Ambientes virtuales para los ejecutores hospedados en GitHub</a>".
**Nota:** Solo puedes utilizar un caché de la herramienta del ejecutor hospedado en {% data variables.product.prodname_dotcom %} para un ejecutor auto-hospedado que tenga un sistema operativo y arquitectura idénticos. Por ejemplo, si estás utilizando un ejecutor hospedado en {% data variables.product.prodname_dotcom %} con `ubuntu-18.04` para generar un caché de la herramienta, tu ejecutor auto-hospedado también debe ser una máquina con Ubuntu 18.04 de 64 bits. For more information on {% data variables.product.prodname_dotcom %}-hosted runners, see "[Virtual environments for GitHub-hosted runners](/free-pro-team@latest/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources)."
{% endnote %}

View File

@@ -70,7 +70,7 @@ If you currently require your users to create a new account on {% data variables
### Which identity provider does your enterprise use?
{% data variables.product.prodname_emus %} is supported for a limited number of IdPs, while SAML SSO offers full support for a larger number of IdPs, plus limited support for all IdPs that implement the SAML 2.0 standard. For the list of supported IdPs for each option, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users#identity-provider-support)" and "[About SAML for enterprise IAM](/admin/identity-and-access-management/using-saml-for-enterprise-iam/about-saml-for-enterprise-iam#supported-idps)."
{% data variables.product.prodname_emus %} is supported for a limited number of IdPs, while SAML SSO offers full support for a larger number of IdPs, plus limited support for all IdPs that implement the SAML 2.0 standard. Para obtener la lista de IdP compatibles para cada opción, consulta las secciones "[Acerca de las {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users#identity-provider-support)" y "[Acerca de SAML para el IAM empresarial](/admin/identity-and-access-management/using-saml-for-enterprise-iam/about-saml-for-enterprise-iam#supported-idps)".
You can use {% data variables.product.prodname_emus %} with an unsupported IdP only if you federate the unsupported IdP to a supported IdP to use as an integration point. If you wish to avoid this extra complexity, SAML SSO may be a better solution for you.

View File

@@ -34,7 +34,7 @@ When you use external authentication, {% data variables.product.product_location
{% elsif ghec %}
If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" and "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)."
If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). Para obtener más información, consulta las secciones"[Acerca de las {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" y "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)".
{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique.

View File

@@ -1,7 +1,7 @@
---
title: Acceder a tu cuenta empresarial si no está disponible tu proveedor de identidad
shortTitle: Acceder a tu cuenta empresarial
intro: 'You can sign into {% data variables.product.product_name %} even if your identity provider is unavailable by bypassing single sign-on (SSO) with a recovery code.'
intro: 'Puedes iniciar sesión en {% data variables.product.product_name %}, incluyso si tu proveedor de identidad no está disponible, si omites el inicio de sesión único (SSO) con un código de recuperación.'
versions:
ghec: '*'
type: how_to
@@ -13,7 +13,7 @@ topics:
permissions: Enterprise owners can use a recovery code to access an enterprise account.
---
You can use a recovery code to access your enterprise account when a authentication configuration error or an issue with your identity provider (IdP) prevents you from using SSO.
Puedes utilizar un código de recuperación para acceder a tu cuenta empresarial cuando un error de configuración en la autenticación o un problema con tu proveedor de identidad (IdP) impide que utilices el SSO.
Para poder acceder a tu cuenta empresarial de esta forma, debes haber descargado previamente y almacenado los códigos de recuperación de tu empresa. For more information, see "[Downloading your enterprise account's single sign-on recovery codes](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)."

View File

@@ -32,7 +32,7 @@ If you configure CAS, people with accounts on your identity provider (IdP) do no
## Consideraciones sobre el nombre de usuario con CAS
{% data reusables.enterprise_user_management.consider-usernames-for-external-authentication %} For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)."
{% data reusables.enterprise_user_management.consider-usernames-for-external-authentication %} Para obtener más información, consulta la sección "[Consideraciones de nombre de usuario para la autenticación externa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)".
## Atributos de CAS

View File

@@ -32,7 +32,7 @@ Organization membership can be managed manually, or you can update membership au
{% endif %}
You can grant {% data variables.product.prodname_managed_users %} access to and the ability to contribute to repositories within your enterprise, but {% data variables.product.prodname_managed_users %} cannot create public content or collaborate with other users, organizations, and enterprises on the rest of {% data variables.product.prodname_dotcom %}. For more information, see "[Abilities and restrictions of {% data variables.product.prodname_managed_users %}](#abilities-and-restrictions-of-enterprise-managed-users)."
Puedes otorgar acceso a los {% data variables.product.prodname_managed_users %}, así como la capacidad de contribuir con los repositorios dentro de tu empresa, pero los {% data variables.product.prodname_managed_users %} no pueden crear contenido público ni colaborar con otros usuarios, organizaciones y empresas en el resto de {% data variables.product.prodname_dotcom %}. For more information, see "[Abilities and restrictions of {% data variables.product.prodname_managed_users %}](#abilities-and-restrictions-of-enterprise-managed-users)."
El nombre de usuario de los {% data variables.product.prodname_managed_users %} de tu empresa y su información de perfil, tal como los nombres y direcciones de correo electrónico que se muestran, se configuran mediante tu IdP y no pueden cambiarlos los mismos usuarios. Para obtener más información, consulta la sección "[Nombres de usuario e información de perfil](#usernames-and-profile-information)".
@@ -96,7 +96,9 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w
{% endnote %}
3. After you log in to your setup user, get started by configuring {% ifversion oidc-for-emu %}how your members will authenticate. If you are using Azure Active Directory as your identity provider, you can choose between OpenID Connect (OIDC) and Security Assertion Markup Language (SAML). Both options provide a seamless sign-in experience for your members, but only OIDC includes support for Conditional Access Policies (CAP). If you are using Okta as your identity provider, you can use SAML to authenticate your members.{% else %}SAML SSO for your enterprise. For more information, see "[Configuring SAML single sign-on for Enterprise Managed Users](/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users)."{% endif %}
3. After you log in as the setup user, we recommend enabling two-factor authentication. Para obtener más información, consulta "[Configurar autenticación de dos factores](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication)".
1. To get started, configure {% ifversion oidc-for-emu %}how your members will authenticate. If you are using Azure Active Directory as your identity provider, you can choose between OpenID Connect (OIDC) and Security Assertion Markup Language (SAML). Both options provide a seamless sign-in experience for your members, but only OIDC includes support for Conditional Access Policies (CAP). If you are using Okta as your identity provider, you can use SAML to authenticate your members.{% else %}SAML SSO for your enterprise. For more information, see "[Configuring SAML single sign-on for Enterprise Managed Users](/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users)."{% endif %}
{% ifversion oidc-for-emu %}

View File

@@ -20,7 +20,7 @@ topics:
CAP support is enabled automatically for any {% data variables.product.prodname_emu_enterprise %} that enables OIDC SSO and cannot be disabled. {% data variables.product.prodname_dotcom %} enforces your IdP's IP conditions but not device compliance conditions.
For more information about using OIDC with {% data variables.product.prodname_emus %}, see "[Configuring OIDC for Enterprise Managed Users](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users)" and "[Migrating from SAML to OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)."
Para obtener más información sobre cómo utilizar OIDC con {% data variables.product.prodname_emus %}, consulta las secciones "[Configurar OIDC para los usuarios empresariales administrados](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users) y "[Migrarse de SAML a OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)".
## About using CAP with IP allow lists

View File

@@ -19,7 +19,7 @@ topics:
Debes configurar el aprovisionamiento de {% data variables.product.prodname_emus %} para crear, administrar y desactivar las cuentas de usuario para los miembros de las empresas. Cuando configuras el aprovisionamiento para {% data variables.product.prodname_emus %}, los usuarios que se asignaron a la aplicación de {% data variables.product.prodname_emu_idp_application %} en tu proveedor de identidad se aprovisionan como cuentas de usuario nuevas en {% data variables.product.prodname_dotcom %} a través de SCIM y los usuarios se agregan a tu empresa.
Cuando actualzias la información asociada con la identidad de un usuario en tu IdP, este actualizará la cuenta de usuario en GitHub.com. When you unassign the user from the {% data variables.product.prodname_emu_idp_application %} application or deactivate a user's account on your IdP, your IdP will communicate with {% data variables.product.prodname_dotcom %} to invalidate any sessions and disable the member's account. La información de la cuenta inhabilitada se mantiene y su nombre de usuario se cambia por un hash del nombre de usuario original con el código corto anexo. Si reasignas a un usuario a la aplicación de {% data variables.product.prodname_emu_idp_application %} o reactivas su cuenta en tu IdP, la cuenta de {% data variables.product.prodname_managed_user %} en {% data variables.product.prodname_dotcom %} se reactivará y el nombre de usuario se restablecerá.
Cuando actualzias la información asociada con la identidad de un usuario en tu IdP, este actualizará la cuenta de usuario en GitHub.com. Cuando desasignas al usuario desde la aplicación de {% data variables.product.prodname_emu_idp_application %} o cuando desactivas una cuenta de usuario en tu IdP, dicho IdP se comunicará con {% data variables.product.prodname_dotcom %} para invalidar cualquier sesión e inhabilitar la cuenta del miembro. La información de la cuenta inhabilitada se mantiene y su nombre de usuario se cambia por un hash del nombre de usuario original con el código corto anexo. Si reasignas a un usuario a la aplicación de {% data variables.product.prodname_emu_idp_application %} o reactivas su cuenta en tu IdP, la cuenta de {% data variables.product.prodname_managed_user %} en {% data variables.product.prodname_dotcom %} se reactivará y el nombre de usuario se restablecerá.
Los grupos en tu IdP pueden utilizarse para administrar la membrecía de equipo dentro de las organizaciones de tu empresa, permitiéndote configurar el acceso y los permisos del repositorio mediante tu IdP. Para obtener más información, consulta la sección "[Administrar las membrecías de equipo con los grupos de proveedor de identidades](/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/managing-team-memberships-with-identity-provider-groups)".
@@ -27,7 +27,7 @@ Los grupos en tu IdP pueden utilizarse para administrar la membrecía de equipo
Before you can configure provisioning for {% data variables.product.prodname_emus %}, you must configure SAML{% ifversion oidc-for-emu %} or OIDC{% endif %} single-sign on. {% ifversion oidc-for-emu %}
- For more information on configuring OIDC, see "[Configuring OIDC for Enterprise Managed Users](/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-oidc-for-enterprise-managed-users)"
- For more information on configuring OIDC, see "[Configuring OIDC for Enterprise Managed Users](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users)"
- {% endif %}For information on configuring SAML, see "[Configuring SAML single sign-on for Enterprise Managed Users](/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/configuring-saml-single-sign-on-for-enterprise-managed-users)."
## Crear un token de acceso personal

View File

@@ -22,6 +22,12 @@ shortTitle: Instalar en AWS
- Debes tener una cuenta AWS capaz de iniciar instancias EC2 y crear volúmenes EBS. Para obtener más información, consulta el [Sitio web de Amazon Web Services](https://aws.amazon.com/).
- La mayoría de las acciones necesarias para iniciar {% data variables.product.product_location %} también pueden realizarse por medio de la consola de administración de AWS. Sin embargo, recomendamos instalar la interfaz de línea de comando de AWS (CLI) para la configuración inicial. Abajo se incluyen ejemplos que utilizan AWS CLI. Para obtener más información, consulta las guías de Amazon "[Trabajar con la consola de administración de AWS](http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/getting-started.html)" y "[Qué es la interfaz de línea de comando de AWS](http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)."
{% note %}
**Note:** At this time {% data variables.product.prodname_ghe_server %} does not support the use of the Amazon IDMSv2 Metadata API.
{% endnote %}
Esta guía supone que estás familiarizado con los siguientes conceptos de AWS:
- [Iniciar instancias de EC2](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/LaunchingAndUsingInstances.html)

View File

@@ -42,7 +42,7 @@ If you would like to delete your data, you may do so by contacting GitHub Suppor
### About data portability
As an organization owner or enterprise owner on {% data variables.product.prodname_ghe_cloud %}, you can access {% data variables.product.prodname_server_statistics %} data by exporting the data in a CSV or JSON file or through the {% data variables.product.prodname_server_statistics %} REST API. For more information, see "[Requesting {% data variables.product.prodname_server_statistics %} using the REST API](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api)" or "[Exporting {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics)."
As an organization owner or enterprise owner on {% data variables.product.prodname_ghe_cloud %}, you can access {% data variables.product.prodname_server_statistics %} data by exporting the data in a CSV or JSON file or through the {% data variables.product.prodname_server_statistics %} REST API. Para obtener más información, consulta la sección "[Solicitar las {% data variables.product.prodname_server_statistics %} utilizando la API de REST](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api)" o "[Exportar las {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/exporting-server-statistics)".
## About disabling data collection

View File

@@ -1,7 +1,7 @@
---
title: Analyzing how your team works with Server Statistics
shortTitle: Server Statistics
intro: 'To analyze how your team works, understand the value you get from {% data variables.product.prodname_ghe_server %}, and help us improve our products, you can use {% data variables.product.prodname_server_statistics %} to review your usage data for {% data variables.product.prodname_ghe_server %} and share this aggregate data with {% data variables.product.company_short %}.'
intro: 'Para analizar la forma en la que trabaja tu equipo, entender el valor que obtienes de {% data variables.product.prodname_ghe_server %} y ayudarnos a mejorar nuestros productos, puedes utilizar las {% data variables.product.prodname_server_statistics %} para revisar tus datos de uso para {% data variables.product.prodname_ghe_server %} y compartir estos datos agregados con {% data variables.product.company_short %}.'
versions:
feature: server-statistics
children:

View File

@@ -131,7 +131,7 @@ The scope of the events that appear in your enterprise's audit log depend on whe
{%- ifversion ghec %}
| `business.set_actions_fork_pr_approvals_policy` | The setting for requiring approvals for workflows from public forks was changed for an enterprise. Para obtener más información, consulta la sección "[Requerir políticas para las {% data variables.product.prodname_actions %} en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-fork-pull-requests-in-your-enterprise)".
{%- endif %}
| `business.set_actions_retention_limit` | The retention period for {% data variables.product.prodname_actions %} artifacts and logs was changed for an enterprise. For more information, see "[Enforcing policies for {% data variables.product.prodname_actions %} in an enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)."
| `business.set_actions_retention_limit` | The retention period for {% data variables.product.prodname_actions %} artifacts and logs was changed for an enterprise. Para obtener más información, consulta la sección "[Requerir políticas para la {% data variables.product.prodname_actions %} en una empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)".
{%- ifversion ghec or ghes %}
| `business.set_fork_pr_workflows_policy` | The policy for workflows on private repository forks was changed. Para obtener más información, consulta la sección "{% ifversion ghec %}[Requerir políticas para las {% data variables.product.prodname_actions %} en una empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-fork-pull-requests-in-private-repositories){% else ifversion ghes > 2.22 %}[Habilitar los flujos de trabajo para las bifurcaciones de repositorios privados](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enforcing-github-actions-policies-for-your-enterprise#enabling-workflows-for-private-repository-forks){% endif %}".
{%- endif %}
@@ -930,7 +930,7 @@ The scope of the events that appear in your enterprise's audit log depend on whe
{%- endif %}
| `repo.download_zip` | A source code archive of a repository was downloaded as a ZIP file. | `repo.pages_cname` | A {% data variables.product.prodname_pages %} custom domain was modified in a repository. | `repo.pages_create` | A {% data variables.product.prodname_pages %} site was created. | `repo.pages_destroy` | A {% data variables.product.prodname_pages %} site was deleted. | `repo.pages_https_redirect_disabled` | HTTPS redirects were disabled for a {% data variables.product.prodname_pages %} site. | `repo.pages_https_redirect_enabled` | HTTPS redirects were enabled for a {% data variables.product.prodname_pages %} site. | `repo.pages_source` | A {% data variables.product.prodname_pages %} source was modified. | `repo.pages_private` | A {% data variables.product.prodname_pages %} site visibility was changed to private. | `repo.pages_public` | A {% data variables.product.prodname_pages %} site visibility was changed to public. | `repo.register_self_hosted_runner` | A new self-hosted runner was registered. Para obtener más información, consulta la sección "[Agregar un ejecutor auto-hospedado a un repositorio](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)". | `repo.remove_self_hosted_runner` | A self-hosted runner was removed. Para obtener más información, consulta la sección "[Eliminar a un ejecutor de un repositorio](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)". | `repo.remove_actions_secret` | A {% data variables.product.prodname_actions %} secret was deleted for a repository. | `repo.remove_integration_secret` | A {% data variables.product.prodname_dependabot %}{% ifversion fpt or ghec %} or {% data variables.product.prodname_codespaces %}{% endif %} integration secret was deleted for a repository. | `repo.remove_member` | A collaborator was removed from a repository. | `repo.remove_topic` | A topic was removed from a repository. | `repo.rename` | A repository was renamed.
{%- ifversion fpt or ghec %}
| `repo.set_actions_fork_pr_approvals_policy` | The setting for requiring approvals for workflows from public forks was changed for a repository. For more information, see "[Configuring required approval for workflows from public forks](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks)."
| `repo.set_actions_fork_pr_approvals_policy` | The setting for requiring approvals for workflows from public forks was changed for a repository. Para obtener más información, consulte la sección "[Configurar la aprobación requerida para los flujos de trabajo desde las bifurcaciones públicas](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks)".
{%- endif %}
| `repo.set_actions_retention_limit` | The retention period for {% data variables.product.prodname_actions %} artifacts and logs in a repository was changed. Para obtener más información, consulta la sección "[Configurar el periodo de retención de los artefactos de las {% data variables.product.prodname_actions %} y las bitácoras en tu repositorio](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)".
{%- ifversion fpt or ghec or ghes > 3.1 or ghae %}
@@ -1097,11 +1097,11 @@ The scope of the events that appear in your enterprise's audit log depend on whe
{%- endif %}
{% ifversion secret-scanning-push-protection-bypasses %}
## `secret_scanning_push_protection` category actions
## Acciones de la categoría `secret_scanning_push_protection`
| Acción | Descripción |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `bypass` | Triggered when a user bypasses the push protection on a secret detected by secret scanning. For more information, see "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)."{% endif %}
| Acción | Descripción |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `bypass` | Se activa cuando un usuario omite la protección de subida en un secreto que detectó el escaneo de secretos. For more information, see "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)."{% endif %}
{%- ifversion ghec or ghes or ghae %}
## `security_key` category actions

View File

@@ -42,6 +42,15 @@ Puedes configurar la transmisión de bitácoras de auditoría en {% data variabl
### Configurar la transmisión para Amazon S3
{% ifversion streaming-oidc-s3 %}
You can set up streaming to S3 with access keys or, to avoid storing long-lived secrets in {% data variables.product.product_name %}, with OpenID Connect (OIDC).
- [Setting up streaming to S3 with access keys](#setting-up-streaming-to-s3-with-access-keys)
- [Setting up streaming to S3 with OpenID Connect](#setting-up-streaming-to-s3-with-openid-connect)
#### Setting up streaming to S3 with access keys
{% endif %}
Para transmitir bitácoras de auditoría a la terminal de Amazon S3, debes tener un bucket y llaves de acceso. Para obtener más información, consulta la sección [Crear, configurar y trabajar con los buckets de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) en la documentación de AWS. Asegúrate de bloquear el acceso público al bucket para proteger la información de tu bitácora de auditoría.
Para configurar la transmisión de bitácora de auditoría desde {% data variables.product.prodname_dotcom %}, necesitarás:
@@ -52,23 +61,70 @@ Para configurar la transmisión de bitácora de auditoría desde {% data variabl
Para obtener más información sobre cómo crear o acceder a tu ID de llave de acceso y llave de secreto, consulta la sección [Entender y obtener tus credenciales de AWS](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) en la documentación de AWS.
{% data reusables.enterprise.navigate-to-log-streaming-tab %}
1. Haz clic en **Configurar transmisión** y selecciona **Amazon S3**.
{% data reusables.audit_log.streaming-choose-s3 %}{% ifversion streaming-oidc-s3 %}
1. Under "Authentication", click **Access keys**.
![Elige Amazon S3 del menú desplegable](/assets/images/help/enterprises/audit-stream-choice-s3.png)
1. En la página de configuración, ingresa:
* El nombre del bucket al cual quieres transmitir. Por ejemplo, `auditlog-streaming-test`.
* Tu ID de llave de acceso. Por ejemplo, `ABCAIOSFODNN7EXAMPLE1`.
* Tu llave secreta. Por ejemplo, `aBcJalrXUtnWXYZ/A1MDENG/zPxRfiCYEXAMPLEKEY`.
![Ingresar la configuración de transmisión](/assets/images/help/enterprises/audit-stream-add-s3.png)
1. Haz clic en **Verificar terminal** para verificar que {% data variables.product.prodname_dotcom %} pueda conectarse y escribir en la terminal de Amazon S3.
![Verificar la terminal](/assets/images/help/enterprises/audit-stream-check.png)
![Screenshot of the authentication options for streaming to Amazon S3](/assets/images/help/enterprises/audit-log-streaming-s3-access-keys.png){% endif %}
1. Configure the stream settings.
- Under "Bucket", type the name of the bucket you want to stream to. Por ejemplo, `auditlog-streaming-test`.
- Under "Access Key ID", type your access key ID. Por ejemplo, `ABCAIOSFODNN7EXAMPLE1`.
- Under "Secret Key", type your secret key. Por ejemplo, `aBcJalrXUtnWXYZ/A1MDENG/zPxRfiCYEXAMPLEKEY`.
{% data reusables.audit_log.streaming-check-s3-endpoint %}
{% data reusables.enterprise.verify-audit-log-streaming-endpoint %}
{% ifversion streaming-oidc-s3 %}
#### Setting up streaming to S3 with OpenID Connect
1. In AWS, add the {% data variables.product.prodname_dotcom %} OIDC provider to IAM. For more information, see [Creating OpenID Connect (OIDC) identity providers](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) in the AWS documentation.
- For the provider URL, use `https://oidc-configuration.audit-log.githubusercontent.com`.
- For "Audience", use `sts.amazonaws.com`.
1. Create a bucket, and block public access to the bucket. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the AWS documentation.
1. Create a policy that allows {% data variables.product.company_short %} to write to the bucket. {% data variables.product.prodname_dotcom %} requires only the following permissions.
```
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::example-bucket/*"
}
]
}
```
For more information, see [Creating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) in the AWS documentation.
1. Configure the role and trust policy for the {% data variables.product.prodname_dotcom %} IdP. For more information, see [Creating a role for web identity or OpenID Connect Federation (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html) in the AWS documentation.
- Add the permissions policy you created above to allow writes to the bucket.
- Edit the trust relationship to add the `sub` field to the validation conditions, replacing `ENTERPRISE` with the name of your enterprise.
```
"Condition": {
"StringEquals": {
"oidc-configuration.audit-log.githubusercontent.com:aud": "sts.amazonaws.com",
"oidc-configuration.audit-log.githubusercontent.com:sub": "https://github.com/ENTERPRISE"
}
}
```
- Make note of the Amazon Resource Name (ARN) of the created role.
{% data reusables.enterprise.navigate-to-log-streaming-tab %}
{% data reusables.audit_log.streaming-choose-s3 %}
1. Under "Authentication", click **OpenID Connect**.
![Screenshot of the authentication options for streaming to Amazon S3](/assets/images/help/enterprises/audit-log-streaming-s3-oidc.png)
1. Configure the stream settings.
- Under "Bucket", type the name of the bucket you want to stream to. Por ejemplo, `auditlog-streaming-test`.
- Under "ARN Role" type the ARN role you noted earlier. For example, `arn:aws::iam::1234567890:role/github-audit-log-streaming-role`.
{% data reusables.audit_log.streaming-check-s3-endpoint %}
{% data reusables.enterprise.verify-audit-log-streaming-endpoint %}
{% endif %}
### Configurar la transmisión hacia Azure Blob Storage
Antes de configurar una transmisión en {% data variables.product.prodname_dotcom %}, primero debes haber creado una cuenta de almacenamiento y un contenedor en Microsoft Azure. Para obtener más detalles, consulta la sección de "[Introducción a Azure Blob Storage](https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction)" em la documentación de Microsoft.

View File

@@ -11,9 +11,9 @@ topics:
## Acerca de {% data variables.product.prodname_ghe_managed %}
{% data reusables.github-ae.github-ae-enables-you %} {% data variables.product.prodname_ghe_managed %} is fully managed, reliable, and scalable, allowing you to accelerate delivery while improving your risk and compliance posture.
{% data reusables.github-ae.github-ae-enables-you %} {% data variables.product.prodname_ghe_managed %} es integralmente administrado, confiable y escalable, lo cuál te permite acelerar la entrega mientras mejoras tu postura de cumplimiento y riesgos.
{% data variables.product.prodname_ghe_managed %} ofrece una plataforma de desarrollo que va desde la idea hasta la producción. You can increase development velocity with the tools that teams know and love, while you maintain industry and regulatory compliance with security and access controls, workflow automation, and policy enforcement.
{% data variables.product.prodname_ghe_managed %} ofrece una plataforma de desarrollo que va desde la idea hasta la producción. Puedes incrementar la velocidad de desarrollo con las herramientas que los equipos conocen y adoran mientras mantienes el cumplimiento regulatorio y de la industria con controles de acceso y seguridad, automatización de flujos de trabajo y requerimiento de políticas únicos.
## Una nube de disponibilidad alta y escala planetaria
@@ -21,13 +21,13 @@ topics:
## Residencia de los datos
Todos tus datos se almacenan dentro de la región geográfica de tu elección. You can comply with GDPR data residency requirements and global data protection standards by keeping all of your data within your chosen region.
Todos tus datos se almacenan dentro de la región geográfica de tu elección. Puedes cumplir con los requisitos de residencia de datos de la RGPD y con los estándares de protección de datos globales si mantienes todos tus datos dentro de tu región elegida.
## Cuentas aisladas
By default, all developer accounts on {% data variables.product.product_name %} are fully isolated from other services, including products from {% data variables.product.company_short %}. You can control the accounts through your identity provider, with SAML single sign-on as mandatory. El SCIM te permite garantizar que los empleados solo tengan acceso a los recursos que necesitan, de acuerdo como se define en tu sistema central de administración de identidades. Para obtener más información, consulta la sección "[Administrar el acceso y la identidad en tu empresa](/admin/authentication/managing-identity-and-access-for-your-enterprise)".
Predeterminadamente, todas las cuentas de desarrollador en {% data variables.product.product_name %} se aíslan completamente de otros servicios, incluyendo de los productos de {% data variables.product.company_short %}. Puedes controlar las cuentas mediante tu proveedor de identidad, cuando el inicio de sesión único de SAML es obligatorio. El SCIM te permite garantizar que los empleados solo tengan acceso a los recursos que necesitan, de acuerdo como se define en tu sistema central de administración de identidades. Para obtener más información, consulta la sección "[Administrar el acceso y la identidad en tu empresa](/admin/authentication/managing-identity-and-access-for-your-enterprise)".
Optionally, enterprise owners can enable limited integration between {% data variables.product.product_name %} and {% data variables.product.prodname_dotcom_the_website %}. Para obtener más información, consulta "[Acerca de {% data variables.product.prodname_github_connect %}](/admin/configuration/configuring-github-connect/about-github-connect)."
Opcionalmente, los propietarios de las empresas pueden habilitar la integración limitada entre {% data variables.product.product_name %} y {% data variables.product.prodname_dotcom_the_website %}. Para obtener más información, consulta "[Acerca de {% data variables.product.prodname_github_connect %}](/admin/configuration/configuring-github-connect/about-github-connect)."
## Acceso restringido a las redes

View File

@@ -118,13 +118,13 @@ Si configuras la autenticación de SAML para {% data variables.product.product_l
- La cuenta de usuario de Linux del `administrador` ha controlado el acceso al sistema operativo subyacente, incluido el sistema de archivos directo y el acceso a la base de datos. Un pequeño conjunto de administradores de confianza debería tener acceso a esta cuenta, a la que pueden acceder por medio de SSH. Para obtener más información, consulta "[Acceder al shell administrativo (SSH)](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh)".
- Las cuentas de usuario en la aplicación web de la instancia tienen acceso total a sus propios datos y a cualquier otros que los usuarios u organizaciones otorguen acceso explícitamente.
- Site administrators in the instance's web application are user accounts that can manage high-level web application and instance settings, user and organization account settings, and repository data.
- Los administradores de sitio en la aplicación web de la instancia son cuentas de usuario que pueden administrar ajustes de instancia y aplicación web de alto nivel, ajustes de cuenta de organización y de usuario y datos de repositorio.
For more information about {% data variables.product.product_name %}'s user permissions, see "[Access permissions on {% data variables.product.prodname_dotcom %}](/get-started/learning-about-github/access-permissions-on-github)."
Para obtener más información sobre los permisos de usuario de {% data variables.product.product_name %}, consulta la sección "[Permisos de acceso en {% data variables.product.prodname_dotcom %}](/get-started/learning-about-github/access-permissions-on-github)".
### Autenticación
{% data variables.product.product_name %} provides four authentication methods.
{% data variables.product.product_name %} proporciona cuatro métodos de autenticación.
- La autenticación de claves públicas SSH proporciona acceso del repositorio usando Git y el shell administrativo. Para obtener más información, consulta "[Acerca de SSH](/authentication/connecting-to-github-with-ssh/about-ssh)" y "[Acceder al shell administrativo (SSH)](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh)."
- El nombre de usuario y la autenticación de contraseña con cookies HTTP proporciona acceso a la aplicación web y la gestión de sesiones, con autenticación opcional de dos factores (2FA). Para obtener más información, consulta ña sección "[Utilizar la autenticación integrada](/admin/identity-and-access-management/authenticating-users-for-your-github-enterprise-server-instance/using-built-in-authentication)".
@@ -133,7 +133,7 @@ For more information about {% data variables.product.product_name %}'s user perm
### Auditoría y registro de acceso
{% data variables.product.product_name %} stores both traditional operating system and application logs. The application also writes detailed auditing and security logs, which {% data variables.product.product_name %} stores permanently. Puedes reenviar ambos tipos de bitácoras en tiempo real a varios destinos a través del protocolo `syslog-ng`. For more information, see "[About the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise)" and "[Log forwarding](/admin/monitoring-activity-in-your-enterprise/exploring-user-activity/log-forwarding)."
{% data variables.product.product_name %} almacena tanto sistemas operativos tradicionales como bitácoras de aplicación. La aplicación también escribe bitácoras de seguridad y de auditoría detalladas, las cuales {% data variables.product.product_name %} almacena premanentemente. Puedes reenviar ambos tipos de bitácoras en tiempo real a varios destinos a través del protocolo `syslog-ng`. Para obtener más información, consulta las secciones "[Acerca de la bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/about-the-audit-log-for-your-enterprise)" y "[Reenvío de bitácoras](/admin/monitoring-activity-in-your-enterprise/exploring-user-activity/log-forwarding)".
Los registros de acceso y de auditoría incluyen información como la siguiente.
@@ -150,11 +150,11 @@ Los registros de acceso y de auditoría incluyen información como la siguiente.
- Eventos push de repositorio, permisos de acceso, transferencias y renombres
- Cambios de membresía de la organización, incluida la creación y la destrucción de equipo
## Open source dependencies for {% data variables.product.product_name %}
## Dependencias de código abierto para {% data variables.product.product_name %}
You can see a complete list of dependencies in your instance's version of {% data variables.product.product_name %}, as well as each project's license, at `http(s)://HOSTNAME/site/credits`.
Puedes ver una lista completa de dependencias en la versión de {% data variables.product.product_name %} de tu instancia, así como la licencia de cada proyecto, en `http(s)://HOSTNAME/site/credits`.
Tarballs with a full list of dependencies and associated metadata are available on your instance.
Las tarballs con una lista completa de dependencias y los metadatos asociados están disponibles en tu instancia.
- Para conocer las dependencias comunes a todas las plataformas, ingresa en `/usr/local/share/enterprise/dependencies-<GHE version>-base.tar.gz`.
- Para conocer las dependencias específicas de una plataforma, ingresa en `/usr/local/share/enterprise/dependencies-<GHE version>-<platform>.tar.gz`.

View File

@@ -105,9 +105,7 @@ Otros modos de MinIO siguen disponibles con el soporte estándar.
minio/minio gateway nas /data
```
Para obtener más información, consulta la sección "[Puerta de enlace de MinIO para NAS](https://docs.min.io/docs/minio-gateway-for-nas.html)".
* Ejecuta MinIO utilizando Docker como un agrupamiento. Este despliegue de MinIO utiliza diversos hosts y el código de borrado de MinIO para tener la mayor protección de los datos. Para ejecutar MinIO en modo de agrupamiento, consulta la "[Guía Rápida para MinIO Distribuído](https://docs.min.io/docs/distributed-minio-quickstart-guide.html).
* Ejecuta MinIO utilizando Docker como un agrupamiento. Este despliegue de MinIO utiliza diversos hosts y el código de borrado de MinIO para tener la mayor protección de los datos. Para ejecutar MinIO en modo de agrupamiento, consulta la "[Guía Rápida para MinIO Distribuído](https://docs.min.io/docs/distributed-minio-quickstart-guide.html)."
## 3. Crea tu bucket de MinIO para {% data variables.product.prodname_registry %}

View File

@@ -100,7 +100,9 @@ En todas las organizaciones que le pertenecen a tu empresa, puedes permitir que
{% data reusables.enterprise-accounts.repo-creation-policy %}
{% data reusables.enterprise-accounts.repo-creation-types %}
{% else %}
6. En "Creación de repositorios", usa el menú desplegable y elige una política. ![Menú desplegable con políticas para creación de repositorio](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png)
6. En "Creación de repositorios", usa el menú desplegable y elige una política.
![Menú desplegable con políticas para creación de repositorio](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png)
{% endif %}
## Requerir una política para bifurcar repositorios privados o internos
@@ -111,7 +113,16 @@ En todas las organizaciones que pertenezcan a tu empresa, puedes permitir o proh
{% data reusables.enterprise-accounts.policies-tab %}
{% data reusables.enterprise-accounts.repositories-tab %}
3. Debajo de "Bifurcación de repositorios", revisa la información sobre cómo cambiar el ajuste. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %}
4. En "Bifurcación de repositorios", usa el menú desplegable y elige una política. ![Menú desplegable con opciones de políticas de bifurcación de repositorios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png)
4. En "Bifurcación de repositorios", usa el menú desplegable y elige una política.
![Menú desplegable con opciones de políticas de bifurcación de repositorios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png)
{% ifversion innersource-fork-policies %}
5. If forking is enabled, you can specify where users are allowed to fork repositories. Review the information about changing the setting and choose a policy.
![Screenshot showing the list of repository forking policy options](/assets/images/help/business-accounts/repository-forking-policy-settings.png)
{% endif %}
## Requerir una política para invitar colaboradores{% ifversion ghec %} externos{% endif %} a los repositorios
@@ -122,6 +133,7 @@ En todas las organizaciones que pertenezcan a tu empresa, puedes permitir que lo
{% data reusables.enterprise-accounts.repositories-tab %}
3. Debajo de "{% ifversion ghec %}Colaboradores externos{% elsif ghes or ghae %}Invitaciones{% endif %} de repositorio", revisa la información sobre cómo cambiar el ajuste. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %}
4. Debajo de "{% ifversion ghec %}Colaboradores externos{% elsif ghes or ghae %}Invitaciones{% endif %} de repositorio", utiliza el menú desplegable y elige una política.
{% ifversion ghec %}
![Menú desplegable con opciones de políticas de invitación de colaboradores externos](/assets/images/help/business-accounts/repository-invitation-policy-drop-down.png)
{% elsif ghes or ghae %}
@@ -173,7 +185,9 @@ En todas las organizaciones que pertenezcan a tu empresa, puedes permitir que lo
{% data reusables.enterprise-accounts.access-enterprise %}
{% data reusables.enterprise-accounts.policies-tab %}
3. En la pestaña **Políticas de repositorios**, en "Eliminación de propuestas en los repositorios", revisa la información acerca de los cambios en la configuración. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %}
4. En "Eliminación de propuestas en los repositorios", usa el menú desplegable y elige una política. ![Menú desplegable con opciones de políticas de eliminación de propuestas](/assets/images/help/business-accounts/repository-issue-deletion-policy-drop-down.png)
4. En "Eliminación de propuestas en los repositorios", usa el menú desplegable y elige una política.
![Menú desplegable con opciones de políticas de eliminación de propuestas](/assets/images/help/business-accounts/repository-issue-deletion-policy-drop-down.png)
{% ifversion ghes or ghae %}

View File

@@ -1,6 +1,6 @@
---
title: Restoring a deleted organization
intro: 'You can partially restore an organization that was previously deleted on {% data variables.product.product_location %}.'
title: Restablecer una organización borrada
intro: 'Puedes restablecer parcialmente una organización que se borró previamente en {% data variables.product.product_location %}.'
versions:
ghes: '*'
type: how_to
@@ -8,22 +8,22 @@ topics:
- Administrator
- Enterprise
- Organizations
shortTitle: Restore organization
shortTitle: Restablecer organización
permissions: 'Site administers can restore an organization on {% data variables.product.product_name %}.'
---
## About organization restoration
## Acerca del restablecimiento de una organización
You can use the site admin dashboard to restore an organization that was previously deleted on {% data variables.product.product_location %}, as long as the audit log Elasticsearch indices contain the data for the `org.delete` event.
Puedes utilizar el tablero de administrador de sitio para restablecer una organización que se borró previamente en {% data variables.product.product_location %}, siempre y cuando los índices de Elasticsearch de la bitácora de auditoría contengan los datos del evento `org.delete`.
Immediately after you restore an organization, the organization will not be exactly the same as it was prior to the deletion. You'll have to manually restore any repositories that were owned by the organization. Para obtener más información, consulta "[Restaurar un repositorio eliminado](/admin/user-management/managing-repositories-in-your-enterprise/restoring-a-deleted-repository)".
Inmediatamente después de que restableces una organización, esta no será exactamente la misma que fue antes del borrado. Tendrás que restablecer manualmente cualquier repositorio que le haya pertenecido a la organización. Para obtener más información, consulta "[Restaurar un repositorio eliminado](/admin/user-management/managing-repositories-in-your-enterprise/restoring-a-deleted-repository)".
You can also use the audit log to help you manually re-add teams and organization members. For more information, see "[Restoring members and teams](#restoring-members-and-teams)."
También puedes utilizar la bitácora de auditoría para ayudarte a volver a agregar manualmente a los miembros de las organizaciones y de los equipos. Para obtener más información, consulta la sección "[Restablecer a los miembros y equipos](#restoring-members-and-teams)".
## Restoring an organization
## Restablecer una organización
{% data reusables.enterprise_site_admin_settings.access-settings %}
1. Under "Search users, organizations, enterprises, teams, repositories, gists, and applications", search for the organization.
1. Dabjo de "Buscar usuarios, organizacioens, empresas, equipos, repositorios, gists y aplicaciones", busca a la organización.
![Captura de pantalla del campo y botón de búsqueda](/assets/images/enterprise/stafftools/search-field.png)

View File

@@ -17,6 +17,13 @@ topics:
- Enterprise
- Licensing
---
{% ifversion ghec %}
{% data reusables.enterprise-accounts.dormant-user-release-phase %}
{% endif %}
## About dormant users
{% data reusables.enterprise-accounts.dormant-user-activity %}
{% ifversion ghes or ghae%}
@@ -52,9 +59,6 @@ topics:
{% endif %}
{% ifversion ghec %}
{% data reusables.enterprise-accounts.dormant-user-release-phase %}
## Downloading the dormant users report from your enterprise account
{% data reusables.enterprise-accounts.access-enterprise %}

View File

@@ -31,7 +31,7 @@ shortTitle: Export data from GitHub.com
{% data reusables.enterprise_migrations.fork-persistence %}
To export repository data from {% data variables.product.prodname_dotcom_the_website %}, use <a href="/rest/reference/migrations" class="dotcom-only">the Migrations API</a>.
To export repository data from {% data variables.product.prodname_dotcom_the_website %}, use [the Migrations API](/free-pro-team@latest/rest/reference/migrations).
The Migrations API is currently in a preview period, which means that the endpoints and parameters may change in the future.
## Generating a migration archive
@@ -40,13 +40,13 @@ The Migrations API is currently in a preview period, which means that the endpoi
1. Notify members of your organization that you'll be performing a migration. The export can take several minutes, depending on the number of repositories being exported. The full migration including import may take several hours so we recommend doing a trial run in order to determine how long the full process will take. For more information, see "[About Migrations](/enterprise/admin/migrations/about-migrations#types-of-migrations)."
2. Start a migration by sending a `POST` request to <a href="/rest/reference/migrations#start-an-organization-migration" class="dotcom-only">the migration endpoint</a>. You'll need:
2. Start a migration by sending a `POST` request to [the migration endpoint](/free-pro-team@latest/rest/reference/migrations#start-an-organization-migration). You'll need:
* Your access token for authentication.
* A [list of the repositories](/rest/reference/repos#list-organization-repositories) you want to migrate:
* A [list of the repositories](/free-pro-team@latest/rest/reference/repos#list-organization-repositories) you want to migrate:
```shell
curl -H "Authorization: token <em>GITHUB_ACCESS_TOKEN</em>" \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Accept: application/vnd.github+json" \
-d'{"lock_repositories":true,"repositories":["<em>orgname</em>/<em>reponame</em>", "<em>orgname</em>/<em>reponame</em>"]}' \
https://api.github.com/orgs/<em>orgname</em>/migrations
```
@@ -55,12 +55,12 @@ The Migrations API is currently in a preview period, which means that the endpoi
This request returns a unique `id` which represents your migration. You'll need it for subsequent calls to the Migrations API.
3. Send a `GET` request to <a href="/rest/reference/migrations#get-an-organization-migration-status" class="dotcom-only">the migration status endpoint</a> to fetch the status of a migration. You'll need:
3. Send a `GET` request to [the migration status endpoint](/free-pro-team@latest/rest/reference/migrations#get-an-organization-migration-status) to fetch the status of a migration. You'll need:
* Your access token for authentication.
* The unique `id` of the migration:
```shell
curl -H "Authorization: token <em>GITHUB_ACCESS_TOKEN</em>" \
-H "Accept: application/vnd.github.v3+json" \
-H "Accept: application/vnd.github+json" \
https://api.github.com/orgs/<em>orgname</em>/migrations/<em>id</em>
```
@@ -70,23 +70,23 @@ The Migrations API is currently in a preview period, which means that the endpoi
* `exported`, which means the migration finished successfully.
* `failed`, which means the migration failed.
4. After your migration has exported, download the migration archive by sending a `GET` request to <a href="/rest/reference/migrations#download-an-organization-migration-archive" class="dotcom-only">the migration download endpoint</a>. You'll need:
4. After your migration has exported, download the migration archive by sending a `GET` request to [the migration download endpoint](/free-pro-team@latest/rest/reference/migrations#download-an-organization-migration-archive). You'll need:
* Your access token for authentication.
* The unique `id` of the migration:
```shell
curl -H "Authorization: token <em>GITHUB_ACCESS_TOKEN</em>" \
-H "Accept: application/vnd.github.v3+json" \
-H "Accept: application/vnd.github+json" \
-L -o migration_archive.tar.gz \
https://api.github.com/orgs/<em>orgname</em>/migrations/<em>id</em>/archive
```
5. The migration archive is automatically deleted after seven days. If you would prefer to delete it sooner, you can send a `DELETE` request to <a href="/rest/reference/migrations#delete-an-organization-migration-archive" class="dotcom-only">the migration archive delete endpoint</a>. You'll need:
5. The migration archive is automatically deleted after seven days. If you would prefer to delete it sooner, you can send a `DELETE` request to [the migration archive delete endpoint](/free-pro-team@latest/free-pro-team@latest/rest/reference/migrations#delete-an-organization-migration-archive). You'll need:
* Your access token for authentication.
* The unique `id` of the migration:
```shell
curl -H "Authorization: token <em>GITHUB_ACCESS_TOKEN</em>" \
-X DELETE \
-H "Accept: application/vnd.github.v3+json" \
-H "Accept: application/vnd.github+json" \
https://api.github.com/orgs/<em>orgname</em>/migrations/<em>id</em>/archive
```
{% data reusables.enterprise_migrations.ready-to-import-migrations %}

View File

@@ -129,7 +129,7 @@ Después de que se aplique tu migración a tu instancia destino y la hayas revis
### Desbloquear los repositorios de una organización en {% data variables.product.prodname_dotcom_the_website %}
Para desbloquear los repositorios en una organización{% data variables.product.prodname_dotcom_the_website %}, debes enviar una solicitud de `DELETE` <a href="/rest/reference/migrations#unlock-an-organization-repository" class="dotcom-only">al punto final de desbloqueo de migración</a>. Necesitarás:
Para desbloquear los repositorios en una organización{% data variables.product.prodname_dotcom_the_website %}, debes enviar una solicitud de `DELETE` [al punto final de desbloqueo de migración](/free-pro-team@latest/rest/reference/migrations#unlock-an-organization-repository). Necesitarás:
* Tu token de acceso para autenticación
* El `id` único de la migración
* El nombre del repositorio a desbloquear

View File

@@ -68,7 +68,9 @@ Las {% data variables.product.prodname_oauth_apps %} pueden solicitar diferentes
| Organizaciones y equipos | El acceso a organizaciones y equipos permite que las apps accedan y administren la membresía de la organización y del equipo. |
| Datos personales del usuario | Entre los datos del usuario se incluye información que se encuentra en tu perfil de usuario, como tu nombre, dirección de correo electrónico y ubicación. |
| Repositorios | La información del repositorio incluye los nombres de los colaboradores, las ramas que creaste y los archivos actuales dentro de tu repositorio. Las apps pueden solicitar acceso a repositorios públicos o privados a nivel del usuario. |
| Eliminación de repositorio | Las apps pueden solicitar la eliminación de los repositorios que administras,, pero no tendrán acceso a tu código. |
| Eliminación de repositorio | Las apps pueden solicitar la eliminación de los repositorios que administras,, pero no tendrán acceso a tu código. |{% ifversion projects-oauth-scope %}
| Proyectos | Acceso a los proyectos (beta) de usuarios y organizaciones. Las apps pueden solicitar ya sea un acceso de lectura/escritura o de solo lectura.
{% endif %}
## Solicitar permisos actualizados

View File

@@ -31,7 +31,7 @@ Recomendamos encarecidamente el uso de una contraseña única basada en el tiemp
{% ifversion fpt or ghec %}
Si eres miembro de una {% data variables.product.prodname_emu_enterprise %}, no podrás configurar la 2FA para tu cuenta de {% data variables.product.prodname_managed_user %}. La 2FA debe configurarse mediante tu proveedor de identidad.
Si eres miembro de una {% data variables.product.prodname_emu_enterprise %}, no puedes configurar la 2FA para tu cuenta de {% data variables.product.prodname_managed_user %} a menos de que hayas iniciado sesión como el usuario configurado. Para los usuarios diferentes al usuario configurado, un administrador debe configurar la 2FA en tu proveedor de identidad (IdP).
{% endif %}

View File

@@ -48,6 +48,7 @@ children:
- /managing-billing-for-github-actions
- /managing-billing-for-github-codespaces
- /managing-billing-for-github-packages
- /managing-billing-for-github-copilot
- /managing-billing-for-github-advanced-security
- /managing-billing-for-github-sponsors
- /managing-billing-for-github-marketplace-apps

View File

@@ -0,0 +1,21 @@
---
title: About billing for GitHub Copilot
intro: 'If you want to use {% data variables.product.prodname_copilot %}, you need a subscription for your {% data variables.product.prodname_dotcom %} account.'
versions:
feature: copilot
topics:
- Copilot
shortTitle: Billing for GitHub Copilot
---
## Acerca de la facturación para {% data variables.product.prodname_copilot %}
If you want to use {% data variables.product.prodname_copilot %}, you will need a subscription for your {% data variables.product.prodname_dotcom %} personal account. Para obtener más información acerca de las {% data variables.product.prodname_copilot %}, consulta la sección "[Acerca del {% data variables.product.prodname_copilot %}](/en/copilot/overview-of-github-copilot/about-github-copilot)".
Before starting a paid subscription, you can set up a one-time 60-day trial to evaluate {% data variables.product.prodname_copilot %}. To begin a trial, you will need to choose a monthly or yearly billing cycle, and provide a payment method. If you do not cancel the trial before the end of the 60 days, the trial will automatically convert to a paid subscription. You can cancel your {% data variables.product.prodname_copilot %} trial at any time during the 60 days and you won't be charged. If you cancel before the end of the trial, you will continue to have access to {% data variables.product.prodname_copilot %} until the 60-day trial period ends. For more information, see "[Managing your GitHub Copilot subscription](/en/billing/managing-billing-for-github-copilot/managing-your-github-copilot-subscription)".
## Precios de {% data variables.product.prodname_copilot %}
The {% data variables.product.prodname_copilot %} subscription is available on a monthly or yearly cycle. If you choose a monthly billing cycle, you will be billed $10 per calendar month. If you choose a yearly billing cycle, you will be billed $100 per year. You can modify your billing cycle at any time, and the modification will be reflected from the start of your next billing cycle.
A free subscription for {% data variables.product.prodname_copilot %} is available to verified students, and maintainers of popular open-source repositories on {% data variables.product.company_short %}. If you meet the criteria as an open source maintainer, you will be automatically notified when you visit the {% data variables.product.prodname_copilot %} subscription page. As a student, if you currently receive the {% data variables.product.prodname_student_pack %}, you will also be offered a free subscription when you visit the {% data variables.product.prodname_copilot %} subscription page. For more information about the {% data variables.product.prodname_student_pack %}, see "[Apply for a student developer pack](/free-pro-team@latest/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-for-your-schoolwork/apply-for-a-student-developer-pack)."

View File

@@ -0,0 +1,11 @@
---
title: Managing billing for GitHub Copilot
shortTitle: Copiloto de GitHub
intro: 'You can try {% data variables.product.prodname_copilot %} with a free trial before starting your subscription, and modify or cancel your subscription at any time.'
versions:
feature: copilot
children:
- /about-billing-for-github-copilot
- /managing-your-github-copilot-subscription
---

View File

@@ -0,0 +1,49 @@
---
title: Managing your GitHub Copilot subscription
intro: 'Set up your {% data variables.product.prodname_copilot %} trial and manage your subscription.'
versions:
feature: copilot
type: how_to
topics:
- Copilot
shortTitle: Your GitHub Copilot subscription
---
## Setting up a trial of {% data variables.product.prodname_copilot %}
{% data reusables.copilot.signup-procedure %}
## Modifying your {% data variables.product.prodname_copilot %} subscription
{% data reusables.user-settings.access_settings %}
{% data reusables.user-settings.billing_plans %}
1. In the "{% data variables.product.prodname_copilot %}" section, select the **Edit** dropdown.
- If you are on a monthly billing cycle, select **Change to yearly billing**.
- If you are on a yearly billing cycle, select **Change to monthly billing**. ![Screenshot of GitHub Copilot section on billing page with edit dropdown emphasized](/assets/images/help/copilot/copilot-settings-edit-dropdown.png)
## Canceling your {% data variables.product.prodname_copilot %} subscription
You can cancel your {% data variables.product.prodname_copilot %} subscription at any time. If you cancel during your 60 day trial, you won't be charged. If you do not cancel your {% data variables.product.prodname_copilot %} subscription before the end of the 60 day trial, you will be charged according to the billing cycle you selected when setting up the trial.
{% data reusables.user-settings.access_settings %}
{% data reusables.user-settings.billing_plans %}
1. In the "{% data variables.product.prodname_copilot %}" section, select the **Edit** dropdown.
- If you have a paid subscription, click **Cancel {% data variables.product.prodname_copilot %}**.
![Screenshot of GitHub Copilot section on billing page with cancel GitHub Copilot option emphasized](/assets/images/help/copilot/copilot-billing-edit-dropdown.png)
- If you are within your 60 day trial period, click **Cancel trial**. ![Screenshot of GitHub Copilot section on billing page with cancel trial option emphasized](/assets/images/help/copilot/copilot-cancel-trial.png)
2. In the "Cancel {% data variables.product.prodname_copilot %}" modal, click **I understand, cancel {% data variables.product.prodname_copilot %}**
![Screenshot of GitHub Copilot cancel modal with I understand, cancel GitHub Copilot button emphasized](/assets/images/help/copilot/copilot-cancel-modal.png)
- If you are within your 60 day trial period, click **I understand, cancel {% data variables.product.prodname_copilot %} trial**.
![Screenshot of GitHub Copilot cancel trial modal with I understand, cancel trial button emphasized](/assets/images/help/copilot/copilot-trial-cancel-modal.png)
## Leer más
- [Acerca de {% data variables.product.prodname_copilot %}](/copilot/overview-of-github-copilot/about-github-copilot)
- [Getting started with {% data variables.product.prodname_copilot %}](/copilot/getting-started-with-github-copilot)

View File

@@ -14,7 +14,7 @@ shortTitle: Troubleshoot license usage
## About unexpected license usage
If the number of consumed licenses for your enterprise is unexpected, you can review your consumed license report to audit your license usage across all your enterprise deployments and subscriptions. If you find errors, you can try troubleshooting steps. For more information about viewing your license usage, see "[Viewing license usage for GitHub Enterprise](/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise)" and "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)."
If the number of consumed licenses for your enterprise is unexpected, you can review your consumed license report to audit your license usage across all your enterprise deployments and subscriptions. If you find errors, you can try troubleshooting steps. Para obtener más información sobre cómo ver tu uso de licencia, consulta la sección "[Ver el uso de licencia para GitHub Enterprise](/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise)" y "[Ver la suscripción y el uso de tu cuenta empresarial](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)".
For privacy reasons, enterprise owners cannot directly access the details of user accounts.
@@ -67,7 +67,7 @@ There are two especially common reasons for inaccurate or incorrect license seat
- The email addresses associated with a user do not match across your enterprise deployments and subscriptions.
- An email address for a user was recently updated or verified to correct a mismatch, but a license sync job hasn't run since the update was made.
When attempting to match users across enterprises, {% data variables.product.company_short %} identifies individuals by the verified email addresses associated with their {% data variables.product.prodname_dotcom_the_website %} account, and the primary email address associated with their {% data variables.product.prodname_ghe_server %} account and/or the email address assigned to the {% data variables.product.prodname_vs_subscriber %}.
Cuando se intenta coincidir con usuarios a lo largo de las empresas, {% data variables.product.company_short %} identifica a los individuos mediante las direcciones de correo electrónico verificadas y asociadas con sus cuentas de {% data variables.product.prodname_dotcom_the_website %} y mediante la dirección de correo electrónico asociada con su cuenta de {% data variables.product.prodname_ghe_server %}o aquella asignada al {% data variables.product.prodname_vs_subscriber %}.
Your license usage is recalculated shortly after each license sync is performed. You can view the timestamp of the last license sync job, and, if a job hasn't run since an email address was updated or verified, to resolve an issue with your consumed license report you can manually trigger one. For more information, see "[Syncing license usage between GitHub Enterprise Server and GitHub Enterprise Cloud](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."

View File

@@ -74,7 +74,7 @@ By default, the {% data variables.product.prodname_codeql_workflow %} uses the `
If you scan on push, then the results appear in the **Security** tab for your repository. For more information, see "[Managing code scanning alerts for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository#viewing-the-alerts-for-a-repository)."
{% ifversion fpt or ghes > 3.2 or ghae or ghec %}
Additionally, when an `on:push` scan returns results that can be mapped to an open pull request, these alerts will automatically appear on the pull request in the same places as other pull request alerts. The alerts are identified by comparing the existing analysis of the head of the branch to the analysis for the target branch. For more information on {% data variables.product.prodname_code_scanning %} alerts in pull requests, see "[Triaging {% data variables.product.prodname_code_scanning %} alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)."
Additionally, when an `on:push` scan returns results that can be mapped to an open pull request, these alerts will automatically appear on the pull request in the same places as other pull request alerts. The alerts are identified by comparing the existing analysis of the head of the branch to the analysis for the target branch. For more information on {% data variables.product.prodname_code_scanning %} alerts in pull requests, see "[Triaging {% data variables.product.prodname_code_scanning %} alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)."
{% endif %}
### Scanning pull requests
@@ -97,7 +97,7 @@ By default, only alerts with the severity level of `Error`{% ifversion fpt or gh
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-settings %}
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
1. Under "Code scanning", to the right of "Check Failure", use the drop-down menu to select the level of severity you would like to cause a pull request check failure.
1. Under "Code scanning", to the right of "Check Failure", use the drop-down menu to select the level of severity you would like to cause a pull request check failure.
{% ifversion fpt or ghes > 3.1 or ghae or ghec %}
![Check failure setting](/assets/images/help/repository/code-scanning-check-failure-setting.png)
{% else %}
@@ -280,7 +280,7 @@ jobs:
{% ifversion fpt or ghes > 3.1 or ghae or ghec %}
## Configuring a category for the analysis
Use `category` to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code. The category you specify in your workflow will be included in the SARIF results file.
Use `category` to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code. The category you specify in your workflow will be included in the SARIF results file.
This parameter is particularly useful if you work with monorepos and have multiple SARIF files for different components of the monorepo.
@@ -289,7 +289,7 @@ This parameter is particularly useful if you work with monorepos and have multip
uses: {% data reusables.actions.action-codeql-action-analyze %}
with:
# Optional. Specify a category to distinguish between multiple analyses
# for the same tool and ref. If you don't use `category` in your workflow,
# for the same tool and ref. If you don't use `category` in your workflow,
# GitHub will generate a default category name for you
category: "my_category"
```
@@ -298,7 +298,7 @@ If you don't specify a `category` parameter in your workflow, {% data variables.
- The `.github/workflows/codeql-analysis.yml` workflow and the `analyze` action will produce the category `.github/workflows/codeql.yml:analyze`.
- The `.github/workflows/codeql-analysis.yml` workflow, the `analyze` action, and the `{language: javascript, os: linux}` matrix variables will produce the category `.github/workflows/codeql-analysis.yml:analyze/language:javascript/os:linux`.
The `category` value will appear as the `<run>.automationDetails.id` property in SARIF v2.1.0. For more information, see "[SARIF support for {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/sarif-support-for-code-scanning#runautomationdetails-object)."
The `category` value will appear as the `<run>.automationDetails.id` property in SARIF v2.1.0. For more information, see "[SARIF support for {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/sarif-support-for-code-scanning#runautomationdetails-object)."
Your specified category will not overwrite the details of the `runAutomationDetails` object in the SARIF file, if included.
@@ -321,13 +321,17 @@ To add one or more {% data variables.product.prodname_codeql %} query packs (bet
{% endnote %}
In the example below, `scope` is the organization or personal account that published the package. When the workflow runs, the three {% data variables.product.prodname_codeql %} query packs are downloaded from {% data variables.product.product_name %} and the default queries or query suite for each pack run. The latest version of `pack1` is downloaded as no version is specified. Version 1.2.3 of `pack2` is downloaded, as well as the latest version of `pack3` that is compatible with version 1.2.3.
In the example below, `scope` is the organization or personal account that published the package. When the workflow runs, the four {% data variables.product.prodname_codeql %} query packs are downloaded from {% data variables.product.product_name %} and the default queries or query suite for each pack run:
- The latest version of `pack1` is downloaded and all default queries are run.
- Version 1.2.3 of `pack2` is downloaded and all default queries are run.
- The latest version of `pack3` that is compatible with version 3.2.1 is downloaded and all queries are run.
- Version 4.5.6 of `pack4` is downloaded and only the queries found in `path/to/queries` are run.
``` yaml
- uses: {% data reusables.actions.action-codeql-action-init %}
with:
# Comma-separated list of packs to download
packs: scope/pack1,scope/pack2@1.2.3,scope/pack3@~1.2.3
packs: scope/pack1,scope/pack2@1.2.3,scope/pack3@~3.2.1,scope/pack4@4.5.6:path/to/queries
```
### Using queries in QL packs
@@ -360,7 +364,7 @@ In the following example, the `+` symbol ensures that the specified additional {
config-file: ./.github/codeql/codeql-config.yml
queries: +security-and-quality,octo-org/python-qlpack/show_ifs.ql@main
{%- ifversion codeql-packs %}
packs: +scope/pack1,scope/pack2@v1.2.3
packs: +scope/pack1,scope/pack2@1.2.3,scope/pack3@4.5.6:path/to/queries
{%- endif %}
```
@@ -397,16 +401,24 @@ You specify {% data variables.product.prodname_codeql %} query packs in an array
{% raw %}
``` yaml
packs:
packs:
# Use the latest version of 'pack1' published by 'scope'
- scope/pack1
# Use version 1.23 of 'pack2'
- scope/pack2@v1.2.3
# Use the latest version of 'pack3' compatible with 1.23
- scope/pack3@~1.2.3
- scope/pack1
# Use version 1.2.3 of 'pack2'
- scope/pack2@1.2.3
# Use the latest version of 'pack3' compatible with 3.2.1
- scope/pack3@~3.2.1
# Use pack4 and restrict it to queries found in the 'path/to/queries' directory
- scope/pack4:path/to/queries
# Use pack5 and restrict it to the query 'path/to/single/query.ql'
- scope/pack5:path/to/single/query.ql
# Use pack6 and restrict it to the query suite 'path/to/suite.qls'
- scope/pack6:path/to/suite.qls
```
{% endraw %}
The full format for specifying a query pack is `scope/name[@version][:path]`. Both `version` and `path` are optional. `version` is semver version range. If it is missing, the latest version is used. For more information about semver ranges, see the [semver docs on npm](https://docs.npmjs.com/cli/v6/using-npm/semver#ranges).
If you have a workflow that generates more than one {% data variables.product.prodname_codeql %} database, you can specify any {% data variables.product.prodname_codeql %} query packs to run in a custom configuration file using a nested map of packs.
{% raw %}

View File

@@ -1,6 +1,6 @@
---
title: About Dependabot alerts
intro: '{% data variables.product.product_name %} sends {% data variables.product.prodname_dependabot_alerts %} when we detect that your repository uses a vulnerable dependency{% ifversion GH-advisory-db-supports-malware %} or malware{% endif %}.'
title: Acerca de las alertas del Dependabot
intro: '{% data variables.product.product_name %} envía {% data variables.product.prodname_dependabot_alerts %} cuando detectamos que tu repositorio utiliza una dependencia vulnerabile{% ifversion GH-advisory-db-supports-malware %} o malware{% endif %}.'
redirect_from:
- /articles/about-security-alerts-for-vulnerable-dependencies
- /github/managing-security-vulnerabilities/about-security-alerts-for-vulnerable-dependencies
@@ -30,20 +30,20 @@ shortTitle: Las alertas del dependabot
{% data reusables.advisory-database.beta-malware-advisories %}
{% endif %}
{% data variables.product.prodname_dependabot_alerts %} tell you that your code depends on a package that is insecure.
Las {% data variables.product.prodname_dependabot_alerts %} te indican cuando tu código depende de un paquete que no es seguro.
If your code depends on a package with a security vulnerability, this can cause a range of problems for your project or the people who use it. You should upgrade to a secure version of the package as soon as possible.{% ifversion GH-advisory-db-supports-malware %} If your code uses malware, you need to replace the package with a secure alternative.{% endif %}
Si tu código depende de un paquete con una vulnerabilidad de seguridad, esto puede ocasionar varios problemas para tu proyecto o para la persona que lo utiliza. Deberás mejorar a una versión segura del paquete tan pronto sea posible.{% ifversion GH-advisory-db-supports-malware %} si tu código utiliza malware, necesitarás reemplazar el paquete con una alternativa segura.{% endif %}
{% data reusables.security-advisory.link-browsing-advisory-db %}
## Detection of insecure dependencies
## Detección de dependencias inseguras
{% data reusables.dependabot.dependabot-alerts-beta %}
{% data variables.product.prodname_dependabot %} performs a scan to detect insecure dependencies, and sends {% data variables.product.prodname_dependabot_alerts %} when:
El {% data variables.product.prodname_dependabot %} realiza un escaneo para detectar las dependencias inseguras y envía {% data variables.product.prodname_dependabot_alerts %} cuando:
{% ifversion fpt or ghec %}
- A new advisory is added to the {% data variables.product.prodname_advisory_database %}. For more information, see "[Browsing security advisories in the {% data variables.product.prodname_advisory_database %}](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database)."{% else %}
- Se agrega una asesoría nueva a la {% data variables.product.prodname_advisory_database %}. Para obtener más información, consulta la sección "[Buscar asesorías de seguridad en la {% data variables.product.prodname_advisory_database %}](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database)".{% else %}
- Se sincronizan los datos de las asesorías nuevas en {% data variables.product.product_location %} cada hora desde {% data variables.product.prodname_dotcom_the_website %}. {% data reusables.security-advisory.link-browsing-advisory-db %}{% endif %}
{% note %}
@@ -54,19 +54,19 @@ If your code depends on a package with a security vulnerability, this can cause
{% data reusables.repositories.dependency-review %}
For a list of the ecosystems that {% data variables.product.product_name %} detects insecure dependencies in, see "[Supported package ecosystems](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)."
Para encontrar una lista de ecosistemas en los cuales {% data variables.product.product_name %} detecta dependencias inseguras, consulta la sección "[Ecosistemas de paquete compatibles](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)".
{% note %}
**Nota:** Es importante mantener actualizados tu manifiesto y tus archivos bloqueados. If the dependency graph doesn't accurately reflect your current dependencies and versions, then you could miss alerts for insecure dependencies that you use. También podrías obtener alertas de las dependencias que ya no utilizas.
**Nota:** Es importante mantener actualizados tu manifiesto y tus archivos bloqueados. Si la gráfica de dependencia no refleja tus dependencias y versiones actuales con exactitud, entonces podrías perderte de las alertas para las dependencias inseguras que utilizas. También podrías obtener alertas de las dependencias que ya no utilizas.
{% endnote %}
## Configuration of {% data variables.product.prodname_dependabot_alerts %}
## Configuración de las {% data variables.product.prodname_dependabot_alerts %}
{% data reusables.repositories.enable-security-alerts %}
{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %} detects vulnerable dependencies and malware in _public_ repositories and displays the dependency graph, but does not generate {% data variables.product.prodname_dependabot_alerts %} by default. Los propietarios de repositorios o las personas con acceso administrativo pueden habilitar las {% data variables.product.prodname_dependabot_alerts %} para los repositorios públicos. Los propietarios de los repositorios privados o las personas con acceso administrativo puede habilitar las {% data variables.product.prodname_dependabot_alerts %} si habilitan la gráfica de dependencias y las {% data variables.product.prodname_dependabot_alerts %} para sus repositorios.
{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %} detecta las dependencias vulnerables y el malware en los repositorios _públicos_ y muestra la gráfica de dependencias, pero no genera {% data variables.product.prodname_dependabot_alerts %} predeterminadamente. Los propietarios de repositorios o las personas con acceso administrativo pueden habilitar las {% data variables.product.prodname_dependabot_alerts %} para los repositorios públicos. Los propietarios de los repositorios privados o las personas con acceso administrativo puede habilitar las {% data variables.product.prodname_dependabot_alerts %} si habilitan la gráfica de dependencias y las {% data variables.product.prodname_dependabot_alerts %} para sus repositorios.
También puedes habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios que pertenezcan atu cuenta de usuario u organización. Para obtener más información, consulta la sección "[Configurar las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts)".
@@ -95,7 +95,7 @@ Predeterminadamente, notificamos a las personas con permisos administrativos en
{% endif %}
{% data reusables.notifications.vulnerable-dependency-notification-enable %}
{% data reusables.notifications.vulnerable-dependency-notification-delivery-method-customization2 %} For more information, see "[Configuring notifications for {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts)."
{% data reusables.notifications.vulnerable-dependency-notification-delivery-method-customization2 %}Para obtener más información, consulta la sección "[Configurar notificaciones para las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts)".
You can also see all the {% data variables.product.prodname_dependabot_alerts %} that correspond to a particular advisory in the {% data variables.product.prodname_advisory_database %}. {% data reusables.security-advisory.link-browsing-advisory-db %}

View File

@@ -45,6 +45,7 @@ In contrast, malicious software, or malware, is code that is intentionally desig
Generally, we name our supported ecosystems after the software programming language's associated package registry. We review advisories if they are for a vulnerability in a package that comes from a supported registry.
- Composer (registry: https://packagist.org/)
- Erlang (registry: https://hex.pm/)
- Go (registry: https://pkg.go.dev/)
- Maven (registry: https://repo1.maven.org/maven2/org/)
- npm (registry: https://www.npmjs.com/)
@@ -65,7 +66,7 @@ El {% data variables.product.prodname_dependabot %} no crea {% data variables.pr
## About information in security advisories
Each security advisory contains information about the vulnerability or malware, which may include the description, severity, affected package, package ecosystem, affected versions and patched versions, impact, and optional information such as references, workarounds, and credits. Adicionalmente, las asesorías de la National Vulnerability Database contiene un enlace al registro de CVE, en donde puedes leer más sobre los detalles de la vulnerabilidad, su puntuación de CVSS y su nivel de severidad cualitativo. Para obtener más información, consulta la "[National Vulnerability Database](https://nvd.nist.gov/)" del Instituto Nacional de Estándares y Tecnología.
Cada asesoría de seguridad contiene información sobre la vulnerabilidad o el malware, la cual puede incluir la descripción, gravedad, paquete afectado, ecosistema del paquete, versiones afectadas y versiones parchadas, impacto e información opcional, tal como referencias, soluciones alternas y créditos. Adicionalmente, las asesorías de la National Vulnerability Database contiene un enlace al registro de CVE, en donde puedes leer más sobre los detalles de la vulnerabilidad, su puntuación de CVSS y su nivel de severidad cualitativo. Para obtener más información, consulta la "[National Vulnerability Database](https://nvd.nist.gov/)" del Instituto Nacional de Estándares y Tecnología.
El nivel de gravedad es uno de cuatro niveles posibles que se definen en el [Sistema de clasificación de vulnerabilidades comunes (CVSS), Sección 5](https://www.first.org/cvss/specification-document)".
- Bajo

View File

@@ -37,9 +37,21 @@ Puedes habilitar las alertas de seguridad automáticas para cualquier repositori
{% data variables.product.product_name %} generates {% data variables.product.prodname_dependabot_alerts %} when we detect that your codebase is using dependencies with known security risks. Para los repositorios en donde se habilitan las {% data variables.product.prodname_dependabot_security_updates %} cuando {% data variables.product.product_name %} detecta una dependencia vulnerable en la rama predeterminada, {% data variables.product.prodname_dependabot %} crea una solicitud de cambios para arreglarla. La solicitud de extracción mejorará la dependencia a la versión segura mínima que sea posible y necesaria para evitar la vulnerabilidad.
{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5638 %}Puedes clasificar y filtrar las {% data variables.product.prodname_dependabot_alerts %} con los menús desplegables en la pestaña de {% data variables.product.prodname_dependabot_alerts %} o tecleando filtros tales como pares de `key:value` en la barra de búsqueda. Los filtros disponibles son los de repositorio (pro ejemplo, `repo:my-repository`), paquete (por ejemplo, `package:django`), ecosistema (por ejemplo, `ecosystem:npm`), manifiesto (por ejemplo, `manifest:webwolf/pom.xml`), estado (por ejemplo, `is:open`) y si la asesoría tiene un parche (por ejemplo, `has: patch`).
{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5638 %}Puedes clasificar y filtrar las {% data variables.product.prodname_dependabot_alerts %} con los menús desplegables en la pestaña de {% data variables.product.prodname_dependabot_alerts %} o tecleando filtros tales como pares de `key:value` en la barra de búsqueda. The available filters are repository (for example, `repo:my-repository`), package (for example, `package:django`), ecosystem (for example, `ecosystem:npm`), manifest (for example, `manifest:webwolf/pom.xml`), state (for example, `is:open`), and whether an advisory has a patch (for example, `has: patch`).{% ifversion dependabot-alerts-development-label %} You can also filter alerts with dependency scope data using `scope`, for example: `scope:development` or `scope:runtime`. With `scope:development`, the list of alerts will only show dependencies used during development, not production.{% endif %}
Cada alerta del {% data variables.product.prodname_dependabot %} tiene un identificador numérico único y la pestaña de {% data variables.product.prodname_dependabot_alerts %} lista una alerta por cada vulnerabilidad detectada. Las {% data variables.product.prodname_dependabot_alerts %} tradicionales agrupan vulnerabilidades por dependencia y generan una sola alerta por dependencia. Si navegas a una alerta tradicional del {% data variables.product.prodname_dependabot %}, se te redirigirá a una pestaña de {% data variables.product.prodname_dependabot_alerts %} filtradas para este paquete. {% endif %}
{% endif %}
{% ifversion dependabot-alerts-development-label %}
## Supported ecosystems and manifests for dependency scope
<!-- TODO: for now we'd have this table and heading as they are, but we're planning to replace this with at a later date a new heading containing all the available filters in one or more tables -->
{% data reusables.dependabot.dependabot-alerts-dependency-scope %}
Alerts for packages listed as development dependencies are marked with the `Development` label on the {% data variables.product.prodname_dependabot_alerts %} page and are also available for filtering via the `scope` filter. ![Screenshot showing the "Development" label in the list of alerts](/assets/images/help/repository/dependabot-alerts-development-label.png)
The alert details page of alerts on development-scoped packages shows a "Tags" section containing a `Development` label. ![Screenshot showing the "Tags" section in the alert details page](/assets/images/help/repository/dependabot-alerts-tags-section.png)
Each {% data variables.product.prodname_dependabot %} alert has a unique numeric identifier and the {% data variables.product.prodname_dependabot_alerts %} tab lists an alert for every detected vulnerability{% ifversion GH-advisory-db-supports-malware %} or malware{% endif %}. Las {% data variables.product.prodname_dependabot_alerts %} tradicionales agrupan vulnerabilidades por dependencia y generan una sola alerta por dependencia. Si navegas a una alerta tradicional del {% data variables.product.prodname_dependabot %}, se te redirigirá a una pestaña de {% data variables.product.prodname_dependabot_alerts %} filtradas para este paquete. {% endif %}
{% endif %}
{% ifversion dependabot-alerts-vulnerable-calls %}
@@ -78,9 +90,15 @@ For more information, see "[Reviewing and fixing alerts](#reviewing-and-fixing-a
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-security %}
{% data reusables.repositories.sidebar-dependabot-alerts %}
1. Opcionalmente, para filtrar alertas, selecciona el menú desplegable de **Repositorio**, l **Paquete**, **Ecosistema** o **Manifiesto** y luego haz clic en el filtro que te gustaría aplicar. También puedes teclear filtros en la barra de búsqueda. Por ejemplo, `ecosystem:npm` o `has:patch`. To sort alerts, select the **Sort** dropdown menu then click the option that you would like to sort by.{% ifversion dependabot-bulk-alerts %} ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% else %}
![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %}
2. Click the alert that you would like to view.{% ifversion dependabot-bulk-alerts %} ![Alert selected in list of alerts](/assets/images/help/graphs/click-alert-in-alerts-list-checkbox.png){% else %}
1. Opcionalmente, para filtrar alertas, selecciona el menú desplegable de **Repositorio**, l **Paquete**, **Ecosistema** o **Manifiesto** y luego haz clic en el filtro que te gustaría aplicar. También puedes teclear filtros en la barra de búsqueda. For example, `ecosystem:npm`{% ifversion ghes < 3.7 or ghae-issue-5638 %} or `has:patch`{% endif %}{% ifversion dependabot-alerts-development-label %}, `has:patch` or `scope:development`{% endif %}. Para ordenar las alertas, selecciona el menú desplegable **Ordenar** y luego haz clic en la opción por la cual te gustaría ordenarlas.
You can also click a label on an alert to only show alerts of that type.{% ifversion dependabot-alerts-development-label %} For example, clicking the `Development` label in the list of alerts will only show alerts relating to dependencies used in development, not production. For information about the list of ecosystems supported, see "[Supported ecosystems and manifests for dependency scope ](#supported-ecosystems-and-manifests-for-dependency-scope)."
{% endif %}
{%- ifversion dependabot-bulk-alerts %}
![Captura de pantalla del filtro y menús de clasificación en la pestaña de las {% data variables.product.prodname_dependabot_alerts %}](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% else %}
![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %}
1. Click the alert that you would like to view.{% ifversion dependabot-bulk-alerts %} ![Alert selected in list of alerts](/assets/images/help/graphs/click-alert-in-alerts-list-checkbox.png){% else %}
![Alert selected in list of alerts](/assets/images/enterprise/3.5/dependabot/click-alert-in-alerts-list-ungrouped.png){% endif %}
{% else %}
@@ -108,7 +126,7 @@ For supported languages, {% data variables.product.prodname_dependabot %} detect
1. Ver los detalles de una alerta. For more information, see "[Viewing {% data variables.product.prodname_dependabot_alerts %}](#viewing-dependabot-alerts)" (above).
{% ifversion fpt or ghec or ghes > 3.2 %}
1. If you have {% data variables.product.prodname_dependabot_security_updates %} enabled, there may be a link to a pull request that will fix the dependency. Alternatively, you can click **Create {% data variables.product.prodname_dependabot %} security update** at the top of the alert details page to create a pull request. ![Crea un botón de actualización de seguridad del {% data variables.product.prodname_dependabot %}](/assets/images/help/repository/create-dependabot-security-update-button-ungrouped.png)
1. If you have {% data variables.product.prodname_dependabot_security_updates %} enabled, there may be a link to a pull request that will fix the dependency. Alternatively, you can click **Create {% data variables.product.prodname_dependabot %} security update** at the top of the alert details page to create a pull request. ![Create {% data variables.product.prodname_dependabot %} security update button](/assets/images/help/repository/create-dependabot-security-update-button-ungrouped.png)
1. Optionally, if you do not use {% data variables.product.prodname_dependabot_security_updates %}, you can use the information on the page to decide which version of the dependency to upgrade to and create a pull request to update the dependency to a secure version.
{% elsif ghes < 3.3 or ghae %}
1. You can use the information on the page to decide which version of the dependency to upgrade to and create a pull request to the manifest or lock file to a secure version.
@@ -154,9 +172,9 @@ If you schedule extensive work to upgrade a dependency, or decide that an alert
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-security %}
{% data reusables.repositories.sidebar-dependabot-alerts %}
1. To just view closed alerts, click **Closed**.{% ifversion dependabot-bulk-alerts %} ![Screenshot showing the "Closed" option](/assets/images/help/repository/dependabot-alerts-closed-checkbox.png){% else %}
1. Para solo ver las alertas cerradas, haz clic en **Cerrada**.{% ifversion dependabot-bulk-alerts %} ![Screenshot showing the "Closed" option](/assets/images/help/repository/dependabot-alerts-closed-checkbox.png){% else %}
![Screenshot showing the "Closed" option](/assets/images/help/repository/dependabot-alerts-closed.png){% endif %}
1. Click the alert that you would like to view or update.{% ifversion dependabot-bulk-alerts %} ![Screenshot showing a highlighted dependabot alert](/assets/images/help/repository/dependabot-alerts-select-closed-alert-checkbox.png){% else %}
1. Haz clic en la alerta que te gustaría ver o actualizar.{% ifversion dependabot-bulk-alerts %} ![Screenshot showing a highlighted dependabot alert](/assets/images/help/repository/dependabot-alerts-select-closed-alert-checkbox.png){% else %}
![Screenshot showing a highlighted dependabot alert](/assets/images/help/repository/dependabot-alerts-select-closed-alert.png){% endif %}
2. Optionally, if the alert was dismissed and you wish to reopen it, click **Reopen**. Alerts that have already been fixed cannot be reopened. ![Screenshot showing the "Reopen" button](/assets/images/help/repository/reopen-dismissed-alert.png)

View File

@@ -73,7 +73,7 @@ Las {% data variables.product.prodname_dependabot_security_updates %} requieren
{% data reusables.repositories.sidebar-settings %}
{% data reusables.repositories.navigate-to-code-security-and-analysis %}
1. Under "Code security and analysis", to the right of "{% data variables.product.prodname_dependabot %} security updates", click **Enable** to enable the feature or **Disable** to disable it. {% ifversion fpt or ghec %}For public repositories, the button is disabled if the feature is always enabled.{% endif %}
{% ifversion fpt or ghec %}![Screenshot of "Code security and analysis" section with button to enable {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/help/repository/security-and-analysis-disable-or-enable-fpt-private.png){% elsif ghes > 3.6 or ghae-issue-7044 %}<!--Insert screenshot for GHES 3.7 when available--> {% else %}![Screenshot of "Code security and analysis" section with button to enable {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/enterprise/3.3/repository/security-and-analysis-disable-or-enable-ghes.png){% endif %}
{% ifversion fpt or ghec %}![Screenshot of "Code security and analysis" section with button to enable {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/help/repository/security-and-analysis-disable-or-enable-fpt-private.png){% elsif ghes > 3.6 or ghae-issue-7044 %}<!--Insertar captura de pantalla de GHES 3.7 cuando esté disponible-->{% else %}![Screenshot of "Code security and analysis" section with button to enable {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/enterprise/3.3/repository/security-and-analysis-disable-or-enable-ghes.png){% endif %}
## Overriding the default behavior with a configuration file

View File

@@ -1,5 +1,5 @@
---
title: Configuration options for the dependabot.yml file
title: Opciones de configuración para el archivo dependabot.yml
intro: 'La información detallada para todas las opciones que puedes utilizar para personalizar como el {% data variables.product.prodname_dependabot %} mantiene tus repositorios.'
permissions: 'People with write permissions to a repository can configure {% data variables.product.prodname_dependabot %} for the repository.'
allowTitleToDifferFromFilename: true
@@ -19,7 +19,7 @@ topics:
- Repositories
- Dependencies
- Pull requests
shortTitle: Configure dependabot.yml
shortTitle: Configurar el dependabot.yml
---
{% data reusables.dependabot.beta-security-and-version-updates %}
@@ -29,13 +29,13 @@ shortTitle: Configure dependabot.yml
El archivo de configuración del {% data variables.product.prodname_dependabot %}, *dependabot.yml*, utiliza la sintaxis YAML. Si eres nuevo en YAML y deseas conocer más, consulta "[Aprender YAML en cinco minutos](https://www.codeproject.com/Articles/1214409/Learn-YAML-in-five-minutes)".
Debes almacenar este archivo en el directorio `.github` de tu repositorio. Cuando agregas o actualizas el archivo *dependabot.yml*, esto activa una revisión inmediata de las actualizaciones de la versión. For more information and an example, see "[Configuring {% data variables.product.prodname_dependabot %} version updates](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-dependabot-version-updates#enabling-dependabot-version-updates)."
Debes almacenar este archivo en el directorio `.github` de tu repositorio. Cuando agregas o actualizas el archivo *dependabot.yml*, esto activa una revisión inmediata de las actualizaciones de la versión. Para obtener más información y un ejemplo, consulta la sección "[Configurar las actualizaciones de versión del {% data variables.product.prodname_dependabot %}](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-dependabot-version-updates#enabling-dependabot-version-updates)".
Cualquier opción que también afecte las actualizaciones de seguridad se utiliza en la siguiente ocasión en que una alerta de seguridad active una solicitud de cambios para una actualización de seguridad. Para obtener más información, consulta la sección "[Configurar las {% data variables.product.prodname_dependabot_security_updates %}](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-dependabot-security-updates)".
El archivo *dependabot.yml* tiene dos claves mandatorias de nivel superior: `version`, y `updates`. You can, optionally, include a top-level `registries` key{% ifversion fpt or ghec or ghes > 3.4 %} and/or a `enable-beta-ecosystems` key{% endif %}. El archivo debe comenzar con `version: 2`.
El archivo *dependabot.yml* tiene dos claves mandatorias de nivel superior: `version`, y `updates`. Opcionalmente, puedes incluir una llave de `registries` de nivel superior{% ifversion ghes = 3.5 %} o una llave de `enable-beta-ecosystems`{% endif %}. El archivo debe comenzar con `version: 2`.
## Configuration options for the *dependabot.yml* file
## Opciones de configuración para el archivo *dependabot.yml*
La clave `updates` de nivel superior es obligatoria. La utilizas para configurar la forma en que el {% data variables.product.prodname_dependabot %} actualiza las versiones o las dependencias de tu proyecto. Cada entrada configura los ajustes de actualización para un administrador de paquetes en particular. Puedes utilizar las siguientes opciones.
@@ -236,7 +236,7 @@ Opciones compatibles
{% note %}
**Note:** The `prefix` and the `prefix-development` options have a 15 character limit.
**Nota:** Las opciones `prefix` y `prefix-development` tienen un límite de 15 caracteres.
{% endnote %}
@@ -280,9 +280,9 @@ updates:
prefix-development: "pip dev"
include: "scope"
```
If you use the same configuration as in the example above, bumping the `requests` library in the `pip` development dependency group will generate a commit message of:
Si utilizas la misma configuración que en el ejemplo anterior, el utilizar bumping en la librería `requests` en el grupo de dependencias de desarrollo de `pip` generará un mensaje de confirmación de:
`pip dev: bump requests from 1.0.0 to 1.0.1`
`pip dev: solicitudes de bump de 1.0.0 a 1.0.1`
### `ignore`
@@ -302,7 +302,7 @@ Para obtener más información acerca de los comandos de `@dependabot ignore`, c
Puedes utilizar la opción `ignore` para personalizar qué dependencias se actualizarán. La opción `ignore` es compatible con las siguientes opciones.
- `dependency-name`—se utiliza para ignorar actualizaciones para las dependencias con nombres coincidentes, opcionalmente, utiliza `*` para empatar cero o más caracteres. Para las dependencias de Java, el formato del atributo `dependency-name` es: `groupId:artifactId` (por ejemplo: `org.kohsuke:github-api`). {% ifversion dependabot-grouped-dependencies %} To prevent {% data variables.product.prodname_dependabot %} from automatically updating TypeScript type definitions from DefinitelyTyped, use `@types/*`.{% endif %}
- `dependency-name`—se utiliza para ignorar actualizaciones para las dependencias con nombres coincidentes, opcionalmente, utiliza `*` para empatar cero o más caracteres. Para las dependencias de Java, el formato del atributo `dependency-name` es: `groupId:artifactId` (por ejemplo: `org.kohsuke:github-api`). {% ifversion dependabot-grouped-dependencies %} Para prevenir que el {% data variables.product.prodname_dependabot %} actualice las definiciones de tipo de TypeScript automáticamente desde DefinetelyTuped, utiliza `@types/*`.{% endif %}
- `versions`—se utiliza para ignorar versiones o rangos específicos de las versiones. Si quieres definir un rango, utiliza el patrón estándar del administrador de paquetes (por ejemplo: `^1.0.0` para npm, o `~> 2.0` para Bundler).
- `update-types`—Se utiliza para ignorar tipos de actualizaciones tales como las de tipo `major`, `minor`, o `patch` en actualizaciones de versión (por ejemplo: `version-update:semver-patch` ignorará las actualizaciones de parche). Puedes combinar esto con `dependency-name: "*"` para ignorar algún `update-types` en particular en todas las dependencias. Actualmente, `version-update:semver-major`, `version-update:semver-minor`, y `version-update:semver-patch` son las únicas opciones compatibles. Este ajuste no afectará a las actualizaciones de seguridad.
@@ -340,7 +340,7 @@ updates:
{% ifversion fpt or ghec or ghes > 3.4 %}
{% note %}
**Note**: For the `pub` ecosystem, {% data variables.product.prodname_dependabot %} won't perform an update when the version that it tries to update to is ignored, even if an earlier version is available.
**Nota**: Para el ecosistema `pub`, el {% data variables.product.prodname_dependabot %} no realizará una actualización cuando la versión a la cuál se intenta actualizad se ignora, incluso si hay una versión anterior disponible.
{% endnote %}
@@ -964,19 +964,20 @@ registries:
{% endraw %}
{% ifversion fpt or ghec or ghes > 3.4 %}
## Enabling support for beta-level ecosystems
## Habilitar el soporte para los ecosistemas de nivel beta
### `enable-beta-ecosystems`
By default, {% data variables.product.prodname_dependabot %} updates the dependency manifests and lock files only for fully supported ecosystems. Use the `enable-beta-ecosystems` flag to opt in to updates for ecosystems that are not yet generally available.
Predeterminadamente, el {% data variables.product.prodname_dependabot %} actualiza los archivos de bloqueo y de manifiesto de la dependencia únicamente para los ecosistemas completamente compatibles. Utiliza el marcador `enable-beta-ecosystems` para decidir unirte a las actualizaciones para los ecosistemas que aún no están disponibles en general.
```yaml
# Configure beta ecosystem
version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: "pub"
updates:{% ifversion fpt or ghec or ghes > 3.5 %}
- package-ecosystem: "beta-ecosystem"{% else %}
- package-ecosystem: "pub"{% endif %}
directory: "/"
schedule:
interval: "daily"

View File

@@ -1,6 +1,6 @@
---
title: Keeping your dependencies updated automatically with Dependabot version updates
intro: 'You can use {% data variables.product.prodname_dependabot %} to automatically keep the dependencies and packages used in your repository updated to the latest version, even when they dont have any known vulnerabilities.'
title: Mantener tus dependencias actualizadas automáticamente con las actualizaciones de versión del Dependabot
intro: 'Puedes utilizar el {% data variables.product.prodname_dependabot %} para mantener las dependencias y paquetes que se utilizan en tu repositorio automáticamente actualizadas a la versión más reciente, incluso cuando no tienen vulnerabilidades conocidas.'
allowTitleToDifferFromFilename: true
redirect_from:
- /github/administering-a-repository/keeping-your-dependencies-updated-automatically

View File

@@ -452,9 +452,9 @@ jobs:
### Habilita la fusión automática en una solicitud de cambios
If you want to allow maintainers to mark certain pull requests for auto-merge, you can use {% data variables.product.prodname_dotcom %}'s auto-merge functionality. Esto habilita a la solicitud de cambios para que se fusione cuando se cumpla con todas las pruebas y aprobaciones requeridas. For more information on auto-merge, see "[Automatically merging a pull request](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request)."
Si quieres permitir que los mantenedores marquen solicitudes de cambio específicas para su fusión automática, puedes utilizar la funcionalidad de fusión automática de {% data variables.product.prodname_dotcom %}. Esto habilita a la solicitud de cambios para que se fusione cuando se cumpla con todas las pruebas y aprobaciones requeridas. Para obtener más información sobre la fusión automática, consulta la sección "[Fusionar una solicitud de cambios automáticamente](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request)".
You can instead use {% data variables.product.prodname_actions %} and the {% data variables.product.prodname_cli %}. Here is an example that auto merges all patch updates to `my-dependency`:
En vez de esto, puedes trabajar con las {% data variables.product.prodname_actions %} y el {% data variables.product.prodname_cli %}. Aquí tienes un ejemplo que fusiona todas las actualizaciones de parches automáticamente a `my-dependency`:
{% ifversion ghes = 3.3 %}

View File

@@ -42,7 +42,7 @@ Si tienes muchas dependencias para administrar, tal vez quieras personalizar la
## Cambiar la estrategia de rebase para las solicitudes de extracción del {% data variables.product.prodname_dependabot %}
Predeterminadamente, el {% data variables.product.prodname_dependabot %} rebasa automáticamente las solicitudes de extracción para resolver cualquier conflicto. Si prefieres manejar los conflictos de fusión manualmente, puedes inhabilitar esta opción utilizando la opción de `rebase-strategy`. For details, see "[Configuration options for the dependabot.yml file](/github/administering-a-repository/configuration-options-for-dependency-updates#rebase-strategy)."
Predeterminadamente, el {% data variables.product.prodname_dependabot %} rebasa automáticamente las solicitudes de extracción para resolver cualquier conflicto. Si prefieres manejar los conflictos de fusión manualmente, puedes inhabilitar esta opción utilizando la opción de `rebase-strategy`. Para obtener más detalles, consulta la sección "[Opciones de configuración para el archivo dependabot.yeml](/github/administering-a-repository/configuration-options-for-dependency-updates#rebase-strategy)".
## Administrar las solicitudes de extracción del {% data variables.product.prodname_dependabot %} con comandos de comentario
@@ -63,4 +63,4 @@ Puedes utilizar cualquiera de los siguientes comandos en una solicitud de cambio
El {% data variables.product.prodname_dependabot %} reaccionará con un emoji de "pulgares arriba" para reconocer el comando y podrá responder con un comentario de la solicitud de cambios. Si bien el {% data variables.product.prodname_dependabot %} a menudo responde rápidamente, algunos comandos podrían tardar varios minutos para completarse si el {% data variables.product.prodname_dependabot %} está ocupado procesando otras actualizaciones o comandos.
Si ejecutas cualquiera de los comandos para ignorar las dependencias o las versiones, el {% data variables.product.prodname_dependabot %} almacena las preferencias para el repositorio centralmente. Si bien esta es una solución rápida, para aquellos repositorios con más de un colaborador, es mejor definir explícitamente las dependencias y versiones a ignorar en el archivo de configuración. Esto hace que todos los colaboradores puedan ver más fácilmente por qué una dependencia en particular no se está actualizando automáticamente. For more information, see "[Configuration options for the dependabot.yml file](/github/administering-a-repository/configuration-options-for-dependency-updates#ignore)."
Si ejecutas cualquiera de los comandos para ignorar las dependencias o las versiones, el {% data variables.product.prodname_dependabot %} almacena las preferencias para el repositorio centralmente. Si bien esta es una solución rápida, para aquellos repositorios con más de un colaborador, es mejor definir explícitamente las dependencias y versiones a ignorar en el archivo de configuración. Esto hace que todos los colaboradores puedan ver más fácilmente por qué una dependencia en particular no se está actualizando automáticamente. Para obtener más información, consulta la sección "[Opciones de configuración para el archivo dependabot.yml](/github/administering-a-repository/configuration-options-for-dependency-updates#ignore)".

View File

@@ -32,7 +32,7 @@ topics:
{% data variables.product.prodname_dotcom %} genera y muestra los datos de las dependencias de forma diferente a otras herramientas. En consecuencia, si has estado utilizando otra herramienta para identificar dependencias, muy probablemente encuentres resultados diferentes. Considera lo sigueinte:
* {% data variables.product.prodname_advisory_database %} is one of the data sources that {% data variables.product.prodname_dotcom %} uses to identify vulnerable dependencies{% ifversion GH-advisory-db-supports-malware %} and malware{% endif %}. It's a free, curated database of security advisories for common package ecosystems on {% data variables.product.prodname_dotcom %}. Esta incluye tanto los datos reportados directamente a {% data variables.product.prodname_dotcom %} desde {% data variables.product.prodname_security_advisories %}, así como las fuentes oficiales y las comunitarias. {% data variables.product.prodname_dotcom %} revisa y organiza estos datos para garantizar que la información falsa o inprocesable no se comparta con la comunidad de desarrollo. {% data reusables.security-advisory.link-browsing-advisory-db %}
* La gráfica de dependencias analiza todos los archivos de manifiesto de paquetes conocidos en un repositorio de usuario. Por ejemplo, para npm analizará el archivo _package-lock.json_. Construye una gráfica de todas las dependencias del repositorio y de los dependientes públicos. Esto sucede cuando habilitas la gráfica de dependencias y cuando alguien hace cargas a la rama predeterminada, y esto incluye a las confirmaciones que hacen cambios a un formato de manifiesto compatible. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)" and "[Troubleshooting the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/troubleshooting-the-dependency-graph)."
* La gráfica de dependencias analiza todos los archivos de manifiesto de paquetes conocidos en un repositorio de usuario. Por ejemplo, para npm analizará el archivo _package-lock.json_. Construye una gráfica de todas las dependencias del repositorio y de los dependientes públicos. Esto sucede cuando habilitas la gráfica de dependencias y cuando alguien hace cargas a la rama predeterminada, y esto incluye a las confirmaciones que hacen cambios a un formato de manifiesto compatible. Para obtener más información, consulta las secciones "[Acerca de la gráfica de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)" y "[Solucionar problemas de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/troubleshooting-the-dependency-graph)".
* {% data variables.product.prodname_dependabot %} escanea cualquier subida a la rama predeterminada que contenga un archivo de manifiesto. When a new advisory is added, it scans all existing repositories and generates an alert for each repository that is affected. {% data variables.product.prodname_dependabot_alerts %} are aggregated at the repository level, rather than creating one alert per advisory. Para obtener más información, consulta la sección "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)".
* {% ifversion fpt or ghec or ghes > 3.2 %}{% data variables.product.prodname_dependabot_security_updates %} se activa cuando recibes una alerta sobre una dependencia vulnerable en tu repositorio. Cuando sea posible, el {% data variables.product.prodname_dependabot %} creará una solicitud de cambios en tu repositorio para actualizar la dependencia vulnerable a la versión segura mínima posible que se requiere para evitar la vulnerabilidad. Para obtener más información, consulta las secciones "[Acerca de las {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)" y "[Solucionar problemas en los errores del {% data variables.product.prodname_dependabot %}](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)".
@@ -48,7 +48,7 @@ Las {% data variables.product.prodname_dependabot_alerts %} te asesoran sobre la
## Why don't I get {% data variables.product.prodname_dependabot_alerts %} for some ecosystems?
{% data variables.product.prodname_dependabot_alerts %} are supported for a set of ecosystems where we can provide high-quality, actionable data. Curated advisories in the {% data variables.product.prodname_advisory_database %}, the dependency graph, {% ifversion fpt or ghec %}{% data variables.product.prodname_dependabot %} security updates, {% endif %}and {% data variables.product.prodname_dependabot_alerts %} are provided for several ecosystems, including Javas Maven, JavaScripts npm and Yarn, .NETs NuGet, Pythons pip, Ruby's RubyGems, and PHPs Composer. Seguiremos agregando soporte para más ecosistemas a la larga. Para obtener una vista general de los ecosistemas de paquete que soportamos, consulta la sección "[Acerca del gráfico de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)".
{% data variables.product.prodname_dependabot_alerts %} are supported for a set of ecosystems where we can provide high-quality, actionable data. Las asesorías que se seleccionan para la {% data variables.product.prodname_advisory_database %}, la gráfica de dependencias, las actualizaciones de seguridad del {% ifversion fpt or ghec %}{% data variables.product.prodname_dependabot %} {% endif %}y las {% data variables.product.prodname_dependabot_alerts %} se proporcionan para diversos ecosistemas, incluyendo Maven de Java, Yarn y npm de Javascript, NuGet de .NET, pip de Python, RubyGems de Ruby y Composer de PHP. Seguiremos agregando soporte para más ecosistemas a la larga. Para obtener una vista general de los ecosistemas de paquete que soportamos, consulta la sección "[Acerca del gráfico de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)".
It's worth noting that security advisories may exist for other ecosystems. The information in an unreviewed security advisory is provided by the maintainers of a particular repository. This data is not curated by {% data variables.product.prodname_dotcom %}. {% data reusables.security-advisory.link-browsing-advisory-db %}
@@ -93,7 +93,7 @@ You can configure {% data variables.product.prodname_dependabot %} to ignore spe
## Leer más
- "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)"
- "[Viewing and updatng {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts)"
- "[Ver y actualizar las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts)"
- "[Administrar la configuración de seguridad y de análisis para tu organización](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)"
- "[Troubleshooting the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/troubleshooting-the-dependency-graph)"{% ifversion fpt or ghec or ghes > 3.2 %}
- "[Solucionar problemas de los errores del {% data variables.product.prodname_dependabot %}](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)"{% endif %}

View File

@@ -23,7 +23,7 @@ shortTitle: Filtrar alertas
## Acerca de filtrar el resumen de seguridad
Puedes utilizar filtros en el resumen de seguridad para reducir tu enfoque con base en una serie de factores, como el nivel de riesgo de la alerta, el tipo de esta y la habilitación de características. Different filters are available depending on the specific view and whether your analysis is at the organization, team or repository level.
Puedes utilizar filtros en el resumen de seguridad para reducir tu enfoque con base en una serie de factores, como el nivel de riesgo de la alerta, el tipo de esta y la habilitación de características. Hay diferentes filtros disponibles, dependiendo de la vista específica y de si tu análisis está a nivel de organización, equipo o repositorio.
## Filtrar por repositorio

View File

@@ -36,48 +36,48 @@ Puedes configurar la autenticación de SAML para una cuenta de empresa u organiz
Después de que configuras la autenticación de SAML, cuando los miembros soliciten acceso a tus recursos, se les podría dirigir a tu flujo de SSO para garantizar que aún los reconozca tu IdP. Si no se les reconoce, su solicitud se rechazará.
Some IdPs support a protocol called SCIM, which can automatically provision or deprovision access on {% data variables.product.product_name %} when you make changes on your IdP. With SCIM, you can simplify administration as your team grows, and you can quickly revoke access to accounts. SCIM is available for individual organizations on {% data variables.product.product_name %}, or for enterprises that use {% data variables.product.prodname_emus %}. Para obtener más información, consulta la sección "[SCIM para las organizaciones](/organizations/managing-saml-single-sign-on-for-your-organization/about-scim-for-organizations)".
Algunos IdP son copatible con un protocolo llamado SCIM, el cual aprovisiona o desaprovisiona automáticamente el acceso en {% data variables.product.product_name %} cuando haces cambios a tu IdP. Con SCIM, puedes simplificar la administración conforme crece tu equipo y puedes revocar el acceso a las cuentas rápidamente. El SCIM está disponible para las organizaciones individuales en {% data variables.product.product_name %} o para las empresas que utilizan {% data variables.product.prodname_emus %}. Para obtener más información, consulta la sección "[SCIM para las organizaciones](/organizations/managing-saml-single-sign-on-for-your-organization/about-scim-for-organizations)".
{% endif %}
{% ifversion ghes %}
If you're the site administrator for {% data variables.product.product_location %}, you can simplify the login experience for users by choosing an authentication method that connects with your existing identity provider (IdP), like CAS, SAML, or LDAP. This means that they no longer need to remember an extra password for {% data variables.product.prodname_dotcom %}.
Si eres el administrador de sitio para {% data variables.product.product_location %}, puedes simplificar la experiencia de inicio de sesión para los usuarios si eliges un método de autenticación que se conecte con tu proveedor de identidad (IdP), como CAS; SAML o LDAP. Esto significa que ya no necesitarán recordar una contraseña adicional para {% data variables.product.prodname_dotcom %}.
Some authentication methods also support communicating additional information to {% data variables.product.product_name %}, for example, what groups the user is a member of, or synchronizing cryptographic keys for the user. This is a great way to simplify your administration as your organization grows.
Algunos métodos de autenticación también son compatibles con la comunicación de información adicional a {% data variables.product.product_name %}, por ejemplo, de qué grupos es miembro el usuario, o con la sincronización de llaves criptográficas para dicho usuario. Esto es una forma genial de simplificar tu administración conforme crece tu organización.
For more information about the authentication methods available for {% data variables.product.product_name %}, see "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise)."
Para obtener más información sobre los métodos de autenticación disponibles para {% data variables.product.product_name %}, consulta la sección "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise)".
{% endif %}
## Configure two-factor authentication
## Configurar la autenticación bifactorial
La mejor forma de mejorar la seguridad de {% ifversion fpt %}tu cuenta personal{% elsif ghes %}tu cuenta personal o {% data variables.product.product_location %}{% elsif ghec %}tus cuentas{% elsif ghae %}tu empresa en {% data variables.product.product_name %}{% endif %} es configurar la autenticación bifactorial (2FA){% ifversion ghae %} en tu proveedor de identidad (IdP) de SAML{% endif %}. Passwords by themselves can be compromised by being guessable, by being reused on another site that's been compromised, or by social engineering, like phishing. 2FA makes it much more difficult for your accounts to be compromised, even if an attacker has your password.
La mejor forma de mejorar la seguridad de {% ifversion fpt %}tu cuenta personal{% elsif ghes %}tu cuenta personal o {% data variables.product.product_location %}{% elsif ghec %}tus cuentas{% elsif ghae %}tu empresa en {% data variables.product.product_name %}{% endif %} es configurar la autenticación bifactorial (2FA){% ifversion ghae %} en tu proveedor de identidad (IdP) de SAML{% endif %}. Las contraseñas por sí mismas pueden ponerse en riesgo si se pueden adivinar fácilmente, si se reutilizan en otro sitio que se haya puesto en riesgo o mediante ingeniería social, como con el phishing. La 2FA hace que sea mucho más difícil que tus cuentas se pongan en riesgo, incluso si un atacante tiene tu contraseña.
{% ifversion not ghae %}
{% ifversion ghec %}
If you're an enterprise owner, you may be able to configure a policy to require 2FA for all organizations owned by your enterprise.
Si eres un propietario de empresa, podrías configurar una política para requerir la 2FA para todas las organizaciones que le pertenecen a tu empresa.
{% endif %}
{% ifversion ghes %}
If you're the site administrator for {% data variables.product.product_location %}, you may be able to configure 2FA for all users of your instance. The availability of 2FA on {% data variables.product.product_name %} depends on the authentication method that you use. For more information, see "[Centralize user authentication](#centralize-user-authentication)."
Si eres el administrador de sitio para {% data variables.product.product_location %}, es posible que puedas configurar la 2FA para todos los usuarios de tu instancia. La disponibilidad de la 2FA en {% data variables.product.product_name %} depende del método de autenticación que utilices. Para obtener más información, consulta la sección "[Centralizar la autenticación de usuarios](#centralize-user-authentication)".
{% endif %}
If you're an organization owner, then you {% ifversion fpt %}can{% else %}may be able to{% endif %} require that all members of the organization enable 2FA.
Si eres un propietario de organización, entonces {% ifversion fpt %}puedes{% else %}podrìas{% endif %} requerir que todos los miembros de la organización habiliten la 2FA.
{% ifversion ghec or ghes %}
### Configure your enterprise account
### Configura tu cuenta empresarial
Enterprise owners may be able to require 2FA for all {% ifversion ghes %}users on{% elsif ghec %}members of{% endif %} the {% ifversion ghes %}instance{% elsif ghec %}enterprise{% endif %}. The availability of 2FA policies on {% data variables.product.product_name %} depends on how {% ifversion ghes %}users{% else %}members{% endif %} authenticate to access your {% ifversion ghes %}instance{% elsif ghec %}enterprise's resources{% endif %}.
Los propietarios de las empresas podrían requerir la 2FA para todos los {% ifversion ghes %}usuarios de{% elsif ghec %}miembros de{% endif %} la {% ifversion ghes %}instancia{% elsif ghec %}empresa{% endif %}. La disponibilidad de las políticas de 2FA en {% data variables.product.product_name %} depende de cómo los {% ifversion ghes %}usuarios{% else %}miembros{% endif %} se autentican para acceder a {% ifversion ghes %}tu instancia{% elsif ghec %}los recursos de la empresa{% endif %}.
{% ifversion ghes %}
- If you sign into {% data variables.product.product_location %} through an external IdP using CAS or SAML SSO, you
- Si inicias sesión en {% data variables.product.product_location %} mediante un IdP externo utilizando CAS o el SSO de SAML,
{% elsif ghec %}
If your enterprise uses {% data variables.product.prodname_emus %} or SAML authentication is enforced for your enterprise, you
{%- endif %} cannot configure 2FA on {% data variables.product.product_name %}. Someone with administrative access to your IdP must configure 2FA for the IdP.
Si tu empresa utiliza {% data variables.product.prodname_emus %} o la autenticación de SAML se requiere para esta,
{%- endif %} no puedes configurar la 2FA en {% data variables.product.product_name %}. Alguien con acceso administrativo a tu IdP debe configurar la 2FA para el IdP.
{% ifversion ghes %}
- If you sign into {% data variables.product.product_location %} through an external LDAP directory, you can require 2FA for your enterprise on {% data variables.product.product_name %}. If you allow built-in authentication for users outside of your directory, individual users can enable 2FA, but you cannot require 2FA for your enterprise.
- Si inicias sesión en {% data variables.product.product_location %} mediante un directorio LDAP externo, puedes requerir la 2FA para tu empresa de {% data variables.product.product_name %}. Si permites la autenticación integrada para los usuarios fuera de tu directorio, los usuarios individuales pueden habilitar la 2FA, pero no puedes requerirla para tu empresa.
{% endif %}
@@ -85,7 +85,7 @@ Para obtener más información, consulta las secciones {% ifversion ghec %}"[Ace
{% endif %}
### Configure your personal account
### Configurar tu cuenta personal
{% ifversion ghec or ghes %}
{% note %}
@@ -95,11 +95,11 @@ Para obtener más información, consulta las secciones {% ifversion ghec %}"[Ace
{% endnote %}
{% endif %}
{% data variables.product.product_name %} supports several options for 2FA, and while any of them is better than nothing, the most secure option is WebAuthn. WebAuthn requires either a hardware security key or a device that supports it through things like Windows Hello or Mac TouchID. It's possible, although difficult, to phish other forms of 2FA (for example, someone asking you to read them your 6 digit one-time password). However WebAuthn isn't phishable, because domain scoping is built into the protocol, which prevents credentials from a website impersonating a login page from being used on {% data variables.product.product_name %}.
{% data variables.product.product_name %} es compatible con varias opciones para la 2FA y, si bien cualquiera de ellas es mejor que nada, la opción más segura es la WebAuthn. La WebAuthn requiere ya sea de una llave de seguridad de hardware o de un dispositivo que sea compatible con ella mediante instrumentos como Windows Hello o Mac TouchID. Es posible, aunque difícil, hacer phishing en otras formas de 2FA (por ejemplo, que alguien te pida que le leas tu contraseña de una sola ocasión de 6 dígitos). Sin embargo, no se puede hacer phishing con la WebAuthn, ya que el alcance del dominio está integrado en el protocolo, lo que previene que las credenciales de un sitio web se hagan pasar por una página de inicio de sesión para que se utilice en {% data variables.product.product_name %}.
When you set up 2FA, you should always download the recovery codes and set up more than one factor. This ensures that access to your account doesn't depend on a single device. Para obtener más información, consulta las secciones "[Configurar la autenticación bifactorial](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication)", "[Configurar los métodos de recuperación de la autenticación bifactorial](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods)" y [Llaves de seguridad de hardware con marca de GitHub](https://thegithubshop.com/products/github-branded-yubikey) en la tienda de GitHub.
Cuando configuras la 2FA, siempre deberás descargar los códigos de recuperación y configurar más de un factor. Esto garantiza que el acceso a tu cuenta no dependa de un solo dispositivo. Para obtener más información, consulta las secciones "[Configurar la autenticación bifactorial](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication)", "[Configurar los métodos de recuperación de la autenticación bifactorial](/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods)" y [Llaves de seguridad de hardware con marca de GitHub](https://thegithubshop.com/products/github-branded-yubikey) en la tienda de GitHub.
### Configure your organization account
### Configurar tu cuenta de organización
{% ifversion ghec or ghes %}
{% note %}
@@ -109,24 +109,24 @@ When you set up 2FA, you should always download the recovery codes and set up mo
{% endnote %}
{% endif %}
If you're an organization owner, you can see which users don't have 2FA enabled, help them get set up, and then require 2FA for your organization. To guide you through that process, see:
Si eres un propietario de organización, puedes ver a los usuarios que no tienen habilitada la 2FA, ayudarles a configurarla y luego requerirla para tu organización. Para guiarte en este proceso, consulta las siguientes secciones:
1. "[Viewing whether users in your organization have 2FA enabled](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/viewing-whether-users-in-your-organization-have-2fa-enabled)"
2. "[Preparing to require two-factor authentication in your organization](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/preparing-to-require-two-factor-authentication-in-your-organization)"
3. "[Requiring two-factor authentication in your organization](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization)"
1. "[Ver si un usuario en tu organización tiene habilitada la 2FA](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/viewing-whether-users-in-your-organization-have-2fa-enabled)"
2. "[Prepararse para requerir la autenticación bifactorial en tu organización](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/preparing-to-require-two-factor-authentication-in-your-organization)"
3. "[Requerir la autenticación bifactorial en tu organización](/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization)"
{% endif %}
## Connect to {% data variables.product.product_name %} using SSH keys
## Conectarte a {% data variables.product.product_name %} utilizando llaves SSH
There are other ways to interact with {% data variables.product.product_name %} beyond signing into the website{% ifversion ghae %} via your IdP{% endif %}. Many people authorize the code they push to {% data variables.product.prodname_dotcom %} with an SSH private key. For more information, see "[About SSH](/authentication/connecting-to-github-with-ssh/about-ssh)."
Hay otras formas de interactuar con {% data variables.product.product_name %} màs allà de iniciar sesiòn en el sitio web{% ifversion ghae %} a travès de tu IdP{% endif %}. Muchas personas autorizan el còdigo que suben a {% data variables.product.prodname_dotcom %} con una llave SSH privada. Para obtener más información, consulta la sección "[Acerca de SSH](/authentication/connecting-to-github-with-ssh/about-ssh)".
Just like {% ifversion ghae %}the password for your IdP account{% else %}your account password{% endif %}, if an attacker were able to get your SSH private key, they could impersonate you and push malicious code to any repository you have write access for. If you store your SSH private key on a disk drive, it's a good idea to protect it with a passphrase. For more information, see "[Working with SSH key passphrases](/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases)."
Tal como {% ifversion ghae %}la contraseña para tu cuenta de IdP{% else %}la contraseña de tu cuenta{% endif %}, si un atacante pudiera obtener tu llave SSH privada, podrían hacerse pasar por ti y subir código malintencionado a cualquier repositorio al cuál tengas acceso de escritura. Si almacenas tu llave privada SSH en un volumen de disco, es buena idea protegerlo con una frase de ingreso. Para obtener más información, consulta la sección "[Trabajar con frases de acceso para llaves SSH](/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases)".
Another option is to generate SSH keys on a hardware security key. You could use the same key you're using for 2FA. Hardware security keys are very difficult to compromise remotely, because the private SSH key remains on the hardware, and is not directly accessible from software. For more information, see "[Generating a new SSH key for a hardware security key](/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key-for-a-hardware-security-key)."
Otra opción es generar llaves SSH en una llave de seguridad de hardware. Podrías utilizar la misma llave que utilizas para la 2FA. Las llaves de seguridad de hardware son difíciles de poner en riesgo remotamente, ya que la llave SSH privada permanece en el hardware y no se puede acceder directamente a ella desde el software. Para obtener más información, consulta la sección "[Generar una llave SSH nueva para una llave de seguridad de hardware](/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key-for-a-hardware-security-key)".
{% ifversion ghec or ghes or ghae %}
Hardware-backed SSH keys are quite secure, but the hardware requirement might not work for some organizations. An alternative approach is to use SSH keys that are only valid for a short period of time, so even if the private key is compromised it can't be exploited for very long. This is the concept behind running your own SSH certificate authority. While this approach gives you a lot of control over how users authenticate, it also comes with the responsibility of maintaining an SSH certificate authority yourself. Para obtener más información, consulta la sección [Acerca de las autoridades de certificados SSH](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)".
Las llaves SSH respaldadas por hardware son bastante seguras, pero el requisito de hardware podría no funcionar para algunas organizaciones. Un enfoque alterno es utilizar llaves SSH que solo sean válidas durante un periodo de tiempo corto, para que incluso si esta se pone en riesgo, no pueda aprovecharse por mucho tiempo. Este es el concepto detrás de ejecutar tu propia autoridad de certificados SSH. Si bien este acercamiento te proporciona mucho control de cómo se autentican los usuarios, también trae consigo la responsabilidad de mantener una autoridad de certificados SSH por ti mismo. Para obtener más información, consulta la sección [Acerca de las autoridades de certificados SSH](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)".
{% endif %}
## Pasos siguientes

View File

@@ -1,8 +1,8 @@
---
title: Best practices for securing your build system
shortTitle: Securing builds
title: Mejores prácticas para asegurar tu sistema de compilación
shortTitle: Asegurar las compilaciones
allowTitleToDifferFromFilename: true
intro: Guidance on how to protect the end of your supply chain—the systems you use to build and distribute artifacts.
intro: Lineamientos sobre cómo proteger el final de tu cadena de suministro; los sistemas que debes utilizar para compilar y distribuir artefactos.
versions:
fpt: '*'
ghec: '*'
@@ -18,39 +18,39 @@ topics:
## Acerca de esta guía
This guide describes the highest impact changes you can make to improve the security of your build systems. Cada sección detalla un cambio que puedes hacer a tus procesos para mejorar la seguridad. Los cambios de más alto impacto se listan primero.
Esta guía describe los cambios de mayor impacto que puedes hacer para mejorar la seguridad de tus sistemas de compilación. Cada sección detalla un cambio que puedes hacer a tus procesos para mejorar la seguridad. Los cambios de más alto impacto se listan primero.
## ¿Cuál es el riesgo?
Some attacks on software supply chains target the build system directly. If an attacker can modify the build process, they can exploit your system without the effort of compromising personal accounts or code. It's important to make sure that you don't forget to protect the build system as well as personal accounts and code.
Algunos ataques a las cadenas de suministro de software apuntan directamente hacia el sistema de compilación. Si un atacante puede modificar el proceso de compilación, este puede aprovechar tu sistema sin el esfuerzo de poner en riesgo las cuentas personales o el código. Es importante asegurarse de que no te olvidaste de proteger el sistema de compilación, así como las cuentas personales y el código.
## Secure your build system
## Asegurar tu sistema de compilación
There are several security capabilities a build system should have:
Existen varias capacidades de seguridad que debe tener un sistema de compilación:
1. The build steps should be clear and repeatable.
1. Los pasos de compilación deben ser claros y repetibles.
2. You should know exactly what was running during the build process.
2. Deberías saber exactamente qué se estaba ejecutando durante el proceso de compilación.
3. Each build should start in a fresh environment, so a compromised build doesn't persist to affect future builds.
3. Cada compilación debería iniciar en un ambiente nuevo, para que las compilaciones puestas en riesgo no persistan para afectar compilaciones futuras.
{% data variables.product.prodname_actions %} can help you meet these capabilities. Build instructions are stored in your repository, alongside your code. You choose what environment your build runs on, including Windows, Mac, Linux, or runners you host yourself. Each build starts with a fresh virtual environment, making it difficult for an attack to persist in your build environment.
{% data variables.product.prodname_actions %} puede ayudarte a lograr estas capacidades. Las instrucciones de compilación se almacenan en tu repositorio, junto con tu código. Tú eliges en qué ambiente se ejecuta tu compilación, incluyendo los de Windows, Mac, Linux o los ejecutores que hospedas tú mismo. Cada compilación inicia con un ambiente virtual nuevo, lo que hace difícil que un ataque persista en tu ambiente de compilación.
In addition to the security benefits, {% data variables.product.prodname_actions %} lets you trigger builds manually, periodically, or on git events in your repository for frequent and fast builds.
Adicionalmente a los beneficios de seguridad, {% data variables.product.prodname_actions %} te permite activar compilaciones manualmente, regularmente o en eventos de git en tu repositorio para las compilaciones rápidas y frecuentes.
Las {% data variables.product.prodname_actions %} son un tema amplio, pero un buen lugar para iniciar es la sección de "[Entender las GitHub Actions](/actions/learn-github-actions/understanding-github-actions)", así como "[Elegir los ejecutores hospedados por GitHub](/actions/using-workflows/workflow-syntax-for-github-actions#choosing-github-hosted-runners)" y "[Activar un flujo de trabajo](/actions/using-workflows/triggering-a-workflow)".
## Sign your builds
## Firmar tus compilaciones
After your build process is secure, you want to prevent someone from tampering with the end result of your build process. A great way to do this is to sign your builds. When distributing software publicly, this is often done with a public/private cryptographic key pair. You use the private key to sign the build, and you publish your public key so users of your software can verify the signature on the build before they use it. If the bytes of the build are modified, the signature will not verify.
Después de que tu proceso de compilación esté seguro, querrás prevenir que alguien manipule el resultado final de tu proceso de compilación. Una buena forma de hacerlo es firmando tus compilaciones. Cuando distribuyes software públicamente, esto se hace a menudo con un par de llaves criptográficas pública/privada. Utilizarás la llave privada para firmar la compilación y publicarás la llave pública para que los usuarios de tu software puedan verificar la firma de la compilación antes de que la utilicen. Si los bites de la compilación se modifican, la firma no se verificará.
How exactly you sign your build will depend on what sort of code you're writing, and who your users are. Often it's difficult to know how to securely store the private key. One basic option here is to use {% data variables.product.prodname_actions %} encrypted secrets, although you'll need to be careful to limit who has access to those {% data variables.product.prodname_actions %} workflows. {% ifversion fpt or ghec %}si tu clave privada se almacena en otro sistema al cual se puede acceder a través de del internet público (como Microsoft Azure o HashiCorp Vault), una opción más avanzada es autenticarse con OpenID Connect, por lo que no tienes que compartir secretos entre sistemas.{% endif %} si solo se puede acceder a tu clave privada desde una red privada, otra opción es usar los corredores auto-hospedados para {% data variables.product.prodname_actions %}.
El cómo firmas tu compilación exactamente dependerá de qué tipo de código estás escribiendo y de quiénes son tus usuarios. A menudo, es difícil saber cómo almacenar la llave privada de forma segura. Una opción básica en este caso es utilizar los secretos cifrados de las {% data variables.product.prodname_actions %}, aunque necesitarás tener cuidado de limitar quién tiene acceso a esos flujos de trabajo de {% data variables.product.prodname_actions %}. {% ifversion fpt or ghec %}si tu clave privada se almacena en otro sistema al cual se puede acceder a través de del internet público (como Microsoft Azure o HashiCorp Vault), una opción más avanzada es autenticarse con OpenID Connect, por lo que no tienes que compartir secretos entre sistemas.{% endif %} si solo se puede acceder a tu clave privada desde una red privada, otra opción es usar los corredores auto-hospedados para {% data variables.product.prodname_actions %}.
Para obtener más información, consulta las secciones "[Secretos cifrados](/actions/security-guides/encrypted-secrets)"{% ifversion fpt or ghec %}, "[Acerca del fortalecimiento de seguridad con OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)",{% endif %} y "[Acerca de los ejecutores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)".
## Harden security for {% data variables.product.prodname_actions %}
## Reforzar las seguridad para las {% data variables.product.prodname_actions %}
There are many further steps you can take to additionally secure {% data variables.product.prodname_actions %}. In particular, be careful when evaluating third-party workflows, and consider using `CODEOWNERS` to limit who can make changes to your workflows.
Hay muchos más pasos que puedes llevar a cabo para asegurar las {% data variables.product.prodname_actions %} adicionalmente. Particularmente, ten cuidado al evaluar los flujos de trabajo de terceros y considera utilizar `CODEOWNERS` para limitar quiénes pueden hacer cambios a tus flujos de trabajo.
Para obtener más información, consulta las secciones "[Fortalecimiento de seguridad para las GitHub Actions](/actions/security-guides/security-hardening-for-github-actions)"; particularmente "[Utilizar acciones de terceros](/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions)" y "[Utilizar `CODEOWNERS` para monitorear cambios](/actions/security-guides/security-hardening-for-github-actions#using-codeowners-to-monitor-changes)".

View File

@@ -1,8 +1,8 @@
---
title: Best practices for securing code in your supply chain
shortTitle: Securing code
title: Mejores prácticas para asegurar el código en tu cadena de suministro
shortTitle: Asegurar el código
allowTitleToDifferFromFilename: true
intro: Guidance on how to protect the center of your supply chain—the code you write and the code you depend on.
intro: Orientación sobre cómo proteger el centro de tu cadena de suministro; el código que escribes y del cuál dependes.
versions:
fpt: '*'
ghec: '*'
@@ -19,47 +19,47 @@ topics:
## Acerca de esta guía
This guide describes the highest impact changes you can make to improve the security of your code. Cada sección detalla un cambio que puedes hacer a tus procesos para mejorar la seguridad. Los cambios de más alto impacto se listan primero.
Esta guía describe los cambios de más alto impacto que puedes hacer para mejorar la seguridad de tu código. Cada sección detalla un cambio que puedes hacer a tus procesos para mejorar la seguridad. Los cambios de más alto impacto se listan primero.
## ¿Cuál es el riesgo?
Key risks in the development process include:
Los riesgos clave en el proceso de desarrollo incluyen:
- Using dependencies with security vulnerabilities that an attacker could exploit.
- Leaking authentication credentials or a token that an attacker could use to access your resources.
- Introducing a vulnerability to your own code that an attacker could exploit.
- Utilizar dependencias con las vulnerabilidades de seguridad que podría aprovechar una tacante.
- Filtrar credenciales de autenticación o un token que pudiera utilizar un atacante para acceder a tus recursos.
- Introducir una vulnerabilidad a tu propio código que pueda aprovechar un atacante.
These risks open your resources and projects to attack and those risks are passed directly on to anyone who uses a package that you create. The following sections explain how you can protect yourself and your users from these risks.
Estos riesgos abren la posibilidad de que tus recursos y proyectos sufran un ataque y dichos riesgos se pasan directamente a cualquiera que utilice un paquete que crees. Las siguientes secciones explican cómo puedes proteger a tus usuarios y a ti mismo de estos riesgos.
## Create a vulnerability management program for dependencies
## Crear un programa de administración de vulnerabilidades para las dependencias
You can secure the code you depend on by creating a vulnerability management program for dependencies. At a high level this should include processes to ensure that you:
Puedes asegurar el código del que dependes si creas un programa de administración de vulnerabilidades para las dependencias. En un nivel alto, este debería incluir los procesos para garantizar que:
1. Create an inventory of your dependencies.
1. Crees un inventario de tus dependencias.
2. Know when there is a security vulnerability in a dependency.
2. Sepas cuándo hay una vulnerabilidad de seguridad en una dependencia.
3. Assess the impact of that vulnerability on your code and decide what action to take.
3. Evalúes el impacto de dicha vulnerabilidad en tu código y decidas qué acción llevar a cabo.
### Automatic inventory generation
### Generación automática de inventario
As a first step, you want to make a complete inventory of your dependencies. The dependency graph for a repository shows you dependencies for supported ecosystems. If you check in your dependencies, or use other ecosystems, you will need to supplement this with data from 3rd party tools or by listing dependencies manually. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)".
Como primer paso, necesitas realizar un inventario completo de tus dependencias. La gráfica de dependencias de un repositorio te muestra las dependencias de los ecosistemas compatibles. Si ingresas tus dependencias o utilizas otros ecosistemas, necesitarás suplementar esto con los datos de las herramientas de terceros o listando las dependencias manualmente. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)".
### Automatic detection of vulnerabilities in dependencies
### Detección automática de las vulnerabilidades en las dependencias
{% data variables.product.prodname_dependabot %} can help you by monitoring your dependencies and notifying you when they contain a known vulnerability. {% ifversion fpt or ghec or ghes > 3.2 %}You can even enable {% data variables.product.prodname_dependabot %} to automatically raise pull requests that update the dependency to a secure version.{% endif %} For more information, see "[About {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)"{% ifversion fpt or ghec or ghes > 3.2 %} and "[About Dependabot security updates](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates)"{% endif %}.
{% data variables.product.prodname_dependabot %} puede ayudarte monitoreando tus dependencias y notificándote cuando contengan una vulnerabilidad conocida. {% ifversion fpt or ghec or ghes > 3.2 %}Incluso puedes habilitar el {% data variables.product.prodname_dependabot %} para que levante automáticamente solicitudes de cambios que actualicen la dependencia a una versión segura.{% endif %} Para obtener más información, consulta las secciones "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)"{% ifversion fpt or ghec or ghes > 3.2 %} y "[Acerca de las actualizaciones de seguridad del Dependabot](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates)"{% endif %}.
### Assessment of exposure to risk from a vulnerable dependency
### Valoración de la exposición a riesgos de una dependencia vulnerable
When you discover you are using a vulnerable dependency, for example, a library or a framework, you must assess your project's level of exposure and determine what action to take. Vulnerabilities are usually reported with a severity score to show how severe their impact could be. The severity score is a useful guide but cannot tell you the full impact of the vulnerability on your code.
Cuando descubres que estás utilizando una dependencia vulnerable, por ejemplo, una librería o marco de trabajo, debes valorar el nivel de exposición de tu proyecto y determinar la acción a tomar. Las vulnerabilidades a menudo se reportan con una calificación de gravedad para mostrarte qué tan grave pudo haber sido el impacto. Esta calificación de gravedad es una guía útil, pero no puede decirte el impacto total de la vulnerabilidad en tu código.
To assess the impact of a vulnerability on your code, you also need to consider how you use the library and determine how much risk that actually poses to your system. Maybe the vulnerability is part of a feature that you don't use, and you can update the affected library and continue with your normal release cycle. Or maybe your code is badly exposed to risk, and you need to update the affected library and ship an updated build right away. This decision depends on how you're using the library in your system, and is a decision that only you have the knowledge to make.
Para valorar el impacto de una vulnerabilidad en tu código, también necesitas considerar cómo utilizas la librería y determinar cuánto riesgo real representa para tu sistema. Tal vez, la vulnerabilidad es parte de una característica que no utilizas y puedes actualizar la librería afectada y seguir con tu ciclo de lanzamiento normal. O tal vez tu código se expuso fuertemente a los riesgos y necesitas actualizar la librería afectada y enviar una actualización de compilación de inmediato. Esta decisión dependen de cómo utilizas la librería en tu sistema y es una decisión sobre la cuál solo tú tendrás conocimiento para realizar.
## Secure your communication tokens
## Asegurar tus tokens de comunicación
Code often needs to communicate with other systems over a network, and requires secrets (like a password, or an API key) to authenticate. Your system needs access to those secrets to run, but it's best practice to not include them in your source code. This is especially important for public repositories, but also for private repositories to which many people might have access.
A menudo, el código necesita comunicarse con otros sistemas a través de una red y requiere secretos (como una contrasella o llave de API) para autenticarse. Tu sistema necesita acceso a estos secretos para ejecutarse, pero es la mejor práctica el no incluirlos en tu código fuente. Esto es especialmente importante en el caso de los repositorios públicos, pero también para los repositorios privados a los cuales tienen acceso muchas personas.
### Automatic detection of secrets committed to a repository
### Detección automática de secretos confirmados a un repositorio
{% note %}
@@ -70,30 +70,30 @@ Code often needs to communicate with other systems over a network, and requires
{% data reusables.secret-scanning.enterprise-enable-secret-scanning %}
{% ifversion fpt or ghec %}
{% data variables.product.prodname_dotcom %} partners with many providers to automatically detect when secrets are committed to or stored in your public repositories, and will notify the provider so they can take appropriate actions to ensure your account remains secure. For more information, see "[About {% data variables.product.prodname_secret_scanning %} for partner patterns](/code-security/secret-scanning/about-secret-scanning#about-secret-scanning-for-partner-patterns)."
{% data variables.product.prodname_dotcom %} se asocia con muchos proveedores para detectar automáticamente cuándo se confirman los secretos o cuando se almacenan en tus repositorios públicos y notifica al proveedor para que puedan tomar acciones adecuadas para garantizar que tu cuenta sigue estando segura. Para obtener más información, consulta la sección "[Acerca del {% data variables.product.prodname_secret_scanning %} para los patrones asociados](/code-security/secret-scanning/about-secret-scanning#about-secret-scanning-for-partner-patterns)".
{% endif %}
{% ifversion fpt %}
{% data reusables.secret-scanning.fpt-GHAS-scans %}
{% elsif ghec %}
If your organization uses {% data variables.product.prodname_GH_advanced_security %}, you can enable {% data variables.product.prodname_secret_scanning_GHAS %} on any repository owned by the organization. También puedes definir patrones personalizados para detectar secretos adicionales a nivel de repositorio, organización o empresa. Para obtener más información, consulta la sección "[Acerca del {% data variables.product.prodname_secret_scanning_GHAS %}](/code-security/secret-scanning/about-secret-scanning#about-secret-scanning-for-advacned-security)".
Si tu organización utiliza la {% data variables.product.prodname_GH_advanced_security %}, puedes habilitar el {% data variables.product.prodname_secret_scanning_GHAS %} en cualquier repositorio que le pertenezca a la organización. También puedes definir patrones personalizados para detectar secretos adicionales a nivel de repositorio, organización o empresa. Para obtener más información, consulta la sección "[Acerca del {% data variables.product.prodname_secret_scanning_GHAS %}](/code-security/secret-scanning/about-secret-scanning#about-secret-scanning-for-advacned-security)".
{% else %}
You can configure {% data variables.product.prodname_secret_scanning %} to check for secrets issued by many service providers and to notify you when any are detected. También puedes definir patrones personalizados para detectar secretos adicionales a nivel de repositorio, organización o empresa. For more information, see "[About secret scanning](/code-security/secret-scanning/about-secret-scanning)" and "[Secret scanning patterns](/code-security/secret-scanning/secret-scanning-patterns)."
Puedes configurar el {% data variables.product.prodname_secret_scanning %} para que verifique si muchos proveedores de servicios emitieron secretos y para notificarte cuando estos se detecten. También puedes definir patrones personalizados para detectar secretos adicionales a nivel de repositorio, organización o empresa. Para obtener más información, consulta las secciones "[Acerca del escaneo de secretos](/code-security/secret-scanning/about-secret-scanning)" y "[Patrones del escaneo de secretos](/code-security/secret-scanning/secret-scanning-patterns)".
{% endif %}
{% ifversion fpt or ghec or ghes > 3.2 or ghae %}
### Secure storage of secrets you use in {% data variables.product.product_name %}
### Almacenamiento seguro de los secretos que utilizas en {% data variables.product.product_name %}
{% endif %}
{% ifversion fpt or ghec %}
Además de tu código, probablemente necesitarás utilizar secretos en otros lugares. For example, to allow {% data variables.product.prodname_actions %} workflows, {% data variables.product.prodname_dependabot %}, or your {% data variables.product.prodname_codespaces %} development environment to communicate with other systems. Para obtener más información sobre cómo almacenar y utilizar secretos de forma segura, consulta las secciones "[Secretos cifrados en las acciones](/actions/security-guides/encrypted-secrets)", "[Administrar los secretos cifrados para el Dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)" y "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".
Además de tu código, probablemente necesitarás utilizar secretos en otros lugares. Por ejemplo, para permitir que los flujos de trabajo de {% data variables.product.prodname_actions %}, el {% data variables.product.prodname_dependabot %} o tu ambiente de desarrollo de {% data variables.product.prodname_codespaces %} se comuniquen con otros sistemas. Para obtener más información sobre cómo almacenar y utilizar secretos de forma segura, consulta las secciones "[Secretos cifrados en las acciones](/actions/security-guides/encrypted-secrets)", "[Administrar los secretos cifrados para el Dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)" y "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".
{% endif %}
{% ifversion ghes > 3.2 or ghae %}
Además de tu código, probablemente necesitarás utilizar secretos en otros lugares. For example, to allow {% data variables.product.prodname_actions %} workflows{% ifversion ghes %} or {% data variables.product.prodname_dependabot %}{% endif %} to communicate with other systems. For more information on how to securely store and use secrets, see "[Encrypted secrets in Actions](/actions/security-guides/encrypted-secrets){% ifversion ghes %}" and "[Managing encrypted secrets for Dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)."{% else %}."{% endif %}
Además de tu código, probablemente necesitarás utilizar secretos en otros lugares. Por ejemplo, para permitir que los flujos de trabajo de {% data variables.product.prodname_actions %}{% ifversion ghes %} o el {% data variables.product.prodname_dependabot %}{% endif %} se comuniquen con otros sistemas. Para obtener más información sobre cómo almacenar y utilizar secretos de forma segura, consulta las secciones "[Secretos cifrados en las acciones](/actions/security-guides/encrypted-secrets){% ifversion ghes %}" y "[Administrar los secretos cifrados para el dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)".{% else %}".{% endif %}
{% endif %}
## Keep vulnerable coding patterns out of your repository
## Mantener los patrones de código vulnerable fuera de tu repositorio
{% note %}
@@ -103,13 +103,13 @@ Además de tu código, probablemente necesitarás utilizar secretos en otros lug
{% data reusables.code-scanning.enterprise-enable-code-scanning %}
### Create a pull request review process
### Crear un proceso de revisión de solicitudes de cambio
You can improve the quality and security of your code by ensuring that all pull requests are reviewed and tested before they are merged. {% data variables.product.prodname_dotcom %} has many features you can use to control the review and merge process. To get started, see "[About protected branches](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches)."
Puedes mejorar la calidad y seguridad de tu código si te aseguras de que todas las solicitudes de cambio se revisen y prueben antes de que se fusionen. {% data variables.product.prodname_dotcom %} tiene muchas características que puedes utilizar para controlar el proceso de revisión y fusión. Para iniciar, consulta la sección "[Acerca de las ramas protegidas](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches)".
### Scan your code for vulnerable patterns
### Escanear tu código en busca de patrones vulnerables
Insecure code patterns are often difficult for reviewers to spot unaided. In addition to scanning your code for secrets, you can check it for patterns that are associated with security vulnerabilities. For example, a function that isn't memory-safe, or failing to escaping user input that could lead to an injection vulnerability. {% data variables.product.prodname_dotcom %} offers several different ways to approach both how and when you scan your code. To get started, see "[About code scanning](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning)."
A menudo, es difícil que los revisores identifiquen los patrones de código inseguro si no cuentan con ayuda para ello. Adicionalmente a escanear tu código en busca de secretos, puedes verificar si existen patrones asociados con vulnerabilidades de seguridad. Por ejemplo, una función que no sea segura para la memoria o que falle en escapar la entrada del usuario y pudiera dar como resultado una vulnerabilidad de inyección. {% data variables.product.prodname_dotcom %} ofrece varias formas diferentes de tratar tanto cómo como cuándo escanear tu código. Para iniciar, consulta la sección "[Acerca del escaneo de código](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning)".
## Pasos siguientes

View File

@@ -29,21 +29,21 @@ You add dependencies directly to your supply chain when you specify them in a ma
{% data variables.product.product_name %} ofrece un rango de características que te ayudan a entender las dependencias en tu ambiente{% ifversion ghes < 3.3 or ghae %} y conocer las vulnerabilidades en dichas dependencias{% endif %}{% ifversion fpt or ghec or ghes > 3.2 %}, conocer las vulnerabilidades en dichas dependencias y parcharlas{% endif %}.
The supply chain features on {% data variables.product.product_name %} are:
Las características de la cadena de suministro en {% data variables.product.product_name %} son:
- **Gráfica de dependencias**
{% ifversion fpt or ghec or ghes > 3.1 or ghae %}- **Dependency review**{% endif %}
{% ifversion fpt or ghec or ghes > 3.1 or ghae %}- **Revisión de dependencias**{% endif %}
- **{% data variables.product.prodname_dependabot_alerts %} **
{% ifversion fpt or ghec or ghes > 3.2 %}- **{% data variables.product.prodname_dependabot_updates %}**
- **{% data variables.product.prodname_dependabot_security_updates %}**
- **{% data variables.product.prodname_dependabot_version_updates %}**{% endif %}
The dependency graph is central to supply chain security. The dependency graph identifies all upstream dependencies and public downstream dependents of a repository or package. You can see your repositorys dependencies and some of their properties, like vulnerability information, on the dependency graph for the repository.
La gráfica de dependencias es central para la seguridad de la cadena de suministro. The dependency graph identifies all upstream dependencies and public downstream dependents of a repository or package. You can see your repositorys dependencies and some of their properties, like vulnerability information, on the dependency graph for the repository.
{% ifversion fpt or ghec or ghes > 3.1 or ghae %}
Other supply chain features on {% data variables.product.prodname_dotcom %} rely on the information provided by the dependency graph.
- Dependency review uses the dependency graph to identify dependency changes and help you understand the security impact of these changes when you review pull requests.
- {% data variables.product.prodname_dependabot %} cross-references dependency data provided by the dependency graph with the list of advisories published in the {% data variables.product.prodname_advisory_database %}, scans your dependencies and generates {% data variables.product.prodname_dependabot_alerts %} when a potential vulnerability {% ifversion GH-advisory-db-supports-malware %}or malware{% endif %} is detected.
- El {% data variables.product.prodname_dependabot %} hace referencias cruzadas de los datos de las dependencias que proporciona la gráfica de dependencias con la lista de asesorías publicada en la {% data variables.product.prodname_advisory_database %}, escanea tus dependencias y genera {% data variables.product.prodname_dependabot_alerts %} cuando se detecta una vulnerabilidad {% ifversion GH-advisory-db-supports-malware %}o malware{% endif %}potencial.
{% ifversion fpt or ghec or ghes > 3.2 %}- {% data variables.product.prodname_dependabot_security_updates %} use the dependency graph and {% data variables.product.prodname_dependabot_alerts %} to help you update dependencies with known vulnerabilities in your repository.
{% data variables.product.prodname_dependabot_version_updates %} don't use the dependency graph and rely on the semantic versioning of dependencies instead. {% data variables.product.prodname_dependabot_version_updates %} help you keep your dependencies updated, even when they dont have any vulnerabilities.
@@ -51,7 +51,7 @@ Other supply chain features on {% data variables.product.prodname_dotcom %} rely
{% endif %}
{% ifversion ghes < 3.2 %}
{% data variables.product.prodname_dependabot %} cross-references dependency data provided by the dependency graph with the list of known advisories published in the {% data variables.product.prodname_advisory_database %}, scans your dependencies and generates {% data variables.product.prodname_dependabot_alerts %} when a potential vulnerability is detected.
El {% data variables.product.prodname_dependabot %} hace referencias de los datos de las dependencias que proporciona la gráfica de dependencias con la lista de las asesorías publicadas en la {% data variables.product.prodname_advisory_database %}, escanea tus dependencias y genera {% data variables.product.prodname_dependabot_alerts %} cuando se detecta una vulnerabilidad potencial.
{% endif %}
{% ifversion fpt or ghec or ghes %}

View File

@@ -46,5 +46,5 @@ Cuando la gráfica de dependencias se habilita por primera vez, cualquier manifi
## Leer más
{% ifversion ghec %}- "[Viewing insights for your organization](/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization)"{% endif %}
- "[Viewing and updatng {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts)"
- "[Viewing and updating {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts)"
- "[Solucionar problemas en la detección de dependencias vulnerables](/github/managing-security-vulnerabilities/troubleshooting-the-detection-of-vulnerable-dependencies)"

View File

@@ -1,7 +1,7 @@
---
title: Solución de problemas del gráfico de dependencias
intro: 'If the dependency information reported by the dependency graph is not what you expected, there are a number of points to consider, and various things you can check.'
shortTitle: Troubleshoot dependency graph
intro: 'Si la información de las dependencias que reporta la gráfica de dependencias no es la que esperabas, existen varios puntos a considerar y varias cosas que puedes verificar.'
shortTitle: Solucionar problemas en la gráfica de dependencias
versions:
fpt: '*'
ghes: '*'
@@ -22,19 +22,19 @@ topics:
## ¿Acaso la gráfica de dependencias solo encuentra depedencias en los manifiestos y lockfiles?
The dependency graph {% ifversion dependency-submission-api %}automatically{% endif %} includes information on dependencies that are explicitly declared in your environment. Esto es, dependencias que se especifican en un manifiesto o en un lockfile. La gráfica de dependencias también incluye dependencias transitivas generalmente, aún cuando no se especifican en un lockfile, mediante la revisión de las dependencias de las dependencias en un archivo de manifiesto.
La gráfica de dependencias incluye {% ifversion dependency-submission-api %}automáticamente{% endif %} la información de las dependencias que se declaran explícitamente en tu ambiente. Esto es, dependencias que se especifican en un manifiesto o en un lockfile. La gráfica de dependencias también incluye dependencias transitivas generalmente, aún cuando no se especifican en un lockfile, mediante la revisión de las dependencias de las dependencias en un archivo de manifiesto.
The dependency graph doesn't {% ifversion dependency-submission-api %}automatically{% endif %} include "loose" dependencies. Las dependencias "sueltas" son archivos individuales que se copian de otra fuernte y se revisan directamente en el repositorio o dentro de un archivo (tal como un archivo ZIP o JAR) en ves de que se referencien en un manifiesto de paquete de administrador o en un lockfile.
La gráfica de dependencias no incluye {% ifversion dependency-submission-api %}automáticamente{% endif %} las dependencias "sueltas". Las dependencias "sueltas" son archivos individuales que se copian de otra fuernte y se revisan directamente en el repositorio o dentro de un archivo (tal como un archivo ZIP o JAR) en ves de que se referencien en un manifiesto de paquete de administrador o en un lockfile.
{% ifversion dependency-submission-api %}However, you can use the Dependency submission API (beta) to add dependencies to a project's dependency graph, even if the dependencies are not declared in a manifest or lock file, such as dependencies resolved when a project is built. The dependency graph will display the submitted dependencies grouped by ecosystem, but separately from the dependencies parsed from manifest or lock files. For more information on the Dependency submission API, see "[Using the Dependency submission API](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)."{% endif %}
{% ifversion dependency-submission-api %}Sin embargo, puedes utilizar la API de emisión de dependencias (beta) para agregar dependencias a la gráfica de dependencias de un proyecto, incluso si estas no se declaran en un archivo de bloqueo o de manifiesto, tales como las dependencias que se resolvieron cuando se creó un proyecto. La gráfica de dependencias mostrará las dependencias emitidas agrupadas por ecosistema, pero separadas de aquellas que se analizan de archivos de bloqueo o de manifiesto. Para obtener más información sobre la API de emisión de dependencias, consulta la sección "[Utilizar la API de emisión de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)".{% endif %}
**Check**: Is the missing dependency for a component that's not specified in the repository's manifest or lockfile?
**Verifica**: ¿La dependencia faltante es para un componente que no se especifica en los archivos de bloqueo o de manifiesto en el repositorio?
## ¿Acaso la gráfica de dependencias detecta dependencias que se especifican utilizando variables?
La gráfica de dependencias analiza los manifiestos mientras se suben a {% data variables.product.prodname_dotcom %}. Por lo tanto, la gráfica de dependencias no tiene acceso al ambiente de compilación del proyecto, así que no puede resolver variables que se utilizan dentro de los manifiestos. If you use variables within a manifest to specify the name, or more commonly the version of a dependency, then that dependency will not {% ifversion dependency-submission-api %}automatically{% endif %} be included in the dependency graph.
La gráfica de dependencias analiza los manifiestos mientras se suben a {% data variables.product.prodname_dotcom %}. Por lo tanto, la gráfica de dependencias no tiene acceso al ambiente de compilación del proyecto, así que no puede resolver variables que se utilizan dentro de los manifiestos. Si utilizas variables dentro de un manifiesto para especificar el nombre o, más comúnmente, la versión de una dependencia, entonces dicha dependencia no se incluirá {% ifversion dependency-submission-api %}automáticamente{% endif %} en la gráfica de dependencias.
{% ifversion dependency-submission-api %}However, you can use the Dependency submission API (beta) to add dependencies to a project's dependency graph, even if the dependencies are only resolved when a project is built. For more information on the Dependency submission API, see "[Using the Dependency submission API](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)."{% endif %}
{% ifversion dependency-submission-api %}Sin embargo, puedes utilizar la API de emisión de dependencias (beta) para agregar dependencias la gráfica de dependencias de un proyecto, incluso si estas solo se resuelven cuando se crea un proyecto. Para obtener más información sobre la API de emisión de dependencias, consulta la sección "[Utilizar la API de emisión de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api)".{% endif %}
**Verifica**: ¿Acaso la dependencia faltante se declara en el manifiesto utilizando una variable para su nombre o versión?

View File

@@ -81,7 +81,9 @@ Los codespaces se diseñan para estar fortalecidos en seguridad predeterminadame
Utiliza siempre secretos cifrados cuando quieras utilizar información sensible (tal como tokens de acceso) en un codespace. Puedes acceder a tus secretos como variables de ambiente en el codespace, incluso desde la terminal. Por ejemplo, puedes lanzar una terminal dentro de tu codespace y utilizar `echo $SECRET_NAME` para ver el valor del secreto.
Los valores del secreto se copian a las variables de ambiente cada que el codespace se reanuda o se crea, así que, si actualizas un valor secreto mientras el codespace se ejecuta, necesitarás suspender y reanudar para para tomar el valor actualziado.
The secret values are copied to environment variables whenever the codespace is resumed or created and are also synced when they are changed.
Secrets are not copied into the environment if you don't have write access to the codespace's repository.
Para obtener más información sobre los secretos, consulta:
- "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)"
@@ -93,6 +95,8 @@ Cuando creas un codespace desde una rama de solicitud de cambios desde una bifur
- En el caso de un repositorio privado, el codespace obtiene acceso tanto a la bifurcación como al padre.
- En el caso de un repositorio público, el codespace solo tendrá acceso a la bifurcación y a abrir solicitudes de cambios en el padre.
We also further protect you in these scenarios by not injecting any of your [codespace secrets](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces) into the environment.
### Buenas prácticas adicionales
Existen algunas buenas prácticas adicionales y riesgos de los cuales debes estar consciente cuando utilices los {% data variables.product.prodname_codespaces %}.

View File

@@ -10,6 +10,7 @@ redirect_from:
- /codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace
topics:
- Codespaces
type: how_to
---
## Acerca de los tipos de máquina

View File

@@ -0,0 +1,104 @@
---
title: Configuring automatic deletion of your codespaces
shortTitle: Configure automatic deletion
intro: 'Unused codespaces are automatically deleted. You can choose how long your stopped codespaces are retained, up to a maximum of 30 days.'
product: '{% data reusables.gated-features.codespaces %}'
versions:
fpt: '*'
ghec: '*'
topics:
- Codespaces
type: how_to
---
By default, {% data variables.product.prodname_codespaces %} are automatically deleted after they have been stopped and have remained inactive for 30 days.
However, because {% data variables.product.prodname_codespaces %} incur storage charges, you may prefer to reduce the retention period by changing your default period in your personal settings for {% data variables.product.prodname_github_codespaces %}. Para obtener más información sobre los cargos por almacenamiento, consulta la sección "[Acerca de la facturación para los codespaces](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces#codespaces-pricing)".
{% note %}
**Note**: Whether or not you have set a personal codespace retention period, it's a good idea to get into the habit of deleting codespaces that you no longer need. Para obtener más información, consulta la sección "[Borrar un codespace](/codespaces/developing-in-codespaces/deleting-a-codespace)."
{% endnote %}
Automatic deletion happens irrespective of whether a codespace contains unpushed changes. To prevent automatic deletion of a codespace, just open the codespace again. The retention period is reset every time you connect to a codespace, and the retention countdown restarts when the codespace is stopped.
If a repository belongs to an organization, the organization admin may have set a retention period for the whole organization. If this period is less than the default retention period in your personal settings then the organization retention period will apply to codespaces you create for this repository. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)."
Each codespace has its own retention period. You may, therefore, have codespaces with different rentention periods. For example, if:
* You created a codespace, changed your default retention period, then created another codespace.
* You created a codespace from an organization-owned repository that has a retention period configured for the organization.
{% note %}
**Note**: The retention period is specified in days. A day represents a 24-hour period, beginning at the time of day when you stop a codespace.
{% endnote %}
{% webui %}
## Setting a default retention period for your codespaces
{% data reusables.user-settings.access_settings %}
{% data reusables.user-settings.codespaces-tab %}
1. Under "Default retention period", enter the number of days for which you want your codespaces to be retained, by default, after they have been stopped.
![Selecting your retention period](/assets/images/help/codespaces/setting-default-retention.png)
You can set your default retention period between `0` and `30` days.
{% warning %}
**Warning**: Setting the period to `0` will result in your codespaces being immediately deleted when you stop them, or when they timeout due to inactivity. For more information, see "[Setting your timeout period for Codespaces](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces)."
{% endwarning %}
1. Haz clic en **Save ** (guardar).
This default setting may be superseded by a shorter organization-level retention period.
If you set a retention period of more than a day, you'll be sent an email notification one day prior to its deletion.
## Checking the remaining time until autodeletion
You can check whether a codespace is due to be automatically deleted soon.
When an inactive codespace is approaching the end of its retention period, this is indicated in your list of codespaces on {% data variables.product.prodname_dotcom %} at [https://github.com/codespaces](https://github.com/codespaces).
![The pre-deletion message in the codespaces list on {% data variables.product.prodname_dotcom %}](/assets/images/help/codespaces/retention-deletion-message.png)
{% endwebui %}
{% cli %}
## Setting a retention period for a codespace
You can set your default retention period in your web browser, on {% data variables.product.prodname_dotcom_the_website %}. For more information, click the "Web browser" tab at the top of this article.
{% data reusables.cli.cli-learn-more %}
{% endcli %}
{% vscode %}
## Setting the retention period
You can set your default retention period in your web browser, on {% data variables.product.prodname_dotcom_the_website %}. For more information, click the "Web browser" tab at the top of this article.
## Checking whether codespaces will be autodeleted soon
You can check, in the {% data variables.product.prodname_vscode %} desktop application, whether a codespace is due to be automatically deleted soon.
{% data reusables.codespaces.click-remote-explorer-icon-vscode %}
1. Choose **{% data variables.product.prodname_github_codespaces %}** from the drop-down menu at the top right of the Remote Explorer, if it is not already selected.
1. Under "GITHUB CODESPACES," position the mouse pointer over the codespace that you're interested in. A pop-up box is displayed showing you information about the codespace.
If the codespace is nearing the end of its retention period, a line is included telling you when the codespace will be deleted.
![Codespace information showing the time until deletion](/assets/images/help/codespaces/vscode-deleting-in-5-days.png)
{% endvscode %}

View File

@@ -15,5 +15,6 @@ children:
- /setting-your-default-editor-for-codespaces
- /setting-your-default-region-for-codespaces
- /setting-your-timeout-period-for-codespaces
- /configuring-automatic-deletion-of-your-codespaces
---

View File

@@ -1,5 +1,6 @@
---
title: Personalizing Codespaces for your account
shortTitle: Personalize your codespaces
intro: 'You can personalize {% data variables.product.prodname_codespaces %} by using a `dotfiles` repository on {% data variables.product.product_name %} or by using Settings Sync.'
redirect_from:
- /github/developing-online-with-github-codespaces/personalizing-github-codespaces-for-your-account
@@ -14,7 +15,6 @@ topics:
- Set up
- Fundamentals
product: '{% data reusables.gated-features.codespaces %}'
shortTitle: Personalize your codespaces
---

View File

@@ -1,5 +1,6 @@
---
title: Configurar tu editor predeterminado para Codesapces
shortTitle: Configurar el editor predeterminado
intro: 'Puedes configurar tu editor predeterminado para {% data variables.product.prodname_codespaces %} en tu página de ajustes personal.'
product: '{% data reusables.gated-features.codespaces %}'
versions:
@@ -9,7 +10,7 @@ redirect_from:
- /codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces
topics:
- Codespaces
shortTitle: Configurar el editor predeterminado
type: how_to
---
En la página de ajustes, puedes configurar las preferencias de tu editor para que los codespaces recién creados se abran automáticamente, ya sea en {% data variables.product.prodname_vscode %} para la Web o en {% data variables.product.prodname_vscode %} para escritorio.

View File

@@ -1,5 +1,6 @@
---
title: Configurar tu región predeterminada para Codespaces
shortTitle: Configurar la región predeterminada
intro: 'Pues configurar tu región predeterminada en la página de ajustes de perfil de {% data variables.product.prodname_github_codespaces %} para personalizar en donde se guardan tus datos.'
product: '{% data reusables.gated-features.codespaces %}'
versions:
@@ -9,7 +10,7 @@ redirect_from:
- /codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces
topics:
- Codespaces
shortTitle: Configurar la región predeterminada
type: how_to
---
Puedes seleccionar manualmente la región en la que se crearán tus codespaces, permitiéndote cumplir con los requisitos de cumplimiento y seguridad estrictos. Predeterminadamente, tu región se configura automáticamente con base en tu ubicación.

View File

@@ -1,5 +1,6 @@
---
title: Configurar tu periodo de inactividad para los Codespaces
shortTitle: Configurar el tiempo de inactividad
intro: 'Puedes configurar tu periodo de inactividad predeterminado para los {% data variables.product.prodname_codespaces %} en tu página de ajustes personales.'
product: '{% data reusables.gated-features.codespaces %}'
versions:
@@ -7,7 +8,7 @@ versions:
ghec: '*'
topics:
- Codespaces
shortTitle: Configurar el tiempo de inactividad
type: how_to
---
Un codespace dejará de ejecutarse después de un periodo de inactividad. Puedes especificar la longitud de este periodo. El ajuste actualizado se aplicará a cualquier codespace recién creado.
@@ -22,7 +23,7 @@ Algunas organizaciones podrían tener una política de tiempo de inactividad má
{% webui %}
## Configurar tu tiempo de inactividad predeterminado
## Configurar tu periodo predeterminado de tiempo de inactividad
{% data reusables.user-settings.access_settings %}
{% data reusables.user-settings.codespaces-tab %}
@@ -32,7 +33,7 @@ Algunas organizaciones podrían tener una política de tiempo de inactividad má
{% cli %}
## Configurar tu periodo de inactividad
## Configurar el periodo de tiempo de inactividad para un codespace
{% data reusables.cli.cli-learn-more %}
@@ -45,3 +46,11 @@ gh codespace create --idle-timeout 90m
Si no especificas un periodo de inactividad cuando creas un codespace, entonces se utilizará el predeterminado. Para obtener más información sobre un periodo de inactividad predeterminado, haz clic en la pestaña de "Buscador web" en esta página. Actualmente, no puedes especificar un periodo de inactividad predeterminado a través del {% data variables.product.prodname_cli %}.
{% endcli %}
{% vscode %}
## Configurar un periodo de tiempo de inactividad
Puedes configurar tu periodo predeterminado de tiempo de inactividad en tu buscador web, en {% data variables.product.prodname_dotcom_the_website %}. Como alternativa, si utilizas el {% data variables.product.prodname_cli %} para crear un codespace, puedes configurar un periodo de tiempo de inactividad para ese codespace en particular. Para obtener más información, haz clic en la pestaña adecuada arriba.
{% endvscode %}

View File

@@ -26,16 +26,26 @@ includeGuides:
- /codespaces/developing-in-codespaces/using-source-control-in-your-codespace
- /codespaces/developing-in-codespaces/using-codespaces-for-pull-requests
- /codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace
- /codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace
- /codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces
- /codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account
- /codespaces/customizing-your-codespace/setting-your-default-editor-for-codespaces
- /codespaces/customizing-your-codespace/setting-your-default-region-for-codespaces
- /codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces
- /codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces
- /codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces
- /codespaces/managing-your-codespaces/managing-gpg-verification-for-codespaces
- /codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces
- /codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces
- /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization
- /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization
- /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces
- /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types
- /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period
- /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces
- /codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports
- /codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces
- /codespaces/codespaces-reference/understanding-billing-for-codespaces
- /codespaces/codespaces-reference/using-the-command-palette-in-codespaces
- /codespaces/codespaces-reference/disaster-recovery-for-codespaces

View File

@@ -16,6 +16,7 @@ children:
- /restricting-access-to-machine-types
- /restricting-the-visibility-of-forwarded-ports
- /restricting-the-idle-timeout-period
- /restricting-the-retention-period-for-codespaces
shortTitle: Admnistrar tu organización
---

View File

@@ -57,8 +57,8 @@ Si agregas una política a nivel organizacional, deberías configurarla en la el
![Editar la restricción de tipo de máquina](/assets/images/help/codespaces/edit-machine-constraint.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener más información sobre otras restricciones, consulta las secciones "[Restringir la visibilidad de los puertos reenviados](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" y "[Restringir el periodo de tiempo de inactividad](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)".
1. Después de terminar de agregar restricciones a tu política, haz clic en **Guardar**.
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener información sobre otras restricciones, consulta las secciones "[Restringir la visibilidad de los puertos reenviados](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)", "[Restringir el periodo de tiempo de espera inactivo](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" y "[Restringir el periodo de retención para los codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)".
1. After you've finished adding constraints to your policy, click **Save**.
## Editar una política
You can edit an existing policy. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política.

View File

@@ -18,7 +18,7 @@ By default, codespaces time out after 30 minutes of inactivity. When a codespace
The personal settings of a {% data variables.product.prodname_dotcom %} user allow them to define their own timeout period for codespaces they create. This may be longer than the default 30-minute period. For more information, see "[Setting your timeout period for Codespaces](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-codespaces)."
As an organization owner, you may want to configure constraints on the maximum idle timeout period for codespaces owned by your organization. This can help you limit costs associated with codespaces that are left to timeout after long periods of inactivity. You can set a maximum timeout for all codespaces owned by your organization, or for the codespaces of specific repositories.
As an organization owner, you may want to configure constraints on the maximum idle timeout period for codespaces created for repositories owned by your organization. This can help you to limit costs associated with codespaces that are left to timeout after long periods of inactivity. You can set a maximum timeout for the codespaces for all repositories owned by your organization, or for the codespaces of specific repositories.
{% note %}
@@ -49,23 +49,23 @@ If you add an organization-wide policy with a timeout constraint, you should set
![Add a constraint for idle timeout](/assets/images/help/codespaces/add-constraint-dropdown-timeout.png)
1. Click {% octicon "pencil" aria-label="The edit icon" %} to edit the constraint.
1. Haz clic en {% octicon "pencil" aria-label="The edit icon" %} para editar la restricción.
![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**.
![Choose the port visibility options](/assets/images/help/codespaces/maximum-minutes-timeout.png)
![Set the maximum timeout in minutes](/assets/images/help/codespaces/maximum-minutes-timeout.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. If you want to add another constraint to the policy, click **Add constraint** and choose another constraint. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" and "[Restricting the visibility of forwarded ports](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)."
1. After you have finished adding constraints to your policy, click **Save**.
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener información sobre otras restricciones, consulta las secciones "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)", "[Restringir la visibilidad de los puertos reenviados](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" y "[Restringir el periodo de retención para los codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)".
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are created, and to existing codespaces the next time they are started.
## Editar una política
You can edit an existing policy. For example, you may want to add or remove constraints to or from a policy.
You can edit an existing policy. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política.
1. Muestra la página de "Políticas del Codespace". For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)."
1. Haz clic en el nombre de la política que quieres editar.

View File

@@ -0,0 +1,78 @@
---
title: Restricting the retention period for codespaces
shortTitle: Restrict the retention period
intro: You can set a maximum retention period for any codespaces owned by your organization.
product: '{% data reusables.gated-features.codespaces %}'
permissions: 'To manage retention constraints for an organization''s codespaces, you must be an owner of the organization.'
versions:
fpt: '*'
ghec: '*'
type: how_to
topics:
- Codespaces
---
## Resumen
{% data variables.product.prodname_codespaces %} are automatically deleted after they have been stopped and have remained inactive for a defined number of days. The retention period for each codespace is set when the codespace is created and does not change.
Everyone who has access to {% data variables.product.prodname_github_codespaces %} can configure a retention period for the codespaces they create. The initial setting for this retention period is 30 days. Individual users can set this period within the range 0-30 days. For more information, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)."
As an organization owner, you may want to configure constraints on the maximum retention period for codespaces created for the repositories owned by your organization. This can help you to limit the storage costs associated with codespaces that are stopped and then left unused until they are automatically deleted. For more information about storage charges, see "[About billing for Codespaces](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces#codespaces-pricing)." You can set a maximum retention period for all, or for specific, repositories owned by your organization.
### Configurar políticas específicas para los repositorios y a lo largo de la organización
When you create a policy, you choose whether it applies to all repositories in your organization, or only to specified repositories. If you create an organization-wide policy with a codespace retention constraint, then the retention constraints in any policies that are targeted at specific repositories should be shorter than the restriction configured for the entire organization, or they will have no effect. The shortest retention period - in an organization-wide policy, a policy targeted at specified repositories, or in someone's personal settings - is applied.
If you add an organization-wide policy with a retention constraint, you should set the retention period to the longest acceptable period. You can then add separate policies that set the maximum retention to a shorter period for specific repositories in your organization.
## Adding a policy to set a maximum codespace retention period
{% data reusables.profile.access_org %}
{% data reusables.profile.org_settings %}
{% data reusables.codespaces.codespaces-org-policies %}
1. Click **Add constraint** and choose **Retention period**.
![Add a constraint for retention periods](/assets/images/help/codespaces/add-constraint-dropdown-retention.png)
1. Haz clic en {% octicon "pencil" aria-label="The edit icon" %} para editar la restricción.
![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png)
1. Enter the maximum number of days codespaces can remain stopped before they are automatically deleted, then click **Save**.
![Set the retention period in days](/assets/images/help/codespaces/maximum-days-retention.png)
{% note %}
**Notas**:
* A day, in this context, is a 24-hour period, beginning at the time of day when the codespace was stopped.
* The valid range is 0-30 days.
* Setting the period to `0` will result in codespaces being immediately deleted when they are stopped, or when they timeout due to inactivity.
{% endnote %}
{% data reusables.codespaces.codespaces-policy-targets %}
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener información sobre otras restricciones, consulta las secciones "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)", "[Restringir la visibilidad de los puertos reenviados](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" y "[Restringir el periodo de inactividad](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)".
1. After you've finished adding constraints to your policy, click **Save**.
The policy will be applied to all new codespaces that are created.
## Editar una política
You can edit an existing policy. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política.
The retention period constraint is only applied to codespaces when they are created. Editing a policy has no effect on existing codespaces.
1. Muestra la página de "Políticas del Codespace". For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)."
1. Haz clic en el nombre de la política que quieres editar.
1. Haz los cambios requeridos y luego haz clic en **Guardar**.
## Borrar una política
You can delete a policy at any time. Deleting a policy has no effect on existing codespaces.
1. Muestra la página de "Políticas del Codespace". For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)."
1. Haz clic en el botón de borrar a la derecha de la política que quieras borrar.
![El botón de borrar para una política](/assets/images/help/codespaces/policy-delete.png)

View File

@@ -54,8 +54,8 @@ If you add an organization-wide policy, you should set it to the most lenient vi
![Choose the port visibility options](/assets/images/help/codespaces/choose-port-visibility-options.png)
{% data reusables.codespaces.codespaces-policy-targets %}
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. For information about other constraints, see "[Restricting access to machine types](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)" and "[Restricting the idle timeout period](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)."
1. Después de terminar de agregar restricciones a tu política, haz clic en **Guardar**.
1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener más información sobre otras restricciones, consulta las secciones "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)", "[Restringir el periodo de tiempo de inactividad](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)" y "[Restringir el periodo de detección para los codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)".
1. After you've finished adding constraints to your policy, click **Save**.
## Editar una política
You can edit an existing policy. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política.

View File

@@ -1,7 +1,7 @@
---
title: Acerca de las precompilaciones de los codespaces
shortTitle: Acerca de las precompilaciones
intro: Codespaces prebuilds help to speed up the creation of new codespaces for large or complex repositories.
intro: Las precompilaciones de codespaces te ayudan a acelerar la creación de codespaces nuevos para repositorios grandes o complejos.
versions:
fpt: '*'
ghec: '*'
@@ -12,11 +12,11 @@ product: '{% data reusables.gated-features.codespaces %}'
## Resumen
Prebuilding your codespaces allows you to be more productive and access your codespace faster, particularly if your repository is large or complex and new codespaces currently take more than 2 minutes to start. Esto es porque cualquier código fuente, extensiones del editor, dependencias de proyecto, comandos y configuraciones ya se han descargado, instalado y aplicado antes de que crees un codespace para tu proyecto. Piensa en la precompilación como una plantilla "lista para utilizarse" para un codespace.
El precompilar tus codespaces te permite ser más productivo y acceder a ellos más rápido, particularmente si tu repositorio es grande o complejo y los codespaces nuevos actualmente toman más de 2 minutos en iniciar. Esto es porque cualquier código fuente, extensiones del editor, dependencias de proyecto, comandos y configuraciones ya se han descargado, instalado y aplicado antes de que crees un codespace para tu proyecto. Piensa en la precompilación como una plantilla "lista para utilizarse" para un codespace.
Predeterminadamente, cada que subas cambios a tu repositorio, {% data variables.product.prodname_codespaces %} utiliza {% data variables.product.prodname_actions %} para actualizar tus precompilaciones automáticamente.
Cuando las precompilaciones están disponibles para una rama en particular de un repositorio y para tu región, verás la etiqueta "{% octicon "zap" aria-label="The zap icon" %} Prebuild ready" en la lista de opciones de tipo de máquina al crear un codespace. If a prebuild is still being created, you will see the "{% octicon "history" aria-label="The history icon" %} Prebuild in progress" label. Para obtener más información, consulta la sección "[Crear un codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)".
Cuando las precompilaciones están disponibles para una rama en particular de un repositorio y para tu región, verás la etiqueta "{% octicon "zap" aria-label="The zap icon" %} Prebuild ready" en la lista de opciones de tipo de máquina al crear un codespace. Si se está creando una precompilación, verás la etiqueta "{% octicon "history" aria-label="The history icon" %} Prebuild in progress". Para obtener más información, consulta la sección "[Crear un codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)".
![La caja de diálogo para elegir un tipo de máquina](/assets/images/help/codespaces/choose-custom-machine-type.png)

View File

@@ -50,11 +50,11 @@ Antes de que configures las precompilaciones para tu proyecto, se debe cumplir c
* **Cada subida** (el ajuste predeterminado) - Con este ajuste, las configuraciones de precompilación se actualizarán en cada subida que se haga a la rama predeterminada. Esto garantizará que los codespaces que se generen de una plantilla de precompilación siempre contengan la configuración de codespace más reciente, incluyendo cualquier dependencia que se haya actualizado o agregado recientemente.
* **En el cambio de configuración** - Con este ajuste, as configuraciones de precompilación se actualizarán cada que lo hagan los archivos de configuración asociados para cada repositorio y rama en cuestión. Esto garantiza que los cambios a los archivos de configuración del contenedor dev para el repositorio se utilicen cuando se genera un codespace desde una plantilla de precompilación. El flujo de trabajo de acciones que actualiza la plantilla de precompilación se ejecutará con menor frecuencia, así que esta opción utilizará menos minutos de las acciones. Sin embargo, esta opción no garantiza que los cdespaces siempre incluyan dependencias recientemente actualizadas o agregadas, así que estas podrían tener que agregarse o actualizarse manualmente después de que un codespace se haya creado.
* **Programado** - Con este ajuste, puedes hacer que tus configuraciones de precompilación se actualicen en un itinerario personalizado que tú defines. This can reduce consumption of Actions minutes, however, with this option, codespaces may be created that do not use the latest dev container configuration changes.
* **Programado** - Con este ajuste, puedes hacer que tus configuraciones de precompilación se actualicen en un itinerario personalizado que tú defines. Esto puede reducir el consumo de minutos de acciones, sin embargo, con esta opción, pueden crearse codespaces que no utilicen los últimos cambios de configuración de contenedores dev.
![Las opciones de activación de precompilación](/assets/images/help/codespaces/prebuilds-triggers.png)
1. Select **Reduce prebuild available to only specific regions** to limit access to your prebuilt image, then select which regions you want it available in. Developers can only create codespaces from a prebuild if they are located in a region you select. By default, your prebuilt image is available to all regions where codespaces is available and storage costs apply for each region.
1. Selecciona **Reducir la precompilación disponible para solo las regiones específicas** para limitar el acceso a tu imagen precompilada y luego selecciona en qué regiones quieres que esté disponible. Los desarrolladores solo pueden crear condespaces desde una precompilación si estos se ubican en una región que selecciones. Predeterminadamente, tu imagen de precompilación se encuentra disponible a todas las regiones en donde están disponibles los codespaces y aplican costos de almacenamiento para cada región.
![Las opciones de selección de región](/assets/images/help/codespaces/prebuilds-regions.png)
@@ -66,17 +66,17 @@ Antes de que configures las precompilaciones para tu proyecto, se debe cumplir c
{% endnote %}
1. Set the number of prebuild template versions to be retained. You can input any number between 1 and 5. The default number of saved versions is 2, which means that only the latest template version and the previous version are saved.
1. Configura la cantidad de versiones de plantillas de precompilación a retener. Puedes ingresar cualquier número entre 1 y 5. La cantidad predeterminada de versiones guardadas es de 2, lo que significa que solo la versión de plantilla más reciente y la versión previa se guardan.
Depending on your prebuild trigger settings, your prebuild template could change with each push or on each dev container configuration change. Retaining older versions of prebuild templates enables you to create a prebuild from an older commit with a different dev container configuration than the current prebuild template. Since there is a storage cost associated with retaining prebuild template versions, you can choose the number of versions to be retained based on the needs of your team. For more information on billing, see "[About billing for {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces#codespaces-pricing)."
Dependiendo de los ajustes de activación de la precompilación, tu plantilla de precompilación podría cambiar con cada subida o en cada cambio de configuración de contenedor dev. El retener versiones anteriores de plantillas de precompilación te permite crear una precompilación desde una confirmación antigua con una configuración de contenedor dev diferente que la plantilla de precompilación actual. Ya que existe un costo de almacenamiento asociado con la retención de versiones de plantilla de precompilación, puedes elegir la cantidad de versiones a retener con base en las necesidades de tu equipo. Para obtener más información sobre la facturación, consulta la sección "[Acerca de la facturación para los {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces#codespaces-pricing)".
If you set the number of prebuild template versions to save to 1, {% data variables.product.prodname_codespaces %} will only save the latest version of the prebuild template and will delete the older version each time the template is updated. This means you will not get a prebuilt codespace if you go back to an older dev container configuration.
Si configuras la cantidad de versiones de plantillas de precompilación a guardar en 1, {% data variables.product.prodname_codespaces %} solo guardará la última versión de la plantilla de precompilación y borrará la versión antigua cada que se actualice la plantilla. Esto significa que no obtendrás un codespace precompilado si regresas a una configuración de contenedor dev antigua.
![The prebuild template history setting](/assets/images/help/codespaces/prebuilds-template-history-setting.png)
![El ajuste de historial de plantilla de precompilación](/assets/images/help/codespaces/prebuilds-template-history-setting.png)
1. Add users or teams to notify when the prebuild workflow run fails for this configuration. You can begin typing a username, team name, or full name, then click the name once it appears to add them to the list. The users or teams you add will receive an email when prebuild failures occur, containing a link to the workflow run logs to help with further investigation.
1. Agrega usuarios o equipos para notificarles cuando falla la ejecución de flujo de trabajo de la precompilación para esta configuración. Puedes comenzar a escribir un nombre de usuario, de equipo o nombre completo y luego hacer clic en el nombre una vez que aparezca para agregarlos a la lista. Los usuarios o equipos que agregues recibirán un correo electrónico cuando ocurran fallas en la precompilación, los cuales contienen un enlace a las bitácoras de ejecución de flujo de trabajo para ayudar con las investigaciones subsecuentes.
![The prebuild failure notification setting](/assets/images/help/codespaces/prebuilds-failure-notification-setting.png)
![El ajuste de notificación de falla de precompilación](/assets/images/help/codespaces/prebuilds-failure-notification-setting.png)
1. Da clic en **Crear**.

View File

@@ -1,6 +1,6 @@
---
title: Prebuilding your codespaces
intro: 'To speed up codespace creation, you can configure your project to prebuild codespaces for specific branches in specific regions.'
title: Precompilar tus codespaces
intro: 'Para agilizar la creación de codespaces, puedes configurar tu proyecto para que los precompile para ramas específicas en regiones específicas.'
product: '{% data reusables.gated-features.codespaces %}'
versions:
fpt: '*'

View File

@@ -1,7 +1,7 @@
---
title: Administrar las precompilaciones
shortTitle: Administrar las precompilaciones
intro: 'Puedes revisar, modificar y borrar las configuraciones de precompilación de tu repositorio.'
title: Managing prebuilds
shortTitle: Manage prebuilds
intro: 'You can review, modify, and delete the prebuild configurations for your repository.'
versions:
fpt: '*'
ghec: '*'
@@ -12,113 +12,113 @@ product: '{% data reusables.gated-features.codespaces %}'
miniTocMaxHeadingLevel: 3
---
## Verificar, cambiar y borrar tus configuraciones de precompilación
## Checking, changing, and deleting your prebuild configurations
Las precompilaciones que configuras para un repositorio se crean y actualizan utilizando un flujo de trabajo de {% data variables.product.prodname_actions %} que admistra el servicio de {% data variables.product.prodname_codespaces %}.
The prebuilds that you configure for a repository are created and updated using a {% data variables.product.prodname_actions %} workflow, managed by the {% data variables.product.prodname_codespaces %} service.
Dependiendo de los ajustes en una configuración de precompilación, el flujo de trabajo para actualizar la plantilla de precompilación podría activarse con estos eventos:
Depending on the settings in a prebuild configuration, the workflow to update the prebuild template may be triggered by these events:
* Crear o actualizar la configuración de precompilación
* Subir una confirmación o una solicitud de cambios a una rama que está configurada para tener precompilaciones
* Cambiar cualquiera de los archivos de configuración del contenedor dev
* Un itinerario que definiste en la configuración de la precompilación
* Activar el flujo de trabajo manualmente
* Creating or updating the prebuild configuration
* Pushing a commit or a pull request to a branch that's configured to have prebuilds
* Changing any of the dev container configuration files
* A schedule that you've defined in the prebuild configuration
* Manually triggering the workflow
Los ajustes en la configuración de precompilación determinan qué eventos activan automáticamente una actualización de la plantilla de precompilación. Para obtener más información, consulta la sección "[Configurar las precompilaciones](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)".
The settings in the prebuild configuration determine which events automatically trigger an update of the prebuild template. For more information, see "[Configuring prebuilds](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)."
Las personas con acceso administrativo a un repositorio pueden verificar el progreso de las precompilaciones, así como editar y borrar las configuraciones de estas.
People with admin access to a repository can check the progress of prebuilds, edit, and delete prebuild configurations.
### Ver el progreso de las precompilaciones
Pudes ver el estado actual de la ejecución de flujo de trabajo más reciente para cada configuración de precompilación que hayas ajustado en la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio. Por ejemplo, "Actualmente en ejecución" o "Última ejecución hace 1 hora".
### Viewing the progress of prebuilds
You can view the current status of the latest workflow run for each prebuild configuration you've set up on the {% data variables.product.prodname_codespaces %} page of your repository settings. For example, "Currently running" or "Last run 1 hour ago."
Para ver la salida de bitácora de la ejecución de flujo de trabajo de la precompilación más reciente, haz clic en **Ver la salida**.
To see the log output for the latest prebuild workflow run, click **See output**.
![El botón de 'Ver salida'](/assets/images/help/codespaces/prebuilds-see-output.png)
![The 'See output' button](/assets/images/help/codespaces/prebuilds-see-output.png)
Esto muestra la salida de la ejecución más reciente del flujo de trabajo en la pestaña de **Acciones**.
This displays the output of the most recent run of the workflow in the **Actions** tab.
![La salida de flujo de trabajo de precompilación](/assets/images/help/codespaces/prebuilds-log-output.png)
![The prebuild workflow output](/assets/images/help/codespaces/prebuilds-log-output.png)
Como alternativa, para ver todas las ejecuciones de flujo de trabajo de una precompilación asociadas con la rama especificada, haz clic en el botón de puntos suspensivos y elige **Ver ejecuciones** del menú desplegable.
Alternatively, to view all prebuild workflow runs associated with the specified branch, click the ellipsis button and choose **View runs** from the dropdown menu.
![La opción de 'Ver ejecuciones' en el menú desplegable](/assets/images/help/codespaces/prebuilds-view-runs.png)
![The 'View runs' option in the drop-down menu](/assets/images/help/codespaces/prebuilds-view-runs.png)
Esto muestra el historial de ejecución de flujo de trabajo para las precompilaciones para la rama asociada.
This displays the workflow run history for prebuilds for the associated branch.
![El historial de ejecución de flujo de trabajo](/assets/images/help/codespaces/prebuilds-workflow-runs.png)
![The workflow run history](/assets/images/help/codespaces/prebuilds-workflow-runs.png)
### Editar una configuración de precompilación
### Editing a prebuild configuration
1. En la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio, haz clic en los puntos suspensivos a la derecha de la configuración de precompilación que quieras editar.
1. En el menú desplegable, haz clic en **Editar**.
1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration you want to edit.
1. In the dropdown menu, click **Edit**.
![The 'Edit' option in the drop-down menu](/assets/images/help/codespaces/prebuilds-edit.png)
![La opción de 'Editar' en el menú desplegable](/assets/images/help/codespaces/prebuilds-edit.png)
1. Make the required changes to the prebuild configuration, then click **Update**.
1. Haz los cambios requeridos en la configuración de precompilación y luego haz clic en **Actualizar**.
### Disabling a prebuild configuration
### Inhabilitar una configuración de precompilación
To pause the update of prebuild templates for a configuration, you can disable workflow runs for the configuration. Disabling the workflow runs for a prebuild configuration does not delete any previously created prebuild templates for that configuration and, as a result, codespaces will continue to be generated from an existing prebuild template.
Para pausar la actualización de las plantillas de precompilación de una configuración, puedes inhabilitar las ejecuciones de flujo de trabajo para dicha configuración. El inhabilitar las ejecuciones de flujo de trabajo para una configuración de precompilación no borra ninguna plantilla de precompilación creada anteriormente para dicha configuración y, como resultado, los codespaces seguirán generándose desde una plantilla de precompilación existente.
Disabling the workflow runs for a prebuild configuration is useful if you need to investigate template creation failures.
El inhabilitar las ejecuciones de flujos de trabajo para una configuración precompilada es útil si necesitas investigar los fallos en la creación de plantillas.
1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration you want to disable.
1. In the dropdown menu, click **Disable runs**.
1. En la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio, haz clic en los puntos suspensivos a la derecha de la configuración de precompilación que quieras inhabilitar.
1. En el menú desplegable, haz clic en **Inhabilitar ejecuciones**.
![The 'Disable runs' option in the drop-down menu](/assets/images/help/codespaces/prebuilds-disable.png)
![La opción de 'Inhabilitar ejecuciones' en el menú desplegable](/assets/images/help/codespaces/prebuilds-disable.png)
1. To confirm that you want to disable this configuration, click **OK**.
1. Para confirmar que quieres inhabilitar esta configuración, haz clic en **OK**.
### Deleting a prebuild configuration
### Borrar una configuración de precompilación
Deleting a prebuild configuration also deletes all previously created prebuild templates for that configuration. As a result, shortly after you delete a configuration, prebuilds generated by that configuration will no longer be available when you create a new codespace.
El borrar una configuración de preocmpilación también borrar todas las plantillas de precompilación que se hayan creado previamente para dicha configuración. Como resultado, poco después de que borres una configuración, las precompilaciones generadas por dicha configuración ya no estarán disponibles cuando crees un codespace nuevo.
After you delete a prebuild configuration, workflow runs for that configuration that have been queued or started will still run. They will be listed in the workflow run history, along with previously completed workflow runs.
Después de que borras una configuración de precompilación, todavía se ejecutarán las ejecuciones de flujo de trabajo de dicha configuración que se hayan puesto en cola o que hayan iniciado. Se listarán en el historial de ejecución de flujo de trabajo junto con las ejecuciones de flujo de trabajo que se hayan completado previamente.
1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration you want to delete.
1. In the dropdown menu, click **Delete**.
1. En la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio, haz clic en los puntos suspensivos a la derecha de la configuración de precompilación que quieras borrar.
1. En el menú desplegable, haz clic en **Borrar**.
![The 'Delete' option in the drop-down menu](/assets/images/help/codespaces/prebuilds-delete.png)
![La opción de 'Borrar' en el menú desplegable](/assets/images/help/codespaces/prebuilds-delete.png)
1. Click **OK** to confirm the deletion.
1. Haz clic en **OK** para confirmar el borrado.
### Manually trigger prebuilds
### Activar las precompilaciones manualmente
It may be useful to manually trigger a workflow run for a prebuild configuration. Generally this is only necessary if you are debugging a problem with the workflow for a prebuild configuration.
Puede ser útil activar una ejecución de flujo de trabajo manualmente para una configuración precompilada. Generalmente, esto solo es necesario si estás depurando un problema con el flujo de trabajo de una configuración de precompilación.
1. On the {% data variables.product.prodname_codespaces %} page of your repository settings, click the ellipsis to the right of the prebuild configuration whose workflow you want to trigger.
1. In the dropdown menu, click **Manually trigger**.
1. En la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio, haz clic en los puntos suspensivos a la derecha de la configuración de precompilación cuyo flujo de trabajo quieras activar.
1. En el menú desplegable, haz clic en **Activar manualmente**.
![The 'Manually trigger' option in the drop-down menu](/assets/images/help/codespaces/prebuilds-manually-trigger.png)
![La opción de 'Activar manualmente' en le menú desplegable](/assets/images/help/codespaces/prebuilds-manually-trigger.png)
## Allowing a prebuild to access external resources
## Permitir que la precompilación acceda a recursos externos
Predeterminadamente, el flujo de trabajo de {% data variables.product.prodname_actions %} para una configuración de compilación previa solo puede acceder al contenido de su propio repositorio. Tu proyecto podría utilizar recursos adicionales para compilar el ambiente de desarrollo, tal como archivos en otros repositorios, paquetes, imágenes de GHCR y API. Para permitir que tu configuración de precompilación acceda a estos recursos, necesitarás crear una cuenta personal nueva y luego utilizar esta cuenta para crear un token de acceso personal (PAT) con los alcances adecuados.
1. Create a new personal account on {% data variables.product.prodname_dotcom %}.
By default, the {% data variables.product.prodname_actions %} workflow for a prebuild configuration can only access its own repository contents. Your project may use additional resources to build the development environment, such as files in other repositories, packages, GHCR images, and APIs. To allow your prebuild setup to access these resources, you will need to create a new personal account and then use this account to create a personal access token (PAT) with the appropriate scopes.
1. Create a new personal account on {% data variables.product.prodname_dotcom %}.
{% warning %}
**Warning**: Although you can generate the PAT using your existing personal account, we strongly recommend creating a new account with access only to the target repositories required for your scenario. This is because the access token's `repository` permission grants access to all of the repositories that the account has access to. Para obtener más información, consulta las secciones "[Registrarse para obtener una cuenta nueva de GitHub](/get-started/signing-up-for-github/signing-up-for-a-new-github-account)" y "[Fortalecimiento de seguridad para las {% data variables.product.prodname_actions %}](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access)".
**Warning**: Although you can generate the PAT using your existing personal account, we strongly recommend creating a new account with access only to the target repositories required for your scenario. This is because the access token's `repository` permission grants access to all of the repositories that the account has access to. For more information, see "[Signing up for a new GitHub account](/get-started/signing-up-for-github/signing-up-for-a-new-github-account)" and "[Security hardening for {% data variables.product.prodname_actions %}](/actions/security-guides/security-hardening-for-github-actions#considering-cross-repository-access)."
{% endwarning %}
1. Give the new account read access to the required repositories. Para obtener más información, consulta la sección "[Administrar el acceso de un individuo a un repositorio de la organización](/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository)".
1. While signed into the new account, create a PAT with the `repo` scope. Optionally, if the prebuild will need to download packages from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}, also select the `read:packages` scope. Para obtener más información, consulta la sección "[Crear un token de acceso personal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)".
1. Give the new account read access to the required repositories. For more information, see "[Managing an individual's access to an organization repository](/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository)."
1. While signed into the new account, create a PAT with the `repo` scope. Optionally, if the prebuild will need to download packages from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}, also select the `read:packages` scope. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)."
!['repo' and 'packages' scopes selected for a PAT](/assets/images/help/codespaces/prebuilds-select-scopes.png)
!['repo' and 'packages' scopes selected for a PAT](/assets/images/help/codespaces/prebuilds-select-scopes.png)
If the prebuild will use a package from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}, you will need to either grant the new account access to the package or configure the package to inherit the access permissions of the repository you are prebuilding. For more information, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)."
{% ifversion ghec %}1. Authorize the token for use with SAML single sign-on (SSO), so that it can access repositories that are owned by organizations with SSO enabled. For more information, see "[Authorizing a personal access token for use with SAML single sign-on](/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."
If the prebuild will use a package from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}, you will need to either grant the new account access to the package or configure the package to inherit the access permissions of the repository you are prebuilding. Para obtener más información, consulta la sección "[Configurar el control de accesos y la visibilidad de un paquete](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)".
{% ifversion ghec %}1. Authorize the token for use with SAML single sign-on (SSO), so that it can access repositories that are owned by organizations with SSO enabled. Para obtener más información, consulta la sección "[Autorizar un token de acceso personal para utilizar con el inicio de sesión único de SAML](/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)".
![The button to configure SSO for a PAT](/assets/images/help/codespaces/configure-SSO-for-PAT.png)
![The button to configure SSO for a PAT](/assets/images/help/codespaces/configure-SSO-for-PAT.png)
{% endif %}
1. Copy the token string. You will assign this to a {% data variables.product.prodname_codespaces %} repository secret.
1. Sign back into the account that has admin access to the repository.
1. Sign back into the account that has admin access to the repository.
1. In the repository for which you want to create {% data variables.product.prodname_codespaces %} prebuilds, create a new {% data variables.product.prodname_codespaces %} repository secret called `CODESPACES_PREBUILD_TOKEN`, giving it the value of the token you created and copied. For more information, see "[Managing encrypted secrets for your repository and organization for {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces#adding-secrets-for-a-repository)."
The PAT will be used for all subsequent prebuild templates created for your repository. Unlike other {% data variables.product.prodname_codespaces %} repository secrets, the `CODESPACES_PREBUILD_TOKEN` secret is only used for prebuilding and will not be available to use in codespaces created from your repository.
## Leer más
## Further reading
- "[Solucionar problemas de las compilaciones previas](/codespaces/troubleshooting/troubleshooting-prebuilds)"
- "[Troubleshooting prebuilds](/codespaces/troubleshooting/troubleshooting-prebuilds)"

View File

@@ -110,7 +110,7 @@ Para utilizar un Dockerfile como parte de una configuración de contenedor dev,
}
```
For more information about using a Dockerfile in a dev container configuration, see the {% data variables.product.prodname_vscode_shortname %} documentation "[Create a development container](https://code.visualstudio.com/docs/remote/create-dev-container#_dockerfile)."
Para obtener más información sobre cómo utilizar un Dockerfile en una configuración de contenedor dev, consulta la documentación de {% data variables.product.prodname_vscode_shortname %} "[Crear un contenedor de desarrollo](https://code.visualstudio.com/docs/remote/create-dev-container#_dockerfile)".
## Utilizar la configuración de contenedor dev predeterminada
@@ -122,7 +122,7 @@ La configuración predeterminada es una buena opción si estás trabajando en un
## Utilizar una configuración predeterminada de contenedor dev
Puedes elegir de entre una lista de configuraciones predeterminadas para crear una configuración de contenedor dev para tu repositorio. These configurations provide common setups for particular project types, and can help you quickly get started with a configuration that already has the appropriate container options, {% data variables.product.prodname_vscode_shortname %} settings, and {% data variables.product.prodname_vscode_shortname %} extensions that should be installed.
Puedes elegir de entre una lista de configuraciones predeterminadas para crear una configuración de contenedor dev para tu repositorio. Estas configuraciones proporcionan ajustes comunes para tipos de proyecto particulares y pueden ayudarte a iniciar rápidamente con una configuración que ya tenga las opciones de contenedor, ajustes de {% data variables.product.prodname_vscode_shortname %} y extensiones de {% data variables.product.prodname_vscode_shortname %} que deberían instalarse.
Utilizar una configuración predefinida es una gran idea si necesitas extensibilidad adicional. También puedes comenzar con una configuración predeterminada y modificarla conforme la necesites para tu proyecto.

View File

@@ -0,0 +1,81 @@
---
title: Configuring GitHub Copilot in a JetBrains IDE
intro: 'You can enable, configure, and disable {% data variables.product.prodname_copilot %} in a JetBrains IDE.'
product: '{% data reusables.gated-features.copilot %}'
topics:
- Copilot
versions:
feature: copilot
shortTitle: JetBrains
---
## About {% data variables.product.prodname_copilot %} in JetBrains IDEs
If you use a Jetbrains IDE, {% data variables.product.prodname_copilot %} can autocomplete code as you type. After installation, you can enable or disable {% data variables.product.prodname_copilot %}, and you can configure advanced settings within your IDE or on {% data variables.product.prodname_dotcom_the_website %}.
## Prerrequisitos
To configure {% data variables.product.prodname_copilot %} in a JetBrains IDE, you must install the {% data variables.product.prodname_copilot %} plugin. For more information, see "[Getting started with {% data variables.product.prodname_copilot %} in a JetBrains IDE](/copilot/getting-started-with-github-copilot/getting-started-with-github-copilot-in-a-jetbrains-ide)."
## Keyboard shortcuts for {% data variables.product.prodname_copilot %}
You can use the default keyboard shortcuts for inline suggestions in your JetBrains IDE when using {% data variables.product.prodname_copilot %}. Alternatively, you can rebind the shortcuts to your preferred keyboard shortcuts for each specific command. For more information on rebinding keyboard shortcuts in your JetBrains IDE, see the JetBrains documentation. For example, you can view the [IntelliJ IDEA](https://www.jetbrains.com/help/idea/mastering-keyboard-shortcuts.html#choose-keymap) documentation.
{% mac %}
| Acción | Shortcut |
|:-------------------------------------------------------------------------------------------- |:---------------------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> |
| Dismiss an inline suggestion | <kbd>Esc</kbd> |
| Show next inline suggestion | <kbd>Option (⌥) or Alt</kbd>+<kbd>]</kbd> |
| Show previous inline suggestion | <kbd>Option (⌥) or Alt</kbd>+<kbd>[</kbd> |
| Trigger inline suggestion | <kbd>Option (⌥)</kbd>+<kbd>\</kbd> |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Option (⌥) or Alt</kbd>+<kbd>Return</kbd> |
{% endmac %}
{% windows %}
| Acción | Shortcut |
|:-------------------------------------------------------------------------------------------- |:------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> |
| Dismiss an inline suggestion | <kbd>Esc</kbd> |
| Show next inline suggestion | <kbd>Alt</kbd>+<kbd>]</kbd> |
| Show previous inline suggestion | <kbd>Alt</kbd>+<kbd>[</kbd> |
| Trigger inline suggestion | <kbd>Alt</kbd>+<kbd>\</kbd> |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Alt</kbd>+<kbd>Enter</kbd> |
{% endwindows %}
{% linux %}
| Acción | Shortcut |
|:-------------------------------------------------------------------------------------------- |:------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> |
| Dismiss an inline suggestion | <kbd>Esc</kbd> |
| Show next inline suggestion | <kbd>Alt</kbd>+<kbd>]</kbd> |
| Show previous inline suggestion | <kbd>Alt</kbd>+<kbd>[</kbd> |
| Trigger inline suggestion | <kbd>Alt</kbd>+<kbd>\</kbd> |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Alt</kbd>+<kbd>Enter</kbd> |
{% endlinux %}
## Habilitar o inhabilitar {% data variables.product.prodname_copilot %}
You can enable or disable {% data variables.product.prodname_copilot %} from within your JetBrains IDE. The {% data variables.product.prodname_copilot %} status icon in the bottom panel of the JetBrains window indicates whether {% data variables.product.prodname_copilot %} is enabled or disabled. When enabled, the icon is highlighted. When disabled, the icon is grayed out.
1. To enable or disable {% data variables.product.prodname_copilot %}, click the status icon in the bottom panel of the JetBrains window. ![Status icon in JetBrains](/assets/images/help/copilot/status-icon-jetbrains.png)
2. If you are disabling {% data variables.product.prodname_copilot %}, you will be asked whether you want to disable it globally, or for the language of the file you are currently editing. To disable globally, click **Disable Completions**. Alternatively, click the language-specific button to disable {% data variables.product.prodname_copilot %} for the specified language. ![Disable {% data variables.product.prodname_copilot %} globally or for the current language](/assets/images/help/copilot/disable-copilot-global-or-langugage-jetbrains.png)
## Configuring advanced settings for {% data variables.product.prodname_copilot %}
You can manage advanced settings for {% data variables.product.prodname_copilot %} in your JetBrains IDE, such as how your IDE displays code completions, and which languages you want to enable or disable for {% data variables.product.prodname_copilot %}.
1. In your JetBrains IDE, click the **File** menu, then click **Settings**.
1. Under **Languages & Frameworks**, click **{% data variables.product.prodname_copilot %}**.
1. Edit the settings according to your personal preferences.
- To adjust the behaviour and appearance of code suggestions, and whether to automatically check for updates, select or deselect the corresponding checkboxes.
- If you have selected to receive automatic updates, you can choose whether to receive stable, but less frequent updates, or nightly updates, which may be less stable. Click the **Update channel** dropdown and select **Stable** for stable updates, or **Nightly** for nightly updates.
- Under "Disabled languages", use the checkboxes to select or deselect the languages you want to disable {% data variables.product.prodname_copilot %} for.
{% data reusables.copilot.dotcom-settings %}

View File

@@ -0,0 +1,18 @@
---
title: Configuring GitHub Copilot in Neovim
intro: 'You can enable, configure, and disable {% data variables.product.prodname_copilot %} in Neovim.'
product: '{% data reusables.gated-features.copilot %}'
versions:
feature: copilot
topics:
- Copilot
shortTitle: Neovim
---
## Configuring {% data variables.product.prodname_copilot %} in Neovim
For guidance on configuring {% data variables.product.prodname_copilot %} in Neovim, invoke the {% data variables.product.prodname_copilot %} documentation in Neovim by running the following command.
:help copilot
{% data reusables.copilot.dotcom-settings %}

View File

@@ -0,0 +1,108 @@
---
title: Configuring GitHub Copilot in Visual Studio Code
intro: 'You can enable, configure, and disable {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}.'
product: '{% data reusables.gated-features.copilot %}'
versions:
feature: copilot
shortTitle: Visual Studio Code
topics:
- Copilot
---
## Acerca de los {% data variables.product.prodname_copilot %} en {% data variables.product.prodname_vscode %}
If you use {% data variables.product.prodname_vscode %}, {% data variables.product.prodname_copilot %} can autocomplete code as you type. After installation, you can enable or disable {% data variables.product.prodname_copilot %}, and you can configure advanced settings within {% data variables.product.prodname_vscode %} or on {% data variables.product.prodname_dotcom_the_website %}.
## Prerrequisitos
To configure {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}, you must install the {% data variables.product.prodname_copilot %} plugin. For more information, see "[Getting started with {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}](/copilot/getting-started-with-github-copilot/getting-started-with-github-copilot-in-visual-studio-code)."
## Keyboard shortcuts for {% data variables.product.prodname_copilot %}
You can use the default keyboard shortcuts in {% data variables.product.prodname_vscode %} when using {% data variables.product.prodname_copilot %}. Alternatively, you can rebind the shortcuts in the Keyboard Shortcuts editor using your preferred keyboard shortcuts for each specific command. You can search for each keyboard shortcut by command name in the Keyboard Shortcuts editor.
{% mac %}
| Acción | Shortcut | Command name |
|:-------------------------------------------------------------------------------------------- |:--------------------------------------------- |:---------------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> | editor.action.inlineSuggest.commit |
| Dismiss an inline suggestion | <kbd>Esc</kbd> | editor.action.inlineSuggest.hide |
| Show next inline suggestion | <kbd>Option (⌥)</kbd>+<kbd>]</kbd><br> | editor.action.inlineSuggest.showNext |
| Show previous inline suggestion | <kbd>Option (⌥)</kbd>+<kbd>[</kbd><br> | editor.action.inlineSuggest.showPrevious |
| Trigger inline suggestion | <kbd>Option (⌥)</kbd>+<kbd>\</kbd><br> | editor.action.inlineSuggest.trigger |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Ctrl</kbd>+<kbd>Return</kbd> | github.copilot.generate |
| Toggle {% data variables.product.prodname_copilot %} on/off | _No default shortcut_ | github.copilot.toggleCopilot |
{% endmac %}
{% windows %}
| Acción | Shortcut | Command name |
|:-------------------------------------------------------------------------------------------- |:-------------------------------- |:---------------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> | editor.action.inlineSuggest.commit |
| Dismiss an inline suggestion | <kbd>Esc</kbd> | editor.action.inlineSuggest.hide |
| Show next inline suggestion | <kbd>Alt</kbd>+<kbd>]</kbd> | editor.action.inlineSuggest.showNext |
| Show previous inline suggestion | <kbd>Alt</kbd>+<kbd>[</kbd> | editor.action.inlineSuggest.showPrevious |
| Trigger inline suggestion | <kbd>Alt</kbd>+<kbd>\</kbd> | editor.action.inlineSuggest.trigger |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Ctrl</kbd>+<kbd>Enter</kbd> | github.copilot.generate |
| Toggle {% data variables.product.prodname_copilot %} on/off | _No default shortcut_ | github.copilot.toggleCopilot |
{% endwindows %}
{% linux %}
| Acción | Shortcut | Command name |
|:-------------------------------------------------------------------------------------------- |:-------------------------------- |:---------------------------------------- |
| Accept an inline suggestion | <kbd>Tab</kbd> | editor.action.inlineSuggest.commit |
| Dismiss an inline suggestion | <kbd>Esc</kbd> | editor.action.inlineSuggest.hide |
| Show next inline suggestion | <kbd>Alt</kbd>+<kbd>]</kbd> | editor.action.inlineSuggest.showNext |
| Show previous inline suggestion | <kbd>Alt</kbd>+<kbd>[</kbd> | editor.action.inlineSuggest.showPrevious |
| Trigger inline suggestion | <kbd>Alt</kbd>+<kbd>\</kbd> | editor.action.inlineSuggest.trigger |
| Open {% data variables.product.prodname_copilot %} (additional suggestions in separate pane) | <kbd>Ctrl</kbd>+<kbd>Enter</kbd> | github.copilot.generate |
| Toggle {% data variables.product.prodname_copilot %} on/off | _No default shortcut_ | github.copilot.toggleCopilot |
{% endlinux %}
## Rebinding keyboard shortcuts
If you don't want to use the default keyboard shortcuts in {% data variables.product.prodname_vscode %} when using {% data variables.product.prodname_copilot %}, you can rebind the shortcuts in the Keyboard Shortcuts editor using your preferred keyboard shortcuts for each specific command.
1. Click the **File** menu, click **Preferences**, then click **Keyboard Shortcuts**. ![Screenshot of Visual Studio Code keyboard shortcuts](/assets/images/help/copilot/vsc-keyboard-shortcuts.png)
1. In the "Keyboard Shortcuts" editor, search for the command name of the keyboard shortcut you want to change. ![Screenshot of Keyboard shortcut search bar](/assets/images/help/copilot/vsc-shortcut-search-bar.png)
1. Next to the command you want to change, click the pencil icon. ![Screenshot of Keyboard shortcut editor](/assets/images/help/copilot/vsc-edit-shortcuts.png)
1. Type the keystrokes you want to use for the command, then press <kbd>Enter</kbd>/<kbd>Return</kbd>. ![Screenshot of Edit keyboard shortcut textbox](/assets/images/help/copilot/vsc-edit-shortcuts-textbox.png)
{% data reusables.copilot.enabling-or-disabling-in-vsc %}
## Enabling or disabling inline suggestions
You can choose to enable or disable inline suggestions for {% data variables.product.prodname_copilot %} in {% data variables.product.prodname_vscode %}.
1. In the **File** menu, navigate to **Preferences** and click **Settings**. ![Screenshot of {% data variables.product.prodname_vscode %} settings](/assets/images/help/copilot/vsc-settings.png)
1. In the left-side panel of the settings tab, click **Extensions** and then select **Copilot**.
1. Under "Inline Suggest:Enable", select or deselect the checkbox to enable or disable inline suggestions.
## Enabling or disabling {% data variables.product.prodname_copilot %} for specific languages
You can specify which languages you want to enable or disable {% data variables.product.prodname_copilot %} for.
1. From the {% data variables.product.prodname_vscode %}, click the **Extensions** tab, then navigate to the **Copilot** section. For more information, see "[Enabling and disabling inline suggestions](#enabling-and-disabling-inline-suggestions)."
1. Under "Enable or disable Copilot for specified languages", click **Edit in settings.json**.
1. In the _settings.json_ file, add or remove the languages you want to enable or disable {% data variables.product.prodname_copilot %} for. For example, to enable Python in {% data variables.product.prodname_copilot %}, add `"python": true` to the list, ensuring there is a trailing comma after all but the last list item.
```json
{
"editor.inlineSuggest.enabled": true,
"github.copilot.enable": {
"*": true,
"yaml": false,
"plaintext": false,
"markdown": true,
"javascript": true,
"python": true
}
}
```
{% data reusables.copilot.dotcom-settings %}

Some files were not shown because too many files have changed in this diff Show More