Skip to content

This library facilitates the creation and management of appup files and releases for Elixir applications, enabling seamless hot upgrades.

License

Notifications You must be signed in to change notification settings

thiagoesteves/jellyfish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jellyfish: Simplifying Hot-Upgrades for Elixir Applications

Hex.pm Version

Jellyfish is a library designed to streamline the management of appup and release files, enabling hot-upgrades for Elixir applications. Born from the integration of concepts and functionalities from three influential repositories, Jellyfish empowers developers with efficient tools for maintaining and deploying their Elixir projects with confidence.

  • Distillery - While currently deprecated, its appup generation remains a valuable asset within Jellyfish, ensuring compatibility and reliability in managing upgrades.
  • Forecastle - Offering robust capabilities for release package management.
  • Relx - Providing crucial insights into storing, unpacking, and executing hot upgrades using release files

Installation

If available in Hex, the package can be installed by adding jellyfish to your list of dependencies in mix.exs:

def deps do
  [
    {:jellyfish, "~> 0.1.2"}
  ]
end

You also need to add the following lines in the mix project

  def project do
    [
      ...
      compilers: Mix.compilers() ++ [:gen_appup, :appup],
      releases: [
        your_app_name: [
          steps: [:assemble, &Jellyfish.Releases.Copy.relfile/1, :tar]
        ]
      ],
      ...
    ]
  end

Once the mix release file is generated, it will contain all the appup/release files to execute a hot-upgrade or full deployment.

Examples

Explore Deployex, an Elixir application showcasing Jellyfish's capabilities in deployment with hot-upgrades.

References

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/jellyfish.

About

This library facilitates the creation and management of appup files and releases for Elixir applications, enabling seamless hot upgrades.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages