Se la tua istanza Secure Source Manager non è ancora stata creata, consulta Creare un'istanza Secure Source Manager per iniziare.
Prima di iniziare
- Crea o richiedi l'accesso a un'istanza Secure Source Manager. Per saperne di più, vedi
Creare un'istanza Secure Source Manager.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Installa il componente
beta
Google Cloud CLI:gcloud components install alpha
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare un repository, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Ruolo Creatore repository di istanze Secure Source Manager (
roles/securesourcemanager.instanceRepositoryCreator
) nell'istanza Secure Source Manager -
Ruolo Secure Source Manager Repo Creator (
roles/securesourcemanager.repoCreator
) nel progetto dell'istanza
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Per informazioni sulla concessione dei ruoli Secure Source Manager, consulta Controllo dell'accesso con IAM e Concedere agli utenti l'accesso all'istanza.
Crea un repository
Interfaccia web
-
Per accedere all'istanza di Secure Source Manager tramite la sua interfaccia web, copia il seguente URL nella barra degli indirizzi del browser.
INSTANCE_ID-PROJECT_NUMBER.LOCATION.sourcemanager.dev
Sostituisci quanto segue:
- INSTANCE_ID con il nome dell'istanza.
- PROJECT_NUMBER con il numero di progetto Google Cloud dell'istanza. Per informazioni sull'identificazione dei progetti, consulta Identificazione dei progetti.
- LOCATION con la regione dell'istanza.
Se necessario, esegui l'autenticazione utilizzando le credenziali di Secure Source Manager.
Fai clic sull'icona + Crea nuovo repository in alto a destra del menu di navigazione.
Compila i dettagli del repository:
ID repository: inserisci un nome per il repository.
(Facoltativo) Descrizione. Descrizione del repository.
Inizializza repository: facoltativo. Seleziona questa opzione se vuoi inizializzare il repository e aggiungere i file .gitignore, license e README.
.gitignore: facoltativo. Scegli i file da non monitorare utilizzando i modelli di menu a discesa.
license: facoltativo. Seleziona una licenza comune dal menu a discesa.
Branch predefinito: nome del branch predefinito.
Fai clic su Invia.
gcloud
Crea un repository utilizzando gcloud CLI eseguendo il seguente comando:
gcloud alpha source-manager repos create REPOSITORY_ID \ --region=LOCATION \ --project=PROJECT_ID \ --instance=INSTANCE_ID \ --description=DESCRIPTION \ --default-branch=BRANCH \ --gitignores=GITIGNORES \ --license=LICENSE \ --readme=README
Sostituisci quanto segue:
REPOSITORY_ID
con il nome del tuo repository.LOCATION
con la regione in cui vuoi creare il repository. Per informazioni sulle località supportate, vedi Località.PROJECT_ID
con l'ID progetto dell'istanza Secure Source Manager in cui vuoi creare il repository.INSTANCE_ID
con l'ID istanza dell'istanza in cui stai creando il repository. Per elencare le istanze di Secure Source Manager nel tuo progetto, consulta Elencare e visualizzare le istanze.DESCRIPTION
con una descrizione del repository. Questa opzione è facoltativa e può essere omessa.BRANCH
con il nome del ramo predefinito. Questo campo è facoltativo e può essere omesso. Se non è impostato, il nome del ramo predefinito èmain
.GITIGNORES
con un elenco separato da virgole di nomi di modelli gitignore. Questa opzione è facoltativa e può essere omessa. Per visualizzare l'elenco completo dei modelli disponibili, consulta la documentazione di riferimento sulla configurazione dell'inizializzazione del repository.LICENSE
con il nome del modello di licenza da applicare al tuo repository. Questa opzione è facoltativa e può essere omessa. Per visualizzare l'elenco completo dei modelli di licenza disponibili, consulta la documentazione di riferimento sulla configurazione dell'inizializzazione del repository.README
condefault
per creare un file README dal modello predefinito. Questa opzione è facoltativa e può essere omessa. Se omesso, non verrà creato un file README.
API
Crea un repository utilizzando una chiamata REST eseguendo il seguente comando:
curl \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://securesourcemanager.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/repositories?repository_id=REPOSITORY_ID \ -d '{"instance": "projects/PROJECT_ID/locations/REGION/instances/INSTANCE_ID"}'
Sostituisci quanto segue:
REGION
è la regione dell'istanza Secure Source Manager. Per informazioni sulle località supportate, vedi Località.INSTANCE_ID
è l'ID istanza Secure Source Manager.PROJECT_ID
è l'ID progetto dell'istanza Secure Source Manager. Consulta Identificazione dei progetti per informazioni su dove trovare l'ID progetto.REPOSITORY_ID
è il nome del repository.
È possibile specificare valori aggiuntivi utilizzando il flag dei dati HTTP POST,
-d'{}'
, inclusa l'inizializzazione del repository, l'aggiunta di un file.gitignore
specifico o di licenze. Per ulteriori informazioni, consulta la documentazione di riferimento.Se vuoi che l'output sia leggibile, puoi inviarlo a JSON utilizzando
json_pp
.Ad esempio:
curl \ -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://securesourcemanager.googleapis.com/v1/projects/my-project-id/locations/us-central1/repositories?repository_id=my-repo \ -d '{"instance": "projects/my-project-id/locations/us-central1/instances/prod-test-instance", "initialConfig":{"defaultBranch":"main"}}' | json_pp
La risposta sarà simile alla seguente:
{ "name": "operations/266bf4c7-13fe-11ed-be24-da823b7355d0", "metadata": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata", "createTime": "2022-08-04T14:02:59.810496928Z", "endTime": "2022-08-04T14:03:00.558354528Z", "target": "projects/654987321654/locations/us-central1/repositories/my-repo", "verb": "create", "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.Repository", "name": "projects/my-project-id/locations/us-central1/repositories/my-repo", "instance": "projects/654987321654/locations/us-central1/instances/prod-test-instance", "createTime": "2022-08-04T14:03:00Z", "uris": { "html": "https://prod-test-instance-654987321654.us-central1.sourcemanager.dev/my-project-id/my-repo", "gitHttps": "https://prod-test-instance-654987321654-git.us-central1.sourcemanager.dev/my-project-id/my-repo.git" } }
Dove:
654987321654
è il numero di progetto del repository.my-project-id
è l'ID progetto del repository.my-repo
è ilREPOSITORY_ID
che hai impostato nel comando di creazione. Il campouris
contiene gli URL per accedere al repository tramite il browser web o tramite l'accesso HTTPS al protocollo Git.
Accedi al nuovo repository con l'URI HTML nella risposta. La revisione del codice, il monitoraggio dei problemi e le richieste pull sono supportati nell'interfaccia web di Secure Source Manager.
Il repository viene creato nell'istanza Secure Source Manager.
Il ruolo di amministratore del repository (roles/securesourcemanager.repoAdmin
) ti viene concesso
quando crei un nuovo repository. La nuova autorizzazione IAM potrebbe
richiedere fino a 2 minuti per la propagazione, quindi se ricevi un errore di autorizzazione quando
provi ad accedere al repository dopo la creazione, attendi qualche minuto e riprova.
I repository che hai creato sono elencati nell'interfaccia web di Secure Source Manager nella pagina I miei repository.
Passaggi successivi
- Concedere agli utenti l'accesso al repository
- Utilizza la gestione del codice sorgente Git con Secure Source Manager.
- Elenca e visualizza i repository nell'interfaccia web di Secure Source Manager.