rackerlabs/fleece

fleece build generates a different zip/sha every time even if deps/source is the same

gifflen opened this issue · 1 comments

It appears due to the way we are zipping it is injecting metadata since we aren't using -X https://github.com/racker/fleece/blob/master/fleece/cli/build/docker_build_lambda.sh#L8

Here we are also injecting buildtime information: https://github.com/racker/fleece/blob/master/fleece/cli/build/docker_build_lambda.sh#L17

Because of these two things its leading to different zips with different shas. This causes issues where you would expect the same code to generate the same artifact. Since the artifacts sha changes deployment tools are only aware that the sha change and therefore usually force a redeploy even though the source is the same.

I believe the zips being the same based on the same source files is likely the best state. We can keep compatibility for build time and version but I'd recommend making that a feature flag of sorts and the default behavior this as I feel that is more expected. It's hard to gauge how people are using build time and I'd prefer to not make breaking changes but for the long term health of the project this seems ideal.

Resolved by #80