<p>经过一番修修补补,我想我找到了一些有用的东西。我想我会把它贴在这里,以防其他人有同样的问题。在</p>
<p>我决定使用<a href="http://www.wercker.com/" rel="nofollow noreferrer">Wercker</a>,因为它们有相当大的免费层,并且允许您为您的构建定制docker映像。在</p>
<p>原来有一个docker镜像被创建来复制执行Lambda函数的环境!请参见:<a href="https://github.com/lambci/docker-lambda" rel="nofollow noreferrer">https://github.com/lambci/docker-lambda</a>在这个docker容器中运行构建时,将正确构建扩展,以便它们可以在Lambda上成功执行。在</p>
<p>如果有人想使用Wercker,这里是我使用的<code>wercker.yml</code>,作为模板可能很有用:</p>
<pre><code>box: lambci/lambda:build-python3.6
build:
steps:
- script:
name: Install Dependencies
code: |
pip install target=$WERCKER_SOURCE_DIR -r requirements.txt
pip install pytest
- script:
name: Test code
code: pytest
- script:
name: Cleaning up
code: find $WERCKER_SOURCE_DIR \( -name \*.pyc -o -name \*.pyo -o -name __pycache__ \) -prune -exec rm -rf {} +
- script:
name: Create ZIP
code: |
cd $WERCKER_SOURCE_DIR
zip -r $WERCKER_ROOT/lambda_deploy.zip . -x *.git*
deploy:
box: golang:latest
steps:
- arjen/lambda:
access_key: $AWS_ACCESS_KEY
secret_key: $AWS_SECRET_KEY
function_name: yourFunction
region: us-west-1
filepath: $WERCKER_ROOT/lambda_deploy.zip
</code></pre>