はじめに
- AWS Lambdaを扱っているリポジトリで、大きいファイルを扱う必要があったので、Git LFS使って管理するようにしました。
- CircleCIでテスト実行してserverless frameworkを使ってそのままデプロイするようにしたかったので、CircleCI上でGit LFS使えるようにしたときのメモです。
- Git LFSで管理している大きいファイルはテスト実行にも、Lambda-functionの実行にも必要という前提です。
設定など
- AWS Lambdaを使う際には、みなさんこちらのDockerイメージを利用されていると思いますので、その前提で。
- 環境はpython3.6としています。
circleci/config.yml
test_deploy:
docker:
- image: lambci/lambda:build-python3.6
environment:
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
steps:
- checkout
- run:
name: install git-lfs
command: |
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.rpm.sh | bash
yum install -y git-lfs
ssh git@github.com git-lfs-authenticate ${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}.git download
git lfs pull
- run:
name: test
command: |
python -m unittest
- run:
name: deploy
command: sls deploy -v --stage prd