Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Manually syncing actions from GitHub.com

For users that need access to actions from GitHub.com, you can sync specific actions to your Servidor de GitHub Enterprise instance.

En este artículo

Note: GitHub Actions support on Servidor de GitHub Enterprise 2.22 is a limited public beta. To review the external storage requirements and request access to the beta, see "Enabling GitHub Actions and configuring storage."

Note: GitHub-hosted runners are not currently supported on Servidor de GitHub Enterprise. You can see more information about planned future support on the Itinerario público de GitHub.

GitHub Actions on Servidor de GitHub Enterprise is designed to work in environments without internet access. By default, workflows cannot use actions from GitHub.com and Mercado GitHub.

To make specific actions from GitHub.com available to use in workflows, you can use GitHub's open source actions-sync tool to sync action repositories from GitHub.com to your enterprise instance. For other ways of accessing actions from GitHub.com, see "About using GitHub.com actions on Servidor de GitHub Enterprise."

About the actions-sync tool

The actions-sync tool must be run on a machine that can access the GitHub.com API and your Servidor de GitHub Enterprise instance's API. The machine doesn't need to be connected to both at the same time.

If your machine has access to both systems at the same time, you can do the sync with a single actions-sync sync command. If you can only access one system at a time, you can use the actions-sync pull and push commands.

The actions-sync tool can only download actions from GitHub.com that are stored in public repositories.

Prerrequisitos

  • Before using the the actions-sync tool, you must ensure that all destination organizations already exist on your enterprise instance. The following example demonstrates how to sync actions to an organization named synced-actions on an enterprise instance. For more information, see "Creating organizations."
  • You must create a personal access token (PAT) on your enterprise instance that can create and write to repositories in the destination organizations. Para obtener más información, consulta la sección "Crear un token de acceso personal".

Example: Using the actions-sync tool

This example demonstrates using the actions-sync tool to sync an individual action from GitHub.com to an enterprise instance.

Note: This example uses the actions-sync sync command, which requires concurrent access to both the GitHub.com API and your Servidor de GitHub Enterprise instance's API from your machine. If you can only access one system at a time, you can use the actions-sync pull and push commands. For more information, see the actions-sync README.

  1. Download and extract the latest actions-sync release for your machine's operating system.

  2. Create a directory to store cache files for the tool.

  3. Run the actions-sync sync command:

    ./actions-sync sync \
      --cache-dir "cache" \
      --destination-token "aabbccddeeffgg" \
      --destination-url "https://my-ghes-instance" \
      --repo-name "docker/build-push-action:synced-actions/docker-build-push-action"

    The above command uses the following arguments:

    • --cache-dir: The cache directory on the machine running the command.

    • --destination-token: A personal access token for the destination enterprise instance.

    • --destination-url: The URL of the destination enterprise instance.

    • --repo-name: The action repository to sync. This takes the format of owner/repository:destination_owner/destination_repository.

      • The above example syncs the docker/build-push-action repository to the synced-actions/docker-build-push-action repository on the destination Servidor de GitHub Enterprise instance. You must create the organization named synced-actions on your enterprise instance before running the above command.
      • If you omit :destination_owner/destination_repository, the tool uses the original owner and repository name for your enterprise instance. Before running the command, you must create a new organization on your instance that matches the owner name of the action. Consider using a central organization to store the synced actions on your instance, as this means you will not need to create multiple new organizations if you sync actions from different owners.
      • You can sync multiple actions by replacing the --repo-name parameter with --repo-name-list or --repo-name-list-file. For more information, see the actions-sync README.
  4. After the action repository is created on your enterprise instance, people in your enterprise can use the destination repository to reference the action in their workflows. For the example action shown above:

    uses: synced-actions/docker-build-push-action@v1
    

    Para obtener más información, consultala sección "Sintaxis de flujo de trabajo para GitHub Actions".

¿Te ayudó este documento?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

O, learn how to contribute.