

Amazon ya no CodeCatalyst está abierto a nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Cómo migrar desde CodeCatalyst](migration.md).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Publicación de paquetes con curl
<a name="packages-maven-curl"></a>

En esta sección se muestra cómo usar el cliente HTTP `curl` para publicar paquetes de Maven en un CodeCatalyst repositorio de paquetes. Publicar artefactos con `curl` puede resultar útil si no tiene el cliente de Maven en sus entornos o si no desea instalarlo.

**Publicación de un paquete de Maven con `curl`**

1. Debe almacenar un token de acceso personal (PAT) en una variable de entorno para autenticarse con él. `curl` CodeCatalyst Si ya tiene uno, puede utilizarlo. De lo contrario, puede crear uno y configurar la variable de entorno.

   1. Cree un PAT siguiendo los pasos de [Concesión de acceso al repositorio para usuarios mediante tokens de acceso personal](ipa-tokens-keys.md). Copie el PAT para guardarlo en una variable de entorno.

   1. En la línea de comandos del equipo local, configure una variable de entorno con el PAT.

      ```
      export CodeCatalyst_ARTIFACTS_TOKEN={{your_PAT}}
      ```

1. Use el siguiente `curl` comando para publicar el JAR en un CodeCatalyst repositorio. Sustituya {{username}}{{space\_name}},{{proj\_name}}, y {{repo\_name}} por su nombre CodeCatalyst de usuario, nombre del espacio, nombre del proyecto y nombre del repositorio de paquetes.

   ```
   curl --request PUT https://packages.{{region}}.codecatalyst.aws/maven/{{space-name}}/{{proj-name}}/{{repo-name}}/{{com}}/{{mycompany}}/{{app}}/{{my-app}}/{{1.0}}/{{my-app-1.0.jar}} \
        --user "{{username}}:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \
        --data-binary @target/{{path}}/{{to}}/{{my-app-1.0.jar}}
   ```

1. Utilice el siguiente `curl` comando para publicar el POM en un CodeCatalyst repositorio. Sustituya {{username}}{{space\_name}},{{proj\_name}}, y {{repo\_name}} por su nombre CodeCatalyst de usuario, nombre del espacio, nombre del proyecto y nombre del repositorio de paquetes.

   ```
   curl --request PUT https://packages.{{region}}.codecatalyst.aws/maven/{{space-name}}/{{proj-name}}/{{repo-name}}/{{com}}/{{mycompany}}/{{app}}/{{my-app}}/{{1.0}}/{{my-app-1.0.pom}} \
        --user "{{username}}:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \
        --data-binary @target/{{my-app-1.0.pom}}
   ```

1. En este punto, el paquete Maven estará en su CodeCatalyst repositorio con un estado de`Unfinished`. Para poder consumir el paquete, debe estar en el estado `Published`. Puede mover el paquete de `Unfinished` a `Published` cargando un `maven-metadata.xml` archivo a su paquete o cambiando el estado en la CodeCatalyst consola.

   1.  Opción 1: usar el siguiente comando `curl` para añadir un archivo `maven-metadata.xml` al paquete. Sustituya {{username}}{{space\_name}},{{proj\_name}}, y {{repo\_name}} por su nombre CodeCatalyst de usuario, nombre del espacio, nombre del proyecto y nombre del repositorio de paquetes. 

      ```
      curl --request PUT https://packages.{{region}}.codecatalyst.aws/maven/{{space-name}}/{{proj-name}}/{{repo-name}}/{{com}}/{{mycompany}}/{{app}}/{{my-app}}/{{maven-metadata.xml}} \
           --user "{{username}}:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \
           --data-binary @target/{{maven-metadata.xml}}
      ```

      Lo que sigue es un ejemplo del contenido de un archivo `maven-metadata.xml`:

      ```
      <metadata modelVersion="1.1.0">
          <groupId>com.mycompany.app</groupId>
          <artifactId>my-app</artifactId>
          <versioning>
              <latest>1.0</latest>
              <release>1.0</release>
              <versions>
                  <version>1.0</version>
              </versions>
              <lastUpdated>20200731090423</lastUpdated>
          </versioning>
      </metadata>
      ```

   1.  Opción 2: actualice el estado del paquete a `Published` en la CodeCatalyst consola. Para obtener información sobre cómo actualizar el estado de la versión de un paquete, consulte [Actualización del estado de la versión de un paquete](working-with-packages-update-version-status.md). 

Si solo tiene el archivo JAR de un paquete, puede publicar una versión del paquete consumible en un CodeCatalyst repositorio utilizando`mvn`. Esto puede resultar útil si no tiene acceso al código fuente o al POM del paquete. Para obtener más información, consulte [Publicación de paquetes externos](packages-maven-mvn.md#publishing-third-party-packages).