Skip to content

6.10.2.2 ReleaseApplication

6.10.2.2.1 Purpose

An installable client of a project, such as the farm sync agent or the Console, with its own builds and channels. Its audience says who the software is built for and how its clients sign in: public, Organization users, or Moonitoring staff; channels narrow within that audience and never widen it.

6.10.2.2.2 Questions it answers

  • Which clients do we distribute?
  • Which build number comes next for an application?
  • Who is the application built for, and how do its clients sign in?

6.10.2.2.3 Fields

Field Type Cardinality Description
id string (uuid) 1..1 Key.
project ReleaseProject 1..1
slug string 1..1 Unique.
Unique across projects, so the download page can be addressed by it alone.
name string 1..1
kind enum 1..1 Values: desktop, mobile, launcher, tool, agent.
build_seq integer 1..1 Counter that issues build_number (see ReleaseBuild).
archived_at datetime 0..1
carries_adapters boolean 1..1 Default: false.
Set on the farm sync client application: only builds of an application that carries adapters may declare ReleaseBuild.carried_adapters, and only its releases make farm register them.
audience enum 1..1 Values: public, organization, moonitoring.
Who the software is built for, and so how its clients sign in: public, nobody; organization, an access user token (user, active Organization, role; see User); moonitoring, a staff token (see MoonitoringUser).
A channel narrows within the audience (ReleaseChannel) and never widens it. Partners and integrators are Organizations.
default_channel ReleaseChannel 0..1 The listed channel of this application whose active release the latest download links give, e.g. stable for the farm sync client. Empty: the application has no latest link.
created_at datetime 1..1
updated_at datetime 1..1

6.10.2.2.4 Relationships

References

Referenced by

6.10.2.2.5 Rules & constraints

  • An installable client of a project (e.g. the farm agent), with its own builds and channels.