Skip to content

Cum să partajezi resurse între pipeline-uri în Buddy — Ghid pas cu pas

DodaTech Updated 2025-01-15 1 min read

In this tutorial, you'll learn about Cum să partajezi resurse între pipeline. We cover key concepts, practical examples, and best practices to help you understand and apply this topic effectively.

Partajezi resurse între pipeline-uri în Buddy pentru a reutiliza cache-ul de dependențe, artefactele de build și variabilele de mediu fără a le recalcula de fiecare dată.

Step-by-Step Fix

1. Configurare cache partajat

- pipeline: "Build Libraries"
  actions:
    - type: build
      cache:
        - path: ./node_modules
          key: npm-cache-{{ checksum "package-lock.json" }}
        - path: ~/.m2
          key: maven-cache-{{ checksum "pom.xml" }}

2. Partajare artefacte între pipeline-uri

Pipeline-ul sursă salvează artefacte, pipeline-ul destinație le descarcă:

# Pipeline "Build App"
- pipeline: "Build App"
  actions:
    - type: build
    - type: save-artifact
      name: app-build
      path: ./dist

# Pipeline "Deploy App"
- pipeline: "Deploy App"
  actions:
    - type: load-artifact
      name: app-build
      path: ./dist
    - type: deploy
      ...

3. Variabile de mediu partajate

# În setările proiectului Buddy
shared_variables:
  DOCKER_REGISTRY: registry.buddy.works
  APP_VERSION: "1.2.3"
  LOG_LEVEL: info

Common Mistakes

  1. Cache key incorectă -- dacă nu include checksum, cache-ul nu se invalidează corect
  2. Artefacte neșterse -- artefactele vechi ocupă spațiu; curăță periodic
  3. Variabile hardcodate -- nu repeta aceleași variabile în fiecare pipeline; folosește shared variables
  4. Căi absolute vs relative -- artefactele folosesc calea relativă la workspace
  5. Dependențe ciclice -- pipeline-urile nu trebuie să depindă unele de altele circular

Practice Exercise

Creează un pipeline care compilează o aplicație și salvează artefactul. Apoi un al doilea pipeline care încarcă artefactul și îl deployează.

FAQ

Cum funcționează shared variables în Buddy?

Variabilele definite la nivel de proiect sunt disponibile în toate pipeline-urile. Pot fi suprascrise la nivel de pipeline. |||| Pot partaja cache între branch-uri diferite? Da, cache-ul este partajat la nivel de proiect, nu de branch. Cheia determină ce se restabilește. ||| Cât timp sunt păstrate artefactele? Artefactele sunt păstrate conform setărilor de retenție din proiect (implicit 30 de zile).

Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Instrumentele DodaTech se integrează nativ cu Buddy.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro