Configurare le regole di conservazione dei tag

Questa pagina fornisce istruzioni su come creare e gestire le regole di conservazione dei tag per gli amministratori o gli sviluppatori che gestiscono e mantengono i repository Harbor. Le regole di conservazione dei tag Harbor sono un insieme di norme che gestiscono e ottimizzano automaticamente i tag delle immagini all'interno dei repository Harbor.

Utilizza le regole di conservazione dei tag per eseguire le seguenti azioni:

  • Liberare spazio di archiviazione: per evitare di accumulare dati non necessari, definisci regole per conservare gli artefatti per un periodo specifico o elimina manualmente i tag immagine inutilizzati.
  • Mantieni un repository pulito: conserva solo i tag più recenti o pertinenti per migliorare l'organizzazione e la visibilità.
  • Automatizza la gestione dei tag: evita l'eliminazione manuale e semplifica la manutenzione dei repository di immagini.

Le regole di conservazione dei tag ti consentono di gestire le immagini all'interno del repository eliminando automaticamente i tag immagine che non ti servono più. I filtri delle regole di conservazione analizzano i tag in tre passaggi sequenziali per determinare quali immagini vuoi conservare e quali eliminare:

  1. Repository: inserisci il nome del repository. Harbor applica prima il filtro del repository e poi la regola di conservazione a tutti i repository che corrispondono al nome del repository. Sono consentiti caratteri jolly come *repo, repo* e **. Per saperne di più, vedi Applicare il filtro con caratteri jolly. Ad esempio, puoi impostare il filtro del repository su **, il che significa che tutti i repository del progetto sono inclusi.
  2. Quantità da conservare: inserisci il numero massimo di tag o specifica un periodo massimo per la conservazione dei tag. Ad esempio, puoi impostare il criterio di conservazione in modo da conservare i 10 artefatti estratti più di recente in ogni repository.
  3. Tag da conservare: inserisci il nome dei tag immagine che vuoi conservare. Harbor applica la regola di conservazione ai tag immagine che corrispondono al testo di input. Utilizza la casella di controllo per selezionare se vuoi acquisire artefatti senza tag come parte dell'insieme di artefatti idonei per la conservazione dei tag o tag che non hanno quel nome. Sono consentiti caratteri jolly come *tag, tag* e **. Per saperne di più, vedi Applicare filtri con pattern jolly.

Prima di iniziare

Prima di creare regole di conservazione dei tag, devi disporre di quanto segue:

Creare una regola di conservazione dei tag

Le regole dei tag di conservazione di Harbor seguono un ordine e una logica specifici. Segui questi principi quando crei regole di conservazione dei tag Harbor:

  • Definisci le regole di conservazione dei tag per i repository, non per i progetti. Quando definisci una regola di conservazione per un repository, identifichi i tag da conservare.
  • Non definire regole per rimuovere esplicitamente i tag. Quando imposti una regola, il sistema scarta tutti i tag in un repository che non identifichi come idonei alla conservazione.
  • L'algoritmo OR viene utilizzato tra le regole.

Crea una regola di conservazione dei tag utilizzando la console Harbor:

  1. Accedi alla console Harbor con un account che dispone dei privilegi di amministratore del progetto.
  2. Vai a Progetti e seleziona un progetto.
  3. Nella finestra del progetto, fai clic sulla scheda Policy, quindi su Conservazione tag.
  4. Fai clic su Aggiungi regola.
  5. Nel menu Repository, seleziona corrispondenti o esclusi.

    Se selezioni Corrispondenza, Harbor applica la regola ai repository che hai specificato. Se selezioni esclusi, Harbor applica la regola a tutti i repository del progetto, ad eccezione di quelli che hai identificato.

  6. Nella casella Repository, inserisci il nome dei repository a cui applicare la regola. Di seguito sono riportati alcuni esempi di input di testo:

    • Un nome del repository, ad esempio example_repo_1.
    • Un elenco separato da virgole di nomi di repository, ad esempio example_repo_1,example_repo_2,example_repo_3.
    • Un nome del repository parziale con caratteri jolly come example_*, *_3 o *_repo_*.
    • Per applicare la regola a tutti i repository del progetto, utilizza il carattere jolly **.
    • Per saperne di più, vedi Applicare filtri con pattern jolly.
  7. Nel menu Per conteggio artefatti o numero di giorni, seleziona il numero di tag da conservare o il periodo di conservazione dei tag. Seleziona una delle seguenti opzioni:

    • Conserva gli ultimi # artefatti push: conserva un numero specifico di artefatti, dando la priorità a quelli push più recenti. Non si applicano limiti di età per gli artefatti.
    • Conserva gli ultimi # artefatti recuperati: conserva un numero specifico di artefatti, dando la priorità a quelli recuperati più di recente. Non si applica alcun limite di età per gli artefatti.
    • Conserva gli artefatti inviati negli ultimi # giorni: conserva gli artefatti inviati in un periodo di tempo specificato. Non esiste un limite al numero di artefatti.
    • Conserva gli artefatti estratti negli ultimi # giorni: conserva gli artefatti estratti in un periodo di tempo specificato. Non esiste un limite al numero di artefatti.
    • Conserva sempre: conserva sempre gli artefatti corrispondenti a questa regola.
  8. Nel menu Tag, seleziona corrispondenti o esclusi.

    Se selezioni Corrispondenza, Harbor applica la regola ai tag che hai identificato. Se selezioni esclusi, Harbor applica la regola a tutti i tag nel repository, tranne quelli che hai identificato.

  9. Nella casella Tag, inserisci i nomi dei tag a cui applicare la regola.

    Di seguito sono riportati alcuni esempi di input di testo:

    • Un nome tag, ad esempio example_tag_1.
    • Un elenco separato da virgole di nomi di tag come example_tag_1,example_tag_2,example_tag_3.
    • Un nome tag parziale con caratteri jolly come example_*, *_3 o *_tag_*.
    • Per applicare la regola a tutti i tag del progetto, utilizza il carattere jolly **.
    • Per saperne di più, vedi Applicare filtri con pattern jolly.
  10. Per salvare la regola, fai clic su Aggiungi.

  11. (Facoltativo) Per aggiungere altre regole, fai clic su Aggiungi regola. Puoi aggiungere un massimo di 15 regole per progetto.

  12. (Facoltativo) Nel menu Pianificazione, fai clic su Modifica e seleziona la frequenza con cui eseguire la regola. Se selezioni Personalizzato, inserisci un comando cron job per pianificare la regola. Se definisci più regole, Harbor applica la pianificazione a tutte le regole. Non puoi programmare l'esecuzione di regole diverse in orari diversi.

  13. Per testare le regole che hai definito, fai clic su Prova generale.

  14. Per eseguire immediatamente la regola, fai clic su Esegui ora.

Applicare filtri con pattern jolly

Harbor utilizza la corrispondenza dei pattern a doppia stella. I pattern con caratteri jolly sono caratteri o sequenze speciali utilizzati per trovare una corrispondenza o rappresentare uno o più caratteri in una stringa. Utilizza i pattern jolly quando applichi filtri ai nomi di repository o tag durante la creazione delle regole di conservazione dei tag. I caratteri jolly offrono le seguenti funzionalità:

  • Rappresentano uno o più caratteri senza specificarli in modo esplicito.
  • Utilizza i caratteri jolly comuni nel seguente modo:

    • *: corrisponde a zero o più caratteri.
    • ?: corrisponde a qualsiasi singolo carattere.

    Ad esempio, file* corrisponde a qualsiasi nome file che inizia con file.

  • Consente la corrispondenza flessibile, utile quando non conosci i caratteri esatti.

Utilizza i seguenti pattern jolly supportati quando specifichi le regole di conservazione dei tag:

Pattern Descrizione
* Corrisponde a qualsiasi sequenza di separatori non di percorso.
** Corrisponde a zero o più directory.
? Corrisponde a qualsiasi singolo carattere diverso dal separatore di percorso.
[class] Trova qualsiasi singolo carattere diverso dal separatore di percorso in una classe di caratteri. Per ulteriori informazioni, vedi Applicare filtri con classi di caratteri.
{alt1,...} Corrisponde a una sequenza di caratteri se corrisponde a una delle alternative separate da virgola.

Per saperne di più sulla corrispondenza dei pattern doublestar, visita la pagina https://github.com/bmatcuk/doublestar.

Applicare filtri con classi di caratteri

Le classi di caratteri e i caratteri jolly vengono utilizzati per la corrispondenza dei pattern. Utilizza le classi di caratteri quando applichi filtri ai nomi dei repository o dei tag durante la creazione di regole di conservazione dei tag. Le classi di caratteri offrono le seguenti funzionalità rispetto ai pattern jolly:

  • Definisci un insieme di caratteri specifici che possono corrispondere a una posizione particolare.
  • Utilizza le parentesi quadre ([]) per racchiudere il set. Ad esempio, [aeiou] corrisponde a qualsiasi singola vocale.
  • Consente una corrispondenza più precisa, in quanto elenca esplicitamente i caratteri consentiti.

Utilizza le seguenti classi di caratteri per filtrare i repository e configurare le regole di conservazione:

Classe Descrizione
[abc] Corrisponde a qualsiasi singolo carattere all'interno dell'insieme.
[a-z] Corrisponde a qualsiasi singolo carattere nell'intervallo.
[^class] Corrisponde a qualsiasi singolo carattere che non corrisponde alla classe.
[!class] Nega la classe.

Aggiornare una regola di conservazione dei tag esistente

Per modificare una regola esistente, utilizza il menu Azione accanto a una regola per disattivarla, modificarla o eliminarla.

Utilizza la console Harbor per modificare le regole di conservazione dei tag esistenti:

  1. Accedi all'interfaccia di Harbor con un account che dispone dei privilegi di amministratore del progetto.
  2. Vai a Progetti e seleziona un progetto.
  3. Nella finestra del progetto, fai clic sulla scheda Policy, quindi su Conservazione tag.
  4. Per modificare una regola esistente, utilizza il menu Azione per selezionare una delle seguenti opzioni:

    • Disattiva: rende la regola inattiva. Puoi riattivare questa regola in un secondo momento.
    • Modifica: aggiorna le impostazioni di una regola esistente.
    • Elimina: rimuove completamente la regola.