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.
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: bashShell 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: bashDefinition 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: bashDefinition 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: bashBrug 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 --forceForberedelse 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: blueUdgivelse 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å.
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
- Udvikling af brugerdefinerede GitHub Actions
- Self-hosted runners til on-premise
- Integration med virksomhedssystemer
- Composite actions og publicering til Marketplace