Mix.Release.__struct__

You're seeing just the function __struct__, go back to Mix.Release module for more information.

The Mix.Release struct has the following read-only fields:

  • :name - the name of the release as an atom
  • :version - the version of the release as a string or {:from_app, app_name}
  • :path - the path to the release root
  • :version_path - the path to the release version inside the release
  • :applications - a map of application with their definitions
  • :erts_source - the erts source as a charlist (or nil)
  • :erts_version - the erts version as a charlist

The following fields may be modified as long as they keep their defined types:

  • :boot_scripts - a map of boot scripts with the boot script name as key and a keyword list with all applications that are part of it and their modes as value
  • :config_providers - a list of {config_provider, term} tuples where the first element is a module that implements the Config.Provider behaviour and term is the value given to it on Config.Provider.init/1
  • :options - a keyword list with all other user supplied release options
  • :overlays - a list of extra files added to the release. If you have a custom step adding extra files to a release, you can add these files to the :overlays field so they are also considered on further commands, such as tar/zip. Each entry in overlays is the relative path to the release root of each file
  • :steps - a list of functions that receive the release and returns a release. Must also contain the atom :assemble which is the internal assembling step. May also contain the atom :tar to create a tarball of the release.