Sobes.tech
Middle

Kuidas te teete rakenduste juurutamist?

sobes.tech AI

Vastus AI-lt

Deponeerimisprotsess sõltub projekti mahust ja kasutatavast infrastruktuurist, kuid üldiselt järgin järgmisi samme:

  1. Projekti koostamine: Kasutan Webpacki, Rollupi või Vite tüüpi koostajaid koodi transpileerimiseks, minimeerimiseks ja ressursside optimeerimiseks.
  2. Testimine: Teostan automatiseeritud testid (üksus-, integratsiooni- ja lõpp-testi), et kontrollida töökindlust.
  3. Versioonimine: Loon git-tägi või commit'i, et fikseerida väljaandmise versioon.
  4. Stagingu paigaldamine (valikuline): Paigaldamine testiserverisse lõpliku kontrolli jaoks.
  5. Tootmisele paigaldamine:
    • Koondatud failide üleslaadimine veebiserverile (Nginx, Apache) või CDN-ile.
    • Konfiguratsioonifailide uuendamine (vajadusel).
    • Migratsioonide rakendamine (kui backendile sobib).
    • Veebiserveri või teenuse taaskäivitamine.
  6. Pärast-deploy kontroll: Kontrollin, kas töötab tootmiskeskkonnas, jälgides mõõdikuid.

Kasutan CI/CD tööriistu (GitHub Actions, GitLab CI, Jenkins), et automatiseerida enamikku neist sammudest, mis tagab järjepidevuse ja vähendab vigade tõenäosust.

Lihtne CI/CD pipeline näide staatilise hostingu jaoks:

# .github/workflows/deploy.yml
name: Deploy to GitHub Pages

on:
  push:
    branches:
      - main # Trigger, kui push toimub main haru

jobs:
  build-and-deploy:
    runs-on: ubuntu-latest # Kasutatud operatsioonisüsteem

    steps:
    - name: Kontrolli kood välja
      uses: actions/checkout@v2 # Koodi toomine repost

    - name: Seadista Node.js
      uses: actions/setup-node@v2 # Node.js seadistamine
      with:
        node-version: '16' # Konkreetse Node.js versiooni paigaldamine

    - name: Paigalda sõltuvused
      run: npm ci # Sõltuvuste paigaldamine

    - name: Ehita projekt
      run: npm run build # Ehitusskripti käivitamine

    - name: Paigalda GitHub Pagesile
      uses: peaceiris/actions-gh-pages@v3 # Tegevus GitHub Pagesile paigutamiseks
      with:
        github_token: ${{ secrets.GITHUB_TOKEN }} # Juurdepääsutõend
        publish_dir: ./dist # Koondatud projekti kaust (olenevalt koostaja konfiguratsioonist)