Strumento: list_repositories
Elenca i repository Dataform in un progetto cloud e una località Google Cloud specifici.
Il valore parametro parent deve essere nel formato projects/{project_id}/locations/{location}.
Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP list_repositories.
| Richiesta curl |
|---|
curl --location 'https://dataform.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_repositories", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
Messaggio di richiesta di ListRepositories.
ListRepositoriesRequest
| Rappresentazione JSON |
|---|
{ "parent": string, "pageSize": integer, "pageToken": string, "orderBy": string, "filter": string } |
| Campi | |
|---|---|
parent |
Obbligatorio. La posizione in cui elencare i repository. Deve essere nel formato |
pageSize |
Facoltativo. Il numero massimo di repository da restituire. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato. |
pageToken |
Facoltativo. Token di pagina ricevuto da una precedente chiamata Durante la paginazione, tutti gli altri parametri forniti a |
orderBy |
Facoltativo. Questo campo supporta solo l'ordinamento per |
filter |
Facoltativo. Filtra l'elenco restituito. |
Schema di output
Messaggio di risposta ListRepositories.
ListRepositoriesResponse
| Rappresentazione JSON |
|---|
{
"repositories": [
{
object ( |
| Campi | |
|---|---|
repositories[] |
Elenco dei repository. |
nextPageToken |
Un token che può essere inviato come |
unreachable[] |
Località non raggiungibili. |
Repository
| Rappresentazione JSON |
|---|
{ "name": string, "createTime": string, "displayName": string, "gitRemoteSettings": { object ( |
| Campi | |
|---|---|
name |
Identificatore. Il nome del repository. |
createTime |
Solo output. Il timestamp di creazione del repository. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
displayName |
Facoltativo. Il nome intuitivo del repository. |
gitRemoteSettings |
Facoltativo. Se impostato, configura questo repository in modo che sia collegato a un Git remoto. |
npmrcEnvironmentVariablesSecretVersion |
Facoltativo. Il nome della versione del secret di Secret Manager da utilizzare per interpolare le variabili nel file .npmrc per le operazioni di installazione dei pacchetti. Deve essere nel formato |
workspaceCompilationOverrides |
Facoltativo. Se impostati, i campi di |
labels |
Facoltativo. Etichette utente del repository. Un oggetto contenente un elenco di coppie |
setAuthenticatedUserAdmin |
Facoltativo. Solo input. Se impostata su true, all'utente autenticato verrà concesso il ruolo roles/dataform.admin nel repository creato. Per modificare l'accesso al repository creato in un secondo momento, applica setIamPolicy da https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories |
serviceAccount |
Facoltativo. Il account di servizio con cui eseguire le chiamate del flusso di lavoro. |
kmsKeyName |
Facoltativo. Il riferimento a una chiave di crittografia KMS. Se fornita, verrà utilizzata per criptare i dati utente nel repository e in tutte le risorse secondarie. Non è possibile aggiungere o aggiornare la chiave di crittografia dopo la creazione del repository. Esempio: |
dataEncryptionState |
Solo output. Stato di crittografia dei dati di un repository Git se questo repository è protetto da una chiave KMS. |
Campo unione
|
|
containingFolder |
Facoltativo. Il nome della cartella contenitore del repository. Il campo è immutabile e può essere modificato tramite un'operazione MoveRepository. Formato: |
Campo unione
|
|
teamFolderName |
Solo output. Il nome della risorsa del TeamFolder a cui è associato questo repository. Deve avere il seguente formato: projects/{project}/locations/{location}/teamFolders/{teamFolder}. Se non è impostato, il repository non è associato a una cartella del team. |
Campo unione
|
|
internalMetadata |
Solo output. Tutte le informazioni sui metadati utilizzate internamente per pubblicare la risorsa. Ad esempio, timestamp, flag, campi di stato e così via. Il formato di questo campo è una stringa JSON. |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Rappresenta i secondi di tempo UTC trascorsi dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z). |
nanos |
Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi. |
GitRemoteSettings
| Rappresentazione JSON |
|---|
{ "url": string, "defaultBranch": string, "effectiveDefaultBranch": string, "authenticationTokenSecretVersion": string, "sshAuthenticationConfig": { object ( |
| Campi | |
|---|---|
url |
Obbligatorio. L'URL del repository Git remoto. |
defaultBranch |
Facoltativo. Il nome del ramo predefinito del repository Git remoto. Se non viene impostato, verrà utilizzato |
effectiveDefaultBranch |
Solo output. Il nome del ramo predefinito effettivo del repository Git remoto. Se impostato, questo è il nome del branch predefinito del Git remoto, altrimenti è |
authenticationTokenSecretVersion |
Facoltativo. Il nome della versione del secret di Secret Manager da utilizzare come token di autenticazione per le operazioni Git. Deve essere nel formato |
sshAuthenticationConfig |
Facoltativo. Campi di autenticazione per URI remoti che utilizzano il protocollo SSH. |
tokenStatus |
Solo output. Obsoleto: il campo non contiene informazioni sullo stato del token. Utilizza invece https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus |
Campo unione
|
|
gitRepositoryLink |
Facoltativo. Nome della risorsa per |
SshAuthenticationConfig
| Rappresentazione JSON |
|---|
{ "userPrivateKeySecretVersion": string, "hostPublicKey": string } |
| Campi | |
|---|---|
userPrivateKeySecretVersion |
Obbligatorio. Il nome della versione del secret Secret Manager da utilizzare come chiave privata SSH per le operazioni Git. Deve essere nel formato |
hostPublicKey |
Obbligatorio. Contenuto di una chiave SSH pubblica per verificare l'identità di un host Git remoto. |
WorkspaceCompilationOverrides
| Rappresentazione JSON |
|---|
{ "defaultDatabase": string, "schemaSuffix": string, "tablePrefix": string } |
| Campi | |
|---|---|
defaultDatabase |
Facoltativo. Il database predefinito (ID progetto Google Cloud). |
schemaSuffix |
Facoltativo. Il suffisso da aggiungere a tutti i nomi degli schemi (ID set di dati BigQuery). |
tablePrefix |
Facoltativo. Il prefisso da aggiungere all'inizio di tutti i nomi delle tabelle. |
LabelsEntry
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
DataEncryptionState
| Rappresentazione JSON |
|---|
{ "kmsKeyVersionName": string } |
| Campi | |
|---|---|
kmsKeyVersionName |
Obbligatorio. Il nome della versione della chiave KMS con cui vengono criptati i dati di una risorsa. |
TokenStatus
Lo stato del token di autenticazione.
| Enum | |
|---|---|
TOKEN_STATUS_UNSPECIFIED |
Valore predefinito. Questo valore non viene utilizzato. |
NOT_FOUND |
Il token non è stato trovato in Secret Manager (o l'account di servizio Dataform non disponeva dell'autorizzazione per accedervi). |
INVALID |
Il token non può essere utilizzato per l'autenticazione rispetto al repository Git remoto. |
VALID |
Il token è stato utilizzato correttamente per l'autenticazione con il repository Git remoto. |
Annotazioni dello strumento
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌