Skip to content

6.10.2.12 ReleaseChannel

6.10.2.12.1 Purpose

A lane of distribution for an application, such as stable, beta or internal. It carries the access rule: which capabilities and entitlement features a caller needs, whether the channel is listed, and whether a release needs approval; recipient Organizations and tester groups attach to it. A caller who does not pass the rule sees the channel as if it did not exist.

6.10.2.12.2 Questions it answers

  • Which release is current on a channel?
  • Who can receive the channel: which capabilities, which entitlements, which Organizations, which testers?
  • Is the channel advertised, or reached only by its enrolment link?
  • Does a release on this channel need approval?

6.10.2.12.3 Fields

Field Type Cardinality Description
id string (uuid) 1..1 Key.
application ReleaseApplication 1..1
name string 1..1 (application, name) is unique.
listed boolean 1..1 Default: true.
Shown in the client's channel picker and on the download page to those who may receive it. An unlisted channel is reached only by its enrolment link; the access rule applies the same. Replaces visibility (public, restricted, hidden), which mixed who may access with what is advertised.
requires_approval boolean 1..1 Default: true.
Always true when the application's audience is public.
current_release Release 0..1 The release of this channel that is active or paused; at most one.
required_capabilities string 0..* Capabilities of the audience's catalog (OrganizationRoleCapabilityEnum for organization, MoonitoringCapabilityEnum for moonitoring; none for public), all of which the caller's role must hold. Empty: everyone in the audience.
required_features string 0..* Entitlement features of Entitlement the caller's Organization must hold, all active; only for the organization audience.
Empty: no entitlement needed.
created_at datetime 1..1
updated_at datetime 1..1

6.10.2.12.4 Relationships

References

Referenced by

6.10.2.12.5 Rules & constraints

  • A lane of distribution: stable, beta, internal.
  • A caller may enrol or update from the channel when: they belong to the application's audience; no.
  • ReleaseChannelAccess row exists or their Organization is listed; their role holds every required capability; their.
  • Organization holds every required feature. Or, whatever the above, their verified e-mail is an active ReleaseTester of a group of the channel. Targeting lives here, never on a Release: "only these cooperatives" is a channel with access rows; rollout_pct (Release.rollout_pct) spreads a release inside it.