The Tezos documentation all show the storage expression being defined inline when compiling storage. For example, using cameligo:

ligo compile storage src/counter.mligo 5 --entry-point main

If I try to put the expression '5' in a file, like initStorage.mligo, then using the file name instead, this does not seem to work.

Is it possible to define the initial storage in a file then compile storage with that file?

1 Answer 1


You can use the standard shell command substitution operators ` ` or $():

ligo compile storage src/counter.mligo "$(cat initStorage.mligo)" --entry-point main

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.