Skip to content

Releases: RunOnFlux/flux

v4.1.0

26 Jun 09:11
14d19d1
Compare
Choose a tag to compare
  • Implements Ethereum address verification
    • Flux Node can now be owned by an Ethereum address as well
    • Possible to sign in to Flux node with an Ethereum address
    • Application can now be owned by an Ethereum address after timestamp 1688947200000 (July 10th)
    • This extends our current scheme of bitcoin p2pkh address verification
  • Improvements on Syncthing implementation
  • Add restrictions to Syncthing log file
  • Fix bug on Syncthing unable to delete non existing folder
  • Resolve dockerd high usage by disabling monitoring of logs file

This is a forking mandatory release. All nodes must update prior July 10th.

v4.0.1

16 Jun 09:32
de1cf60
Compare
Choose a tag to compare
  • Improve Syncthing integration
  • Fix incorrect prelaunch upnp mapping name

v4.0.0

13 Jun 07:59
8ee212b
Compare
Choose a tag to compare

FluxOS v4 brings enterprise capabilities to Flux!

  • Application v7 specifications
    • Enterprise Nodes
      • 'nodes' specifications, array of IP addreses (or collateral txid:outidx)
      • Each node on Flux network now has an enterprise score
      • The score is determined by following
        • Collateralization of node. Stratus nodes score higher than Nimbus, Nimbus scores higher than Cumulus
        • Maturity of node. The older the node is active on the network the more score it gets
        • Public Key collateralization. The same user hosting multiple nodes scores higher
        • Known Node Public Key. Nodes operated by known people, KYC, Flux team get extra score
      • The bigger the overall score, the more reliable the node and operator is
      • User can specify up to 110 nodes to run their application
      • It is possible to target specific nodes for application deployment
      • Applications that target nodes are called enteprise and get access to private images, secrets which is achieved by encrypting app specifications.
    • Private images
      • 'repoauth' specification, string
      • it is now possible to run private images on FluxOS.
      • supported for docker hub as well as any other docker container registrars (ghcr, gcr, aws, custom)
      • To use private images, repoauth must be specified. Repoauth consists of username:password or username:token (recommended)
      • To use private images, a set of enterprise nodes must be specified
      • repoauth is encrypted by PGP ECC key of selected enterprise nodes
    • Secrets
      • 'secrets' specifications, string
      • Environment parameters initially specified on UI as an array of strings such as standard env parameters that gets encrypted by enterprise nodes
      • To use secrets, a set of enterprise nodes must be specified
    • Static IP
      • 'staticip' specification, boolean
      • This flag will force FluxOS to spawn your applications on nodes that are known to have static IP, usually hosted on known VPS providers
  • PGP identity
    • Each node now generates PGP ECC keypair to served as their encryption key.
  • App Price updates
    • scope
      • Application targetting specific nodes - enterprise application have additional fee
    • staticip
      • Application requiring static IP address have additional price increment
    • enteprise port
      • application requiring an outside port in enterprise range have additional price increment
  • Port range changes
    • FluxOS now requires ports range 1-65535. Previous scheme required only Flux reserved ports and port range of 30000-39999. FluxNode operators with home hosting and manual port forwarding set for the FluxNode will have to adjust router.
    • Some ports such as 22, 23 and couple more (defined in configuration file) are banned and not possible to be assigned to applications. More information about banned ports at bottom.
    • Some ports primarily in range 1-1023 and couple more (defined in configuration file) are enterprise ports. Using those ports comes with app price increment. More information about enterprise ports at bottom.
  • Application internal networking scheme change
    • Previous scheme was assigning private networking of 172.${number}.0.0/16 which was wrong and sometimes resulted in assigning public IP address. This releases fixed the assigned networking to following scheme
    • 172.23.${number}.0/24
    • Applications requiring internal communication of their components shall adjust this appropriately
  • Adjust Syncthing life cycle. Syncthing was previously controlled and associated to Flux process. Which caused lots of restarts and reliability issues. In this release we have decoupled Syncthing process from FluxOS. Syncthing will now stay running eventhough FluxOS is stopped.
  • User defined blocked ports list. In userconfig it is possible to defined blockedPorts variable. It is an array of ports (integers) which forces Flux to not use defined port for applications and excludes it from testing. This is useful for home hosting, port forwarding when another device on the network already uses that port
  • Port checking changes and DOS state. Flux now tests random ports periodically, in terms of multiple consequent fails of some port test, DOS state will occur
  • Prior application installation a proper port check test is present
  • Other minor features
  • Various Bug Fixes

API changes

  • /flux/staticip returns information if specific FluxOS has static IP
  • /flux/pgp returns information about PGP key of FluxOS
  • /apps/enterprisenodes returns enterprise nodes list

Activation blockheight: 1420000
All nodes must update prior that blockheight.

bannedPorts: ['16100-16299', '26100-26299', '30000-30099', 8384, 27017, 22, 23, 25, 3389, 5900, 5800, 161, 512, 513, 5901, 3388, 4444, 123]

enterprisePorts: ['0-1023', 8080, 8081, 8443, 25565, 6667]

example of user/node operator defined blocked ports on ports 55, 70, 80
config file is userconfig.js under zelflux/config folder.
blockedPorts: [55, 70, 80],
image

This release is heavy and comes with additional packages. FluxOS might take a while to update to this release. Node operator should monitor their node while updating

v3.40.1

13 May 16:21
9c3ca3c
Compare
Choose a tag to compare
  • Fixes Docker Hub API

v3.40.0

12 May 09:37
9404b1a
Compare
Choose a tag to compare
  • Adds support for any docker registry
    • Example: Github repositories, Amazon ECR and more
  • To use different registry than docker hub, specify the provider in the repotag as well.
    • Examples:
      • public.ecr.aws/docker/library/hello-world:linux
      • ghcr.io/handshake-org/hsd:latest
  • It is also possible to use your own docker registry that is compliant with docker v2 API
    • Example:
      • myregistry.com:35000/mynamespace/image:latest
  • Instead of denying port, Flux is now deleting previously allowed ports. This will result in less spammed firewall rules list
  • Old Deny records will be automatically purged
  • Added mounted test for applications
    • Flux will now test to mount application volumes upon start determining if this node can truly run apps
    • If node fails this test, it will get a DOS state
    • This test will begin dossing entire node on the 1st of June. Until then a DOS message on API call of Flux Info will appear
  • Improves uninstallation of corrupted applications
  • Adjusts handling of locked instances on Home UI
  • Various minor improvements
  • Minor bug fixes

This release will be enforced on the 27th of May.

v3.39.1

26 Apr 08:02
29bbe94
Compare
Choose a tag to compare
  • Fixes potentially broadcasting application running message even if application failed to install

v3.39.0

22 Apr 07:43
529323a
Compare
Choose a tag to compare
  • Introduces owner filter to /apps/permanentmessages api call
  • Marketplace improvements and update of apps corrections
  • Improvements and fixes to synchronized Fluxbench on UPNP nodes
  • Further validations before application installation
  • General improvements and bug fixes

This release will be enforced on the 7th of May 2023.

v3.38.0

08 Apr 10:45
5467e2e
Compare
Choose a tag to compare
  • Introduces v2 specifications for for Flux Storage
    • v2 is application type specific call where generation of parameters is done by Flux Storage backend.
    • /v2/env/:id? + flux-app name in header requirement
    • /v2/cmd/:id? + flux-app name in header requirement
      -> fetches specific flux-app name env. variables/commands that are defined, pre-generated for application scope id by backend.
  • Presearch node will be entering live beta using v2 specifications of Flux Storage bringing persistent Presearch node assignement.
  • Fixes calling synchronized Fluxbench on UPNP nodes

This release will be enforced on the 23rd of April 2023.

v3.37.0

21 Mar 03:13
0d2b194
Compare
Choose a tag to compare
  • Fixes Flux Storage Environment and command parameters
  • Execution of UPNP benchmark every ~9 days
  • Improvements to Flux App messages reconstruction
  • Improvements to Flux App messages searching
  • Fixes opening an App from running list in management
  • Calculates Titan lockup APR including Nimbus nodes
  • FluxBench v3.8.0 enforcement

v3.36.3

01 Mar 02:37
b48ceed
Compare
Choose a tag to compare
  • Fix resetting state of permanent message of messageNotFound to false
    • this will cause more attempts of a node to ask other nodes for this missing message resulting in better, more consistent global applications list