PackageType: image
seems to require a Dockerfile (looking at the hello-world example) along with ImageUri
and Metadata
And it also doesn't want me to use Runtime, Handler, Layers
(not even using layers)
whereas build --use-container
does not seem to need anything. Does it figure it all out from the Runtime: nodejs14.x-v1
In the documentation I don't see anything
When I google there are tons of docs and resources but none related
I would really like to know because I'm at building a pipeline stage now. I got it to work great with a single stage and would now like to use the multi-stage multi-account and from what I read, it is recommended to use Images.
I noticed that the current pipeline does have --use-container
, but my PackageType
is zip
, and at some point when I built it (using sam pipeline --bootstrap
) it asked me if any of my functions use images. I would like for my multi stage/account one to answer Y
It may not be related, but that is also how I plan on using environment variables for each account, since the databases used to fetch data are different.
So I think I'll have to go and add --container-env-var-file
in the gitlab-ci.yml script, or maybe in the samconfig.toml [dev.build.parameters]
and under [prod.build.parameters]for its
env-prod.json` file
SAM application package types can be either Zip or Images (container images). The details of their differences are described in their docs here: https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html
I came across that page 👆 when I was reading the AWS docs for auto-creating a new SAM app here: https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/serverless-apps.html#serverless-apps-create
(when you need to: "Choose the runtime for your AWS SAM application")