{"meta":{"title":"Permitiendo que una precompilación acceda a otros repositorios","intro":"Puede permitir que la precompilación acceda a otros repositorios GitHub para que se compile correctamente.","product":"Codespaces","breadcrumbs":[{"href":"/es/codespaces","title":"Codespaces"},{"href":"/es/codespaces/prebuilding-your-codespaces","title":"Precompilación de los codespaces"},{"href":"/es/codespaces/prebuilding-your-codespaces/allowing-a-prebuild-to-access-other-repositories","title":"Habilitación de acceso al repositorio externo"}],"documentType":"article"},"body":"# Permitiendo que una precompilación acceda a otros repositorios\n\nPuede permitir que la precompilación acceda a otros repositorios GitHub para que se compile correctamente.\n\nDe forma predeterminada, el GitHub Actions flujo de trabajo de una configuración de precompilación solo puede acceder a su propio contenido del repositorio. Es posible que el proyecto use recursos adicionales, ubicados en otros lugares, para construir el entorno de desarrollo.\n\n## Permitir que una precompilación tenga acceso de lectura a recursos externos\n\nPuede configurar el acceso de lectura a otros repositorios GitHub con el mismo propietario del repositorio especificando permisos en el archivo `devcontainer.json` que utiliza su configuración de precompilación. Para más información, consulta [Administración del acceso a otros repositorios dentro del codespace](/es/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces).\n\n> \\[!NOTE]\n>\n> * Solo puede autorizar permisos de lectura de esta manera y el propietario del repositorio de destino debe ser el mismo que el propietario del repositorio para el que va a crear la precompilación. Por ejemplo, si vas a crear una configuración de precompilación para `octo-org/octocatrepository`, podrás conceder permisos de lectura para otros repositorios, como `octo-org/octodemo`, si esto se especifica en el archivo `devcontainer.json` y siempre que tú mismo tengas los permisos.\n> * No se pueden usar caracteres comodín para especificar repositorios. Debe definir permisos para cada repositorio para el que quiera conceder acceso.\n\nAl crear o editar una configuración de precompilación para un archivo `devcontainer.json` que configura el acceso de lectura a otros repositorios con el mismo propietario del repositorio, se te pedirá que concedas estos permisos al hacer clic en **Crear** o **Actualizar**. Para más información, consulta [Configuración de precompilaciones](/es/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-prebuilds).\n\n## Permitir que una precompilación tenga acceso de escritura a recursos externos\n\nSi su proyecto requiere acceso de escritura a los recursos, o si los recursos externos residen en un repositorio cuyo propietario es distinto del repositorio para el que está creando una configuración de precompilación, puede usar un personal access token para conceder este acceso.\n\nDeberá crear una nueva cuenta personal y, a continuación, utilizar esta cuenta para crear un personal access token (classic) con los permisos adecuados.\n\n1. Cree una nueva cuenta personal en GitHub.\n\n   > \\[!WARNING]\n   > Aunque puede generar personal access token (classic) con su cuenta personal actual, le recomendamos encarecidamente crear una cuenta nueva con acceso únicamente a los repositorios de destino necesarios para su caso de uso. Esto se debe a que el permiso `repository` del token de acceso concede acceso a todos los repositorios a los que tiene acceso la cuenta. Para más información, consulta [Creación de una cuenta en GitHub](/es/account-and-profile/how-tos/account-management/creating-an-account-on-github) y [Referencia de uso seguro](/es/actions/reference/security/secure-use).\n\n2. Conceda a la nueva cuenta acceso de lectura a los repositorios necesarios. Para más información, consulta [Administrar el acceso de una persona a un repositorio de una organización](/es/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-an-individuals-access-to-an-organization-repository).\n\n3. Mientras haya iniciado sesión en la nueva cuenta, cree un personal access token (classic) con el alcance `repo`. Opcionalmente, si la precompilación necesita descargar paquetes desde GitHubContainer registry, seleccione también el ámbito `read:packages`. Para más información, consulta [Administración de tokens de acceso personal](/es/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens).\n\n   ![Captura de pantalla de las opciones de configuración \"Seleccionar ámbitos\" para un personal access token (classic), con los ámbitos \"repo\" y \"read:packages\" seleccionados.](/assets/images/help/codespaces/prebuilds-select-scopes.png)\n\n   Si el precompilado usará un paquete de GitHubContainer registry, deberá conceder a la nueva cuenta acceso al paquete o configurar el paquete para heredar los permisos de acceso del repositorio que está precompilando. Para más información, consulta [Configurar la visibilidad y el control de accesos de un paquete](/es/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility).\n\n4. Copie la cadena del token. Esto se asignará a un Codespaces secreto de repositorio.\n\n5. Vuelva a iniciar sesión en la cuenta que tiene acceso de administrador al repositorio.\n\n6. En el repositorio para el que desea crear GitHub Codespaces prebuilds, cree un nuevo secreto del repositorio Codespaces llamado `CODESPACES_PREBUILD_TOKEN`, asignándole el valor del token que creó y copió. Para más información, consulta [Gestión de configuraciones secretas del entorno de desarrollo para el repositorio u organización](/es/codespaces/managing-codespaces-for-your-organization/managing-development-environment-secrets-for-your-repository-or-organization#adding-secrets-for-a-repository).\n\nEl personal access token se usará para todas las precompilaciones posteriores creadas para su repositorio. A diferencia de otros secretos del repositorio Codespaces, el secreto `CODESPACES_PREBUILD_TOKEN` solo se usa para la precompilación y no estará disponible para usarse en codespaces creados a partir de tu repositorio.\n\n## Información adicional\n\n* [Configuración de precompilaciones](/es/codespaces/prebuilding-your-codespaces/configuring-prebuilds)\n* [Solución de problemas de precompilaciones](/es/codespaces/troubleshooting/troubleshooting-prebuilds)"}