

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configura e usa twine con CodeArtifact
<a name="python-configure-twine"></a>

[twine](https://pypi.org/project/twine/) è un'utilità di pubblicazione di pacchetti per pacchetti Python. Per usare twine per pubblicare pacchetti Python nel CodeArtifact tuo repository, devi prima configurare twine con le informazioni e le credenziali del CodeArtifact tuo repository.

twine può essere usato solo per pubblicare pacchetti Python. [Per installare i pacchetti Python, puoi usare pip.](https://pypi.org/project/pip/) Per ulteriori informazioni, consulta [Configura e usa pip con CodeArtifact](python-configure-pip.md).

## Configura twine con il comando `login`
<a name="python-configure-twine-login"></a>

Innanzitutto, configura AWS le tue credenziali da utilizzare con AWS CLI, come descritto in. [Guida introduttiva con CodeArtifact](getting-started.md) Quindi, usa il CodeArtifact `login` comando per recuperare le credenziali e configurare twine con esse.

**Nota**  
Se accedi a un repository in un dominio di tua proprietà, non è necessario includerlo. `--domain-owner` Per ulteriori informazioni, consulta [Domini con più account](domain-overview.md#domain-overview-cross-account).

Per configurare twine, esegui il seguente comando.

```
aws codeartifact login --tool twine --domain my_domain --domain-owner 111122223333 --repository my_repo
```

 `login`recupera un token di autorizzazione CodeArtifact utilizzando le tue AWS credenziali. Il `login` comando configura twine da utilizzare con modificandolo per `~/.pypirc` aggiungere il repository specificato CodeArtifact dall'opzione con credenziali. `--repository`

Il periodo di autorizzazione predefinito dopo la chiamata `login` è di 12 ore e `login` deve essere chiamato per aggiornare periodicamente il token. Per ulteriori informazioni sul token di autorizzazione creato con il `login` comando, vedere[Token creati con il comando `login`](tokens-authentication.md#auth-token-login).

## Configura twine senza il comando `login`
<a name="python-configure-twine-without-login"></a>

 Se non è possibile utilizzare il `login` comando per configurare twine, è possibile utilizzare le variabili di `~/.pypirc` file o di ambiente. Per utilizzare il `~/.pypirc` file, aggiungete le seguenti voci. La password deve essere un token di autenticazione acquisito dall'`get-authorization-token`API.

```
[distutils]
index-servers =
 codeartifact
[codeartifact]
repository = https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/pypi/my_repo/
password = auth-token
username = aws
```

**Nota**  
Per utilizzare un endpoint dualstack, usa l'endpoint. `codeartifact.region.on.aws`

Per utilizzare le variabili di ambiente, procedi come segue.

**Nota**  
Se accedi a un repository in un dominio di tua proprietà, non è necessario includere il`--domain-owner`. Per ulteriori informazioni, consulta [Domini con più account](domain-overview.md#domain-overview-cross-account).

```
export TWINE_USERNAME=aws
export TWINE_PASSWORD=`aws codeartifact get-authorization-token --domain my_domain --domain-owner 111122223333 --query authorizationToken --output text`
export TWINE_REPOSITORY_URL=`aws codeartifact get-repository-endpoint --domain my_domain --domain-owner 111122223333 --repository my_repo --format pypi --query repositoryEndpoint --output text`
```

## Esegui twine
<a name="python-run-twine"></a>

Prima di usare twine per pubblicare le risorse del pacchetto Python, devi prima CodeArtifact configurare i permessi e le risorse.

1. Segui i passaggi indicati nella [Configurazione con AWS CodeArtifact](get-set-up-for-codeartifact.md) sezione per configurare l' AWS account, gli strumenti e le autorizzazioni.

1. Configura twine seguendo i passaggi in [Configura twine con il comando `login`](#python-configure-twine-login) o. [Configura twine senza il comando `login`](#python-configure-twine-without-login)

Dopo aver configurato twine, puoi eseguire `twine` i comandi. Usa il seguente comando per pubblicare gli asset del pacchetto Python.

```
twine upload --repository codeartifact mypackage-1.0.tgz
```

Per informazioni su come creare e impacchettare la tua applicazione Python, vedi [Generating Distribution Archives](https://packaging.python.org/tutorials/packaging-projects/#generating-distribution-archives) sul sito Web Python Packaging Authority.