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à.
Connessioni per la GitLab gestione automatica
Le connessioni consentono di autorizzare e stabilire configurazioni che associano il provider di terze parti alle risorse. AWS Per associare il tuo repository di terze parti come fonte per la tua pipeline, usi una connessione.
Nota
Invece di creare o utilizzare una connessione esistente nel tuo account, puoi utilizzare una connessione condivisa tra altre. Account AWS Consulta Usa una connessione condivisa con un altro account.
Nota
Questa funzionalità non è disponibile nelle regioni Asia Pacifico (Hong Kong), Asia Pacifico (Hyderabad), Asia Pacifico (Jakarta), Asia Pacifico (Melbourne), Asia Pacifico (Osaka), Africa (Città del Capo), Medio Oriente (Bahrain), Medio Oriente (Emirati Arabi Uniti), Europa (Spagna), Europa (Zurigo), Africa (Città del Capo), Israele (Tel Aviv) o AWS GovCloud (US-West). Per fare riferimento ad altre azioni disponibili, consulta. Integrazioni di prodotti e servizi con CodePipeline Per considerazioni su questa azione nella Regione Europa (Milano), vedere la nota inCodeStarSourceConnection per Bitbucket Cloud GitHub, GitHub Enterprise Server e GitLab azioni GitLab.com autogestite.
Per aggiungere un'azione sorgente GitLab autogestita in CodePipeline, puoi scegliere di:
-
Usa la procedura guidata di creazione della pipeline della CodePipeline console o la pagina di azione Modifica per scegliere l'opzione del provider GitLab autogestito. Vedi Crea una connessione a una rete GitLab autogestita (console) per aggiungere l'azione. La console consente di creare una risorsa host e una risorsa di connessioni.
-
Usa la CLI per aggiungere la configurazione dell'
CreateSourceConnectionazione con ilGitLabSelfManagedprovider e creare le tue risorse:-
Per creare le tue risorse di connessione, vedi Crea un host e connettiti a una rete GitLab autogestita (CLI) Creare una risorsa host e una risorsa di connessioni con la CLI.
-
Usa la configurazione dell'azione di
CreateSourceConnectionesempio in CodeStarSourceConnection per Bitbucket Cloud GitHub, GitHub Enterprise Server e GitLab azioni GitLab.com autogestite per aggiungere la tua azione come mostrato inCreazione di una pipeline (CLI).
-
Nota
Puoi anche creare una connessione utilizzando la console Developer Tools in Impostazioni. Vedi Creare una connessione.
Prima di iniziare:
-
Devi aver già creato un account con GitLab GitLab Enterprise Edition o GitLab Community Edition con un'installazione autogestita. Per ulteriori informazioni, consulta https://docs.gitlab.com/ee/subscriptions/self_managed/
. Nota
Le connessioni forniscono l'accesso solo all'account utilizzato per creare e autorizzare la connessione.
Nota
È possibile creare connessioni a un repository in cui si ha il ruolo di Proprietario GitLab, quindi la connessione può essere utilizzata con risorse come. CodePipeline Per i repository nei gruppi, non è necessario essere il proprietario del gruppo.
-
È necessario aver già creato un token di accesso GitLab personale (PAT) con l'
apiambito. Se la modalità amministratore è abilitata sulla tua GitLab istanza, il PAT deve includere anche l'admin_modeambito. Per ulteriori informazioni, consulta Token di accesso personalie Ambiti dei token di accesso sul sito Web. GitLab Devi essere un amministratore per creare e utilizzare il PAT. Nota
Il PAT viene utilizzato per autorizzare l'host e non viene altrimenti archiviato o utilizzato dalle connessioni. Per configurare un host, puoi creare un PAT temporaneo e quindi, dopo aver configurato l'host, puoi eliminare il PAT.
-
Puoi scegliere di configurare il tuo host in anticipo. Puoi configurare un host con o senza un VPC. Per dettagli sulla configurazione del VPC e informazioni aggiuntive sulla creazione di un host, consulta Creare un host.
Argomenti
Crea una connessione a una rete GitLab autogestita (console)
Segui questi passaggi per utilizzare la CodePipeline console per aggiungere un'azione di connessione per il tuo repository GitLab autogestito.
Nota
GitLab le connessioni autogestite forniscono solo l'accesso ai repository di proprietà dell'account GitLab autogestito utilizzato per creare la connessione.
Prima di iniziare:
Affinché una connessione host sia GitLab autogestita, è necessario aver completato i passaggi per creare una risorsa host per la connessione. Vedi Gestire gli host per le connessioni.
Passaggio 1: crea o modifica la pipeline
Per creare o modificare la pipeline
-
Accedi alla CodePipeline console.
-
Scegliere una delle seguenti opzioni.
-
Scegli di creare una pipeline. Segui i passaggi descritti in Create a Pipeline per completare la prima schermata e scegliere Avanti. Nella pagina Sorgente, in Provider di origine, scegli Gestione GitLab automatica.
-
Scegli di modificare una pipeline esistente. Scegli Modifica, quindi scegli Modifica fase. Scegli di aggiungere o modificare l'azione sorgente. Nella pagina Modifica azione, in Nome azione, inserisci il nome dell'azione. In Action provider, scegli GitLab Gestione automatica.
-
-
Esegui una delle seguenti operazioni:
-
In Connessione, se non hai già creato una connessione con il tuo provider, scegli Connetti a modalità GitLab autogestita. Procedi al passaggio 2: Crea una connessione a una rete GitLab autogestita.
-
In Connessione, se hai già creato una connessione con il tuo provider, scegli la connessione, quindi procedi al Passaggio 3: Salva l'azione sorgente GitLab autogestita.
-
Passaggio 2: crea una connessione a una rete autogestita GitLab
Dopo aver scelto di creare la connessione, viene visualizzata la pagina Connetti a modalità GitLab autogestita.
Per connettersi a una rete autogestita GitLab
-
In Connection Name (Nome connessione), immetti un nome per la connessione.
-
In URL, immetti l'endpoint per il server.
Nota
Se l'URL fornito è già stato utilizzato per configurare un host per una connessione, ti verrà richiesto di scegliere l'ARN della risorsa host creata in precedenza per quell'endpoint.
-
Se hai avviato il tuo server in un Amazon VPC e desideri connetterti con il tuo VPC, scegli Usa un VPC e completa le informazioni per il VPC.
-
Scegli Connetti a una rete autogestita. GitLab La connessione creata viene mostrata con uno stato Pending (In attesa). Viene creata una risorsa host per la connessione con le informazioni sul server fornite. Per il nome dell'host, viene utilizzato l'URL.
-
Scegli Update pending connection (Aggiornare la connessione in attesa).
-
Se si apre una pagina con un messaggio di reindirizzamento che conferma che desideri continuare con il provider, scegli Continua. Inserisci l'autorizzazione per il provider.
-
Viene visualizzata una
host_namepagina di configurazione. In Fornisci un token di accesso personale, fornisci GitLab al tuo PAT l'apiambito. Se la modalità amministratore è abilitata sulla tua GitLab istanza, il PAT deve includere anche l'admin_modeambito. Per ulteriori informazioni, vedi Ambiti dei token di accessosul GitLab sito Web. Nota
Solo un amministratore può creare e utilizzare il PAT.
Scegli Continua.
-
La pagina di connessione mostra la connessione creata in uno stato Available (Disponibile).
Passaggio 3: salva l' GitLab azione sorgente autogestita
Usa questi passaggi nella procedura guidata o nella pagina Modifica azione per salvare l'azione sorgente con le informazioni di connessione.
Per completare e salvare l'azione sorgente con la connessione
-
In Repository name (Nome repository), scegliere il nome del repository di terze parti.
-
In Pipeline triggers puoi aggiungere trigger se la tua azione è un'azione. CodeConnections Per configurare la configurazione dei trigger della pipeline e, facoltativamente, filtrare con i trigger, vedi maggiori dettagli in. Aggiungi trigger con tipi di eventi push o pull request di codice
-
In Output artifact format (Formato artefatto di output), occorre scegliere il formato degli artefatti.
-
Per memorizzare gli artefatti di output dell'azione GitLab autogestita utilizzando il metodo predefinito, scegli default. CodePipeline L'azione accede ai file dal repository e archivia gli artefatti in un file ZIP nel pipeline artifact store.
-
Per archiviare un file JSON contenente un riferimento URL al repository in modo che le operazioni downstream possano eseguire direttamente comandi Git, scegliere Full clone (Clone completo). Questa opzione può essere utilizzata solo dalle azioni a valle. CodeBuild
-
-
Scegli Avanti nella procedura guidata o Salva nella pagina delle azioni Modifica.
Crea un host e connettiti a una rete GitLab autogestita (CLI)
È possibile utilizzare AWS Command Line Interface (AWS CLI) per creare una connessione.
Per farlo, utilizzare il comando create-connection.
Importante
Una connessione creata tramite AWS CLI o AWS CloudFormation è attiva PENDING per impostazione predefinita. Dopo aver creato una connessione con la CLI o CloudFormation, usa la console per modificare la connessione e impostarne lo statoAVAILABLE.
È possibile utilizzare AWS Command Line Interface (AWS CLI) per creare un host per le connessioni installate.
È possibile utilizzare un host per rappresentare l'endpoint per l'infrastruttura in cui è installato il provider di terze parti. Dopo aver completato la creazione dell'host con la CLI, lo stato dell'host è in sospeso. Quindi si configura o si registra l'host per portarlo allo stato Disponibile. Quando l'host sarà disponibile, completa i passaggi per creare una connessione.
Per farlo, utilizzare il comando create-host.
Importante
Per impostazione predefinita, un host creato tramite Pending lo stato AWS CLI è attivo. Dopo aver creato un host con la CLI, utilizzate la console o la CLI per configurare l'host in modo da definirne lo stato. Available
Come creare un host
-
Apri un terminale (Linux, macOS o Unix) o prompt dei comandi (Windows). Usa il comando AWS CLI per eseguire il create-host comando, specificando
--name--provider-type, e--provider-endpointper la tua connessione. In questo esempio, il nome del provider di terze parti èGitLabSelfManagede l'endpoint èmy-instance.dev.aws codestar-connections create-host --name MyHost --provider-type GitLabSelfManaged --provider-endpoint "https://my-instance.dev"In caso di esito positivo, questo comando restituisce informazioni dell'Amazon Resource Name (ARN) dell'host simili alle seguenti.
{ "HostArn": "arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605" }Dopo questo passaggio, l'host è nello stato
PENDING. -
Utilizza la console per completare la configurazione dell'host e sposta l'host nello stato
Available.
Per creare una connessione a self-managed GitLab
-
Apri un terminale (Linux, macOS o Unix) o prompt dei comandi (Windows). Usa il comando AWS CLI per eseguire il create-connection comando, specificando l'
--host-arnand--connection-nameper la tua connessione.aws codestar-connections create-connection --host-arn arn:aws:codestar-connections:us-west-2:account_id:host/MyHost-234EXAMPLE --connection-name MyConnectionIn caso di esito positivo, questo comando restituisce informazioni dell'ARN della connessione simili alle seguenti.
{ "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad" } -
Utilizzare la console per configurare la connessione in attesa.
-
Per impostazione predefinita, la pipeline rileva le modifiche al codice inviato al repository dei sorgenti della connessione. Per configurare la configurazione del trigger della pipeline per il rilascio manuale o per i tag Git, effettuate una delle seguenti operazioni:
-
Per configurare la configurazione del trigger della pipeline in modo che inizi solo con una versione manuale, aggiungi la riga seguente alla configurazione:
"DetectChanges": "false", -
Per configurare la configurazione dei trigger della pipeline per filtrare con i trigger, vedi maggiori dettagli in. Aggiungi trigger con tipi di eventi push o pull request di codice Ad esempio, quanto segue aggiunge al livello di pipeline la definizione JSON della pipeline. In questo esempio,
release-v0erelease-v1sono i tag Git da includere edrelease-v2è il tag Git da escludere."triggers": [ { "providerType": "CodeStarSourceConnection", "gitConfiguration": { "sourceActionName": "Source", "push": [ { "tags": { "includes": [ "release-v0", "release-v1" ], "excludes": [ "release-v2" ] } } ] } } ]
-