Coverage for webapp / endpoints / releases.py: 100%
12 statements
« prev ^ index » next coverage.py v7.13.1, created at 2025-12-29 22:06 +0000
« prev ^ index » next coverage.py v7.13.1, created at 2025-12-29 22:06 +0000
1# Packages
2import flask
3from canonicalwebteam.store_api.dashboard import Dashboard
5# Local
6from webapp.helpers import api_publisher_session
7from webapp.decorators import login_required
9dashboard = Dashboard(api_publisher_session)
12@login_required
13def get_release_history_data(snap_name):
14 release_history = dashboard.snap_release_history(flask.session, snap_name)
15 channel_map = dashboard.snap_channel_map(flask.session, snap_name)
16 snap = channel_map.get("snap", {})
18 context = {
19 "snap_name": snap_name,
20 "snap_title": snap.get("title"),
21 "publisher_name": snap.get("publisher", {}).get("display-name", {}),
22 "release_history": release_history,
23 "private": snap.get("private"),
24 "default_track": (
25 snap.get("default-track")
26 if snap.get("default-track") is not None
27 else "latest"
28 ),
29 "channel_map": channel_map.get("channel-map"),
30 "tracks": snap.get("tracks"),
31 }
33 return flask.jsonify({"success": True, "data": context})