Coverage for webapp/endpoints/releases.py: 100%
12 statements
« prev ^ index » next coverage.py v7.10.5, created at 2025-08-26 22:06 +0000
« prev ^ index » next coverage.py v7.10.5, created at 2025-08-26 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)
16 channel_map = dashboard.snap_channel_map(flask.session, snap_name)
18 snap = channel_map.get("snap", {})
20 context = {
21 "snap_name": snap_name,
22 "snap_title": snap.get("title"),
23 "publisher_name": snap.get("publisher", {}).get("display-name", {}),
24 "release_history": release_history,
25 "private": snap.get("private"),
26 "default_track": (
27 snap.get("default-track")
28 if snap.get("default-track") is not None
29 else "latest"
30 ),
31 "channel_map": channel_map.get("channel-map"),
32 "tracks": snap.get("tracks"),
33 }
35 return flask.jsonify({"success": True, "data": context})