Sätta upp ett CI/CD-arbetsflöde som automatiskt:
Lägg till en workflow-fil i projektroten:
.github/
└── workflows/
└── ci.yml
.github/workflows/ci.ymlname: Bygg och testa kalkylatorn
on:
push:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Hämta repo
uses: actions/checkout@v3
- name: Installera Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Bygg frontend
working-directory: ./frontend
run: |
npm install
npm run build
- name: Bygg backend
working-directory: ./backend
run: |
npm install
node server.js &
sleep 3
curl "http://localhost:5000/calc/add?a=1&b=2"
Detta workflow testar API\:t genom ett faktiskt kall till
/calc/add. Du kan bygga vidare på detta med riktiga testpaket som Jest eller Mocha för backend, och React Testing Library för frontend.
Skapa Docker Hub-konto och repo (ex: user/calc-app).
Skapa två GitHub Secrets i ditt repo:
DOCKER_USERNAMEDOCKER_PASSWORDLägg till i ci.yml:
- name: Logga in i Docker Hub
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
- name: Bygg och pusha image
run: |
docker build -t ${{ secrets.DOCKER_USERNAME }}/calc-app ./frontend
docker push ${{ secrets.DOCKER_USERNAME }}/calc-app
git add .
git commit -m "Lägg till CI/CD-workflow"
git push
Skapa .github/workflows/ci.yml
Push till main
Bekräfta att:
Ditt projekt byggs nu automatiskt vid varje push. I nästa (valfria) modul tittar vi på publicering till moln eller avslutar projektet med reflektion och dokumentation.