Professionellt arbetsflöde med Git och GitHub · Lektion

Anpassade Actions och Marketplace

Utforska GitHub Actions Marketplace efter färdigbyggda Actions och lär dig att skapa egna anpassade Actions.

Lektion 3 av 411 steg

Anpassade Actions och Marketplace är en gratis lektion i Professionellt arbetsflöde med Git och GitHub på CoddyKit. Detta är lektion 3 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Professionellt arbetsflöde med Git och GitHub, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Professionellt arbetsflöde med Git och GitHub innehåller totalt 4 lektioner.

Upptäck GitHub Actions Marketplace

Välkommen till GitHub Actions Marketplace! Det är en levande plats där Ni hittar tusentals färdiga actions skapade av GitHub, open source-bidragare och kommersiella partner.

Dessa actions kan enkelt integreras i Era arbetsflöden, vilket sparar tid och arbete genom att återanvända befintliga lösningar för vanliga uppgifter.

Hitta rätt action

Det är enkelt att navigera i Marketplace. Ni kan söka efter actions med nyckelord, filtrera efter kategori, till exempel ”CI/CD” eller ”Deployment”, och sortera efter popularitet.

  • Leta efter actions med höga stjärnbetyg och aktivt underhåll.
  • Kontrollera actionens dokumentation för användningsinstruktioner, indata och utdata.
  • Granska hur många gånger en action har använts i offentliga repositories som socialt bevis.

Integrera en färdig action

Det är enkelt att använda en action från Marketplace. Ni refererar till den med nyckelordet uses i arbetsflödets YAML, följt av actionens owner/repo@version.

Ett vanligt exempel är actions/checkout, som checkar ut koden i Ert repository så att arbetsflödet kan komma åt den.

name: Marketplace Demo
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
      - name: Say hello
        run: echo "Hello from workflow!"

Indata och utdata för actions

Många actions accepterar indata för att anpassa sitt beteende, vilket anges med nyckelordet with. De kan också skapa utdata som andra steg i arbetsflödet kan använda.

Actionen actions/setup-node kan till exempel ta emot indatan node-version.

name: Node Setup Demo
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Node.js 18.x
        uses: actions/setup-node@v3
        with:
          node-version: '18.x'
      - name: Install dependencies
        run: npm install

När Ni bör bygga en egen action

Marketplace erbjuder mycket, men ibland behöver Ni något specifikt. Då kommer anpassade actions till nytta!

Ni kan bygga en anpassad action för att:

  • Automatisera interna företagsverktyg.
  • Integrera med ett unikt API som inte stöds av befintliga actions.
  • Utföra mycket specialiserade uppgifter som är specifika för projektets byggprocess.

Typer av anpassade actions

Det finns två huvudtyper av anpassade actions som Ni kan skapa:

  • JavaScript Actions: Dessa körs direkt på runner-datorn med Node.js. De går ofta snabbare att utveckla och är enklare att dela.
  • Docker Container Actions: Dessa körs i en Docker-container. De passar utmärkt för att kapsla in miljöer och beroenden och säkerställa en enhetlig körning på olika runners.

För enkelhetens skull fokuserar vi på JavaScript actions.

Filen `action.yml`

Varje anpassad action behöver en action.yml-fil. Filen definierar actionens metadata, inklusive dess namn, beskrivning, indata den accepterar, utdata den skapar och hur den körs.

Den fungerar som ett manifest för Er action och talar om för GitHub Actions allt som behöver kännas till.

name: 'My Custom Greeting Action'
description: 'Greets a person with a custom message.'
inputs:
  who-to-greet:
    description: 'Who to greet'
    required: true
    default: 'World'
outputs:
  time:
    description: 'The time we greeted you'
runs:
  using: 'node16'
  main: 'index.js'

Bygg en enkel JavaScript action

Låt oss skapa en mycket enkel JavaScript action. Ni behöver en index.js-fil, som anges i action.yml, och vanligtvis en package.json för beroenden.

Paketet @actions/core är viktigt för att interagera med arbetsflödet, till exempel för att hämta indata och ange utdata.

const core = require('@actions/core');

async function run() {
  try {
    const nameToGreet = core.getInput('who-to-greet');
    console.log(`Hello ${nameToGreet}!`);

    const time = (new Date()).toTimeString();
    core.setOutput("time", time);

  } catch (error) {
    core.setFailed(error.message);
  }
}

run();

Integrera Er anpassade action

För att använda Er anpassade action placerar Ni dess filer, action.yml, index.js med flera, i en underkatalog i Ert repository. Referera sedan till den i arbetsflödet med en relativ sökväg genom uses: ./path/to/your/action.

Det gör att Ni kan testa actionen lokalt innan Ni eventuellt publicerar den på Marketplace.

name: Use Custom Action Demo
on: [push]
jobs:
  greet:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run my custom action
        uses: ./my-custom-action # Path to action directory
        with:
          who-to-greet: 'CoddyKit User'
      - name: Get the output time
        run: echo "The greeting time was ${{ steps.run-my-custom-action.outputs.time }}"

Komponenter i anpassade actions

Ni har lärt Er om de viktigaste delarna i att skapa och använda anpassade GitHub Actions. Låt oss testa Era kunskaper!

Sammanfattning: Marketplace och anpassade actions

Bra jobbat! Ni har utforskat möjligheterna med både GitHub Actions Marketplace och anpassade actions.

  • Marketplace erbjuder ett stort urval färdiga actions som effektiviserar Era arbetsflöden.
  • Anpassade actions låter Er utöka GitHub Actions för att möta unika behov i projekt eller organisationer.

Genom att kombinera dessa kan Ni bygga otroligt kraftfulla och skräddarsydda automatiseringspipelines!

Gratis att börja

Lär dig Professionellt arbetsflöde med Git och GitHub med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Anpassade Actions och Marketplace” gratis?

Ja – hela texten till ”Anpassade Actions och Marketplace” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Professionellt arbetsflöde med Git och GitHub, kan Ni uppgradera till CoddyKit PRO. Kursen i Professionellt arbetsflöde med Git och GitHub innehåller totalt 4 lektioner.

Vad lär jag mig i ”Anpassade Actions och Marketplace”?

Utforska GitHub Actions Marketplace efter färdigbyggda Actions och lär dig att skapa egna anpassade Actions. Ni övar på Professionellt arbetsflöde med Git och GitHub med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Professionellt arbetsflöde med Git och GitHub?

Du behöver inga förkunskaper. Utbildningen i Professionellt arbetsflöde med Git och GitHub på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Anpassade Actions och Marketplace”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Professionellt arbetsflöde med Git och GitHub-lektionen?

Ja. Varje Professionellt arbetsflöde med Git och GitHub-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Introduktion till GitHub Actions
  2. Bygga CI/CD-workflows
  3. Anpassade Actions och Marketplace
  4. Secrets och miljövariabler i Actions
← Tillbaka till Professionellt arbetsflöde med Git och GitHub