Serverlös backend med AWS Lambda & API Gateway · Lektion

CodeCommit och CodeBuild

Integrera AWS CodeCommit för versionshantering och AWS CodeBuild för kompilering och paketering av Er serverless-kod.

Lektion 1 av 411 steg

CodeCommit och CodeBuild är en gratis lektion i Serverlös backend med AWS Lambda & API Gateway på CoddyKit. Detta är lektion 1 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 Serverlös backend med AWS Lambda & API Gateway, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Serverlös backend med AWS Lambda & API Gateway innehåller totalt 4 lektioner.

Introduktion till CI/CD för serverlösa applikationer

Välkommen till den första lektionen i vår kurs om CI/CD för serverlösa applikationer! Kontinuerlig integration och kontinuerlig leverans (CI/CD) är avgörande för modern programvaruutveckling.

I den här lektionen går vi igenom två grundläggande AWS-tjänster: AWS CodeCommit för källkodshantering och AWS CodeBuild för kompilering och paketering av din serverlösa kod.

Vad är AWS CodeCommit?

AWS CodeCommit är en fullständigt hanterad tjänst för källkodshantering som tillhandahåller säkra Git-baserade arkiv. Se det som AWS motsvarighet till GitHub eller GitLab, men med tät integration med andra AWS-tjänster.

  • Det är privat: Din kod stannar inom AWS.
  • Det är skalbart: Det hanterar projekt av alla storlekar.
  • Det är kompatibelt med Git: Använd dina befintliga Git-verktyg och arbetsflöden.

Det fungerar som den centrala platsen för applikationens källkod.

Konfigurera ett CodeCommit-arkiv

För att börja använda CodeCommit behöver du först skapa ett arkiv. Det kan du göra via AWS Management Console, AWS CLI eller SDK:er.

När arkivet har skapats konfigurerar du din lokala Git-klient så att den ansluter till det. Detta innebär ofta att du konfigurerar IAM-autentiseringsuppgifter (HTTPS Git-uppgifter) eller SSH-nycklar för autentisering.

Klona och skicka kod

När du har konfigurerat dina autentiseringsuppgifter kan du klona ditt CodeCommit-arkiv till din lokala dator och skicka ändringar, precis som med vilket annat Git-arkiv som helst.

Här är en grundläggande sekvens med kommandon som du kan använda:

git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/MyServerlessRepo
cd MyServerlessRepo
echo "print('Hello CI/CD!')" > app.py
git add app.py
git commit -m "Initial commit for Lambda function"
git push origin main

Vad är AWS CodeBuild?

AWS CodeBuild är en fullständigt hanterad tjänst för kontinuerlig integration som kompilerar din källkod, kör tester och skapar distribuerbara programpaket. Den eliminerar behovet av att tillhandahålla, hantera och skala dina egna byggservrar.

  • Inga servrar att hantera: AWS hanterar infrastrukturen.
  • Skalar automatiskt: Byggen körs parallellt och skalas efter behov.
  • Betala efter användning: Du betalar bara för den beräkningstid du använder.

Buildspec-filen

Kärnan i ett CodeBuild-projekt är filen buildspec.yml. Den här YAML-filen definierar de kommandon och åtgärder som CodeBuild utför under ett bygge.

Den anger byggkommandon, definitioner av artefakter (utdata) och instruktioner för cachelagring. Den placeras i roten av källkodens arkiv.

En Buildspec-fils uppbyggnad

En buildspec.yml är organiserad i faser:

  • install: Installera beroenden.
  • pre_build: Kommandon före bygget (t.ex. inloggning i Docker).
  • build: De faktiska byggkommandona (t.ex. kompilera kod och köra tester).
  • post_build: Kommandon efter bygget (t.ex. paketera artefakter).

Här är ett enkelt exempel för en Python-baserad Lambda-funktion:

version: 0.2

phases:
  install:
    commands:
      - echo "Installing dependencies..."
      - pip install --upgrade pip
      - pip install -r requirements.txt -t package/
  build:
    commands:
      - echo "Zipping deployment package..."
      - cd package
      - zip -r ../function.zip .
      - cd ..
      - zip -g function.zip app.py
artifacts:
  files:
    - function.zip
  discard-paths: yes

Skapa ett CodeBuild-projekt

För att använda CodeBuild skapar du ett byggprojekt. Det innebär att:

  • Källa: Ange ditt källkodsarkiv (t.ex. CodeCommit).
  • Miljö: Välj operativsystem, runtime och beräkningstyp.
  • Buildspec: Ange filen buildspec.yml.
  • Artefakter: Definiera var byggutdata ska lagras (t.ex. en S3-bucket).

Du tilldelar också en IAM-roll till CodeBuild och ger den behörighet att komma åt din källkod, S3 och andra nödvändiga AWS-tjänster.

CodeCommit- och CodeBuild-flödet

Det typiska arbetsflödet för kontinuerlig integration med dessa tjänster är:

  1. Utvecklaren skickar kodändringar till ett AWS CodeCommit-arkiv.
  2. CodeCommit kan automatiskt utlösa ett AWS CodeBuild-projekt (ofta via CodePipeline, som vi går igenom härnäst).
  3. CodeBuild hämtar den senaste koden och kör kommandona i buildspec.yml.
  4. CodeBuild skapar artefakter (till exempel en zippad Lambda-funktion) och lagrar dem i en S3-bucket, redo för distribution.

Snabbtest

Du har precis lärt dig om CodeCommit och CodeBuild. Nu testar vi dina kunskaper!

Sammanfattning och nästa steg

Bra jobbat! I den här lektionen har du lärt dig om:

  • AWS CodeCommit: En hanterad Git-arkivtjänst för säker källkodshantering.
  • AWS CodeBuild: En fullständigt hanterad tjänst för kontinuerlig integration som kompilerar och paketerar din kod.
  • Vikten av filen buildspec.yml för att definiera byggstegen.

Dessa två tjänster utgör grunden i din serverlösa CI/CD-pipeline. Härnäst ska vi se hur AWS CodePipeline samordnar dessa tjänster för automatiserade distributioner!

Gratis att börja

Lär dig Serverlös backend med AWS Lambda & API Gateway 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 ”CodeCommit och CodeBuild” gratis?

Ja – hela texten till ”CodeCommit och CodeBuild” 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 Serverlös backend med AWS Lambda & API Gateway, kan Ni uppgradera till CoddyKit PRO. Kursen i Serverlös backend med AWS Lambda & API Gateway innehåller totalt 4 lektioner.

Vad lär jag mig i ”CodeCommit och CodeBuild”?

Integrera AWS CodeCommit för versionshantering och AWS CodeBuild för kompilering och paketering av Er serverless-kod. Ni övar på Serverlös backend med AWS Lambda & API Gateway 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 Serverlös backend med AWS Lambda & API Gateway?

Du behöver inga förkunskaper. Utbildningen i Serverlös backend med AWS Lambda & API Gateway 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 1 av 4.

Hur lång tid tar lektionen ”CodeCommit och CodeBuild”?

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 Serverlös backend med AWS Lambda & API Gateway-lektionen?

Ja. Varje Serverlös backend med AWS Lambda & API Gateway-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. CodeCommit och CodeBuild
  2. CodePipeline för distributioner
  3. Automatisera serverless-distributioner
  4. Säkra distributioner med canary och rollback
← Tillbaka till Serverlös backend med AWS Lambda & API Gateway