CI/CD med GitHub Actions og DevOps-arbejdsgange · Lektion

Composite actions og publicering til Marketplace

Byg composite actions, der samler flere steps, versionsstyr dem korrekt, og publicér Deres brugerdefinerede action på GitHub Marketplace, så den kan genbruges.

Lektion 4 af 413 trin

Composite actions og publicering til Marketplace er en gratis CI/CD med GitHub Actions og DevOps-arbejdsgange-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i CI/CD med GitHub Actions og DevOps-arbejdsgange, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. CI/CD med GitHub Actions og DevOps-arbejdsgange-kurset indeholder 4 lektioner i alt.

Tre typer brugerdefinerede handlinger

GitHub understøtter tre måder at oprette en brugerdefineret handling på:

  • JavaScript-handlinger — kører Node-kode
  • Docker-handlinger — kører i en container
  • Sammensatte handlinger — samler flere trin i en arbejdsgang

Denne lektion fokuserer på sammensatte handlinger og publicering.

Hvad er en sammensat handling

En sammensat handling samler flere kørselstrin og kald til andre handlinger i én genanvendelig enhed uden at skrive JavaScript eller bygge en Docker-afbildning.

Den er ideel til at samle en gentagen sekvens af shell-kommandoer.

Filen action.yml

Alle handlinger defineres af en action.yml-fil i deres rodmappe. For en sammensat handling skal du angive runs.using til composite.

name: Setup Project
description: Install deps and build
runs:
  using: composite
  steps:
    - run: npm ci
      shell: bash
    - run: npm run build
      shell: bash

Shell er påkrævet

En vigtig detalje er, at hvert run-trin i sammensatte handlinger skal deklarere en shell. At glemme det er den mest almindelige fejl, når man opretter sammensatte handlinger.

    - run: echo 'hello'
      shell: bash

Definition af inddata

Gør handlingen konfigurerbar med inputs. Kaldere sender værdier via with, og du henviser til dem som inputs.<name>.

inputs:
  node-version:
    description: Node version
    required: false
    default: '20'
runs:
  using: composite
  steps:
    - run: echo Using ${{ inputs.node-version }}
      shell: bash

Definition af output

En sammensat handling kan returnere output. Et trin skriver til GITHUB_OUTPUT, og handlingen knytter det til et navngivet output.

outputs:
  build-id:
    value: ${{ steps.gen.outputs.id }}
runs:
  using: composite
  steps:
    - id: gen
      run: echo "id=$(date +%s)" >> $GITHUB_OUTPUT
      shell: bash

Brug af en lokal handling

Du kan referere til en handling, der er gemt i det samme repo, via dens sti. Det er praktisk under udvikling, før handlingen udgives.

    steps:
      - uses: actions/checkout@v4
      - uses: ./.github/actions/setup-project
        with:
          node-version: '20'

Versionsstyring med tags

Udgivne handlinger refereres til med en git-ref. Bedste praksis er at tagge udgivelser som v1.0.0 og samtidig vedligeholde et flytbart v1-tag.

Brugere, der anvender @v1, får automatisk opdateringer, som ikke bryder kompatibiliteten.

git tag -a v1.0.0 -m 'release'
git tag -f v1
git push --tags --force

Forberedelse til Marketplace

Hvis du vil udgive til GitHub Marketplace, skal handlingen ligge i et offentligt repo med en action.yml, der indeholder name, description og helst også branding (ikon og farve).

branding:
  icon: package
  color: blue

Udgivelse af release

Opret et udkast til en release for dit tag på repoets releaseside. GitHub viser et afkrydsningsfelt med teksten Publish this Action to the Marketplace.

Acceptér aftalen, vælg kategorier, og udgiv. Handlingen kan derefter findes af alle.

Dokumentation af brug

En god handling leveres med en tydelig README, der viser et brugseksempel samt input og output.

Virksomheder, der evaluerer din handling, er i høj grad afhængige af denne dokumentation, så sørg for, at den er korrekt og komplet.

Hurtigt tjek

Test din forståelse af sammensatte handlinger.

Opsummering

Du har lært at bygge og udgive sammensatte handlinger.

  • Sammensatte handlinger samler trin via runs.using: composite
  • Hvert kørselstrin skal have en eksplicit shell
  • Eksponér input og output, så de kan genbruges
  • Tag med semantiske versioner og et flytbart major-tag, og udgiv derefter til Marketplace

Genanvendelige handlinger er den måde, teams skalerer fælles CI/CD-logik på.

Gratis at komme i gang

Lær CI/CD med GitHub Actions og DevOps-arbejdsgange med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Composite actions og publicering til Marketplace” gratis?

Ja — hele teksten til “Composite actions og publicering til Marketplace” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af CI/CD med GitHub Actions og DevOps-arbejdsgange-kurset, skal du opgradere til CoddyKit PRO. CI/CD med GitHub Actions og DevOps-arbejdsgange-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Composite actions og publicering til Marketplace”?

Byg composite actions, der samler flere steps, versionsstyr dem korrekt, og publicér Deres brugerdefinerede action på GitHub Marketplace, så den kan genbruges. Du øver dig i CI/CD med GitHub Actions og DevOps-arbejdsgange med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på CI/CD med GitHub Actions og DevOps-arbejdsgange?

Der kræves ingen tidligere erfaring. CI/CD med GitHub Actions og DevOps-arbejdsgange på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Composite actions og publicering til Marketplace”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne CI/CD med GitHub Actions og DevOps-arbejdsgange-lektion?

Ja. Alle CI/CD med GitHub Actions og DevOps-arbejdsgange-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Udvikling af brugerdefinerede GitHub Actions
  2. Self-hosted runners til on-premise
  3. Integration med virksomhedssystemer
  4. Composite actions og publicering til Marketplace
← Tilbage til CI/CD med GitHub Actions og DevOps-arbejdsgange