GitHub Actions ile AWS Lambda Dağıtımı
GitHub Actions, projelerinizi otomatikleştirmek için güçlü bir yoldur. Bu rehberde, GitHub Actions kullanarak basit bir Node.js uygulamasını AWS Lambda'ya nasıl dağıtacağınızı göstereceğiz.
AWS Lambda Fonksiyonu Oluşturma
İlk olarak, AWS Yönetim Konsolu'na gidin ve Lambda hizmetine gidin. Yeni bir fonksiyon oluşturun, adını ve işlevselliğini belirtin. Ardından, fonksiyon için bir IAM rolü oluşturun, Lambda fonksiyon erişimi için gerekli izinleri içerdiğinden emin olun.
GitHub Actions YAML Dosyası
Proje dizininizde bir .github/workflows klasörü oluşturun ve aşağıdaki gibi bir YAML dosyası ekleyin:
name: deploy to lambda
on:
push
jobs:
deploy_lambda:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
- name: aws configure
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: npm install
run: |
npm i -g bestzip
npm i
- name: deploy
run: |
bestzip bundle.zip *
aws lambda update-function-code --function-name=my-lambda-function --zip-file=fileb://bundle.zip
Bu YAML dosyası, ana dalda her push işleminde çalışacak ve Node.js projesini AWS Lambda'ya dağıtmak için gerekli adımları içerecektir.
GitHub Secrets Yapılandırması
GitHub deponuzdaki Settings sekmesine gidin, ardından Secrets bölümüne gidin. AWS Lambda erişim anahtarlarını tanımlayarak yeni bir secret ekleyin:
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY
Artık her push işleminde, GitHub Actions Node.js uygulamanızı otomatik olarak AWS Lambda'ya dağıtacaktır. Bu adımları takip ederek süreci kolaylaştırabilir ve uygulamanızı kolayca yönetebilirsiniz.