Skip to content

Cum să rulezi scripturi într-un task Concourse CI

DodaTech Updated 2025-01-15 1 min read

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

Task-urile în Concourse CI pot rula scripturi inline sau din fișiere pentru operațiuni complexe.

Script inline

jobs:
  - name: build
    plan:
      - task: build
        config:
          platform: linux
          image_resource:
            type: registry-image
            source:
              repository: alpine
          run:
            path: sh
            args:
              - -c
              - |
                echo "Pornire build"
                apk add --no-cache make gcc
                make build
                echo "Build finalizat"

Script din fișier

# ci/build.sh
#!/bin/sh
set -e
echo "Compilare aplicație..."
go build -o app
echo "Testare..."
go test ./...
jobs:
  - name: build
    plan:
      - get: source
      - task: run-script
        config:
          platform: linux
          image_resource:
            type: registry-image
            source:
              repository: golang
          inputs:
            - name: source
          run:
            path: source/ci/build.sh

Script cu argumente

run:
  path: sh
  args:
    - -c
    - |
      VERSION="${APP_VERSION:-latest}"
      echo "Build pentru versiunea $VERSION"
      go build -ldflags="-X main.version=$VERSION"

Script multi-stage

jobs:
  - name: pipeline
    plan:
      - task: setup
        config:
          platform: linux
          run:
            path: sh
            args:
              - -c
              - |
                echo "Setup..."
                apk add --no-cache curl jq
      - task: process
        config:
          platform: linux
          run:
            path: sh
            args:
              - -c
              - |
                echo "Procesare..."
                curl -s https://api.example.com/data > data.json
                jq '.results' data.json > output.txt

Prevenire

  • Folosește set -e în scripturi pentru a opri la eroare
  • Testează scripturile local înainte de a le include
  • Păstrează scripturile în Repository cu permisiuni de execuție

DodaTech Tools

DodaZIP arhivează scripturile executate. Doda Browser oferă vizualizarea output-ului scripturilor.

Întrebări frecvente

### Pot rula scripturi Python sau Node.js?

Da, folosește o imagine care conține interpretorul necesar (python, node, etc.).

Cum debughez un script care eșuează?

Adaugă set -x în script pentru a afișa fiecare comandă executată.

Pot folosi scripturi multi-linie?

Da, sintaxa | în YAML permite scripturi multi-linie.

Construit de echipa Doda Browser, DodaZIP și Durga Antivirus Pro.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro