Skip to content

Add Lite packages vs existing Full packages #457

@ghost

Description

Is your feature request related to a problem? Please describe.

At every upstream app update it is required to rebuild Dappnode package and push it to the IPFS, even if nothing in configuration option was changed. And it leads to the additional resources usage

  • Time
  • Computation resources
  • IPFS disc space
  • Package upgrade by the end user

Describe the solution you'd like

We might consider to introduce Lite packages vs existing Full packages, where we can pass upstream Docker images versions as a variables. That can be done using Set, use, and manage variables in a Compose file with interpolation.

ui.env

UI_IMAGE=0.2.0

compose.yaml

services:
  ui:
    env_file: ui.env
    image: ${UI_IMAGE}

setup-wizard.yml

version: "2"
fields:
  - id: UI_IMAGE
    target:
      type: environment
      name: UI_IMAGE
      service: ui
    title: UI images
    description: UI image version

That probably will require a Dappnode ready Docker image with a custom entrypoin, when applicable. We can also consider to in-fly build where we just copy a custom entrypoint file or other light operations at the moment of the package installation.

Describe alternatives you've considered

There are no alternatives at the moment and we have to build a new package at every upstream app version changes.

Additional context

That is a good idea to have a fully P2P and self-contained package, but during the build we anyway relay on centralized registries like Docker Hub, GitHub Packages, etc. Even, Dappnode installation rely on that.

So, in multiple cases package builders might prefer to use Light package and provide more flexibilities to the end users.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions