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
ReleaseApplication.project→ ReleaseProject (1..1)ReleaseApplication.default_channel→ ReleaseChannel (0..1)
Referenced by
ReleaseApplicationDepot.application(1..1)ReleaseBuild.application(1..1)ReleaseChannel.application(1..1)ReleaseInstallation.application(1..1)
6.10.2.2.5 Rules & constraints¶
- An installable client of a project (e.g. the farm agent), with its own builds and channels.