~fabricematrat/charmworld/redirect-charm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# Copyright 2012, 2013 Marco Ceppi, Canonical Ltd.  This software is
# licensed under the GNU Affero General Public License version 3 (see
# the file LICENSE).

"""Create routes here and gets returned into __init__ main()"""


def build_routes(config):
    """Add any routes to the config"""

    config.add_route(
        "json-charm-change", "/reports/charm-activity.json")
    config.add_route(
        "json-contributor-growth", "/reports/charm-contributors.json")
    config.add_route(
        "json-charm-growth", "/reports/charm-count.json")

    config.add_route("reports", "/reports")

    config.add_route("charmers", "/charmers")

    # Distro/Curated Charms
    config.add_route("charm-collection", "/charms")
    config.add_route("series-collection", "/charms/{series}")
    config.add_route("charm", "/charms/{series}/{charm}")
    config.add_route("charm-revision-json",
                     "/charms/{series}/{charm}-{revision}/json")
    config.add_route("charm-json", "/charms/{series}/{charm}/json")
    config.add_route("charm-changes", "/charms/{series}/{charm}/changes")
    config.add_route("hook", "/charms/{series}/{charm}/hooks/{hook}")
    config.add_route("config", "/charms/{series}/{charm}/config")

    # Personal Charms
    config.add_route("personal-collection", "/~{owner}")
    config.add_route("personal-series", "/~{owner}/{series}")
    config.add_route("personal-charm", "/~{owner}/{series}/{charm}")
    config.add_route("personal-charm-revision-json",
                     "/~{owner}/{series}/{charm}-{revision}/json")
    config.add_route("personal-charm-json", "/~{owner}/{series}/{charm}/json")

    config.add_route(
        "personal-charm-changes", "/~{owner}/{series}/{charm}/changes")
    config.add_route(
        "personal-hook", "/~{owner}/{series}/{charm}/hooks/{hook}")
    config.add_route(
        "personal-config", "/~{owner}/{series}/{charm}/config")

    config.add_route("interface", "/interfaces/{interface}")
    config.add_route("interface-collection", "/interfaces")
    config.add_route("interface-collection-map", "/interface-charm-map")

    # Tools
    config.add_route("tools-core-review", "/tools/core-review-queue")
    config.add_route("tools-review", "/review-queue")
    config.add_route("tools-store-missing", "/tools/store-missing")
    config.add_route("tools-maintainer-missing", "/tools/maintainer-missing")
    config.add_route("tools-proof-errors", "/tools/proof-errors")

    # Experiment
    config.add_route("charm-graph", "/charm-graph")
    config.add_route("json-interface-graph", "/interface-json-graph")

    # Feeds
    config.add_route("recently-changed", "/recently-changed")
    config.add_route("recently-changed-feed", "/feed/charm-changes")

    # Quality Assessment
    config.add_route('charm-qa-edit', 'charms/{charm}/{series}/qa/edit')

    # Search
    config.add_route("search", "/search")
    config.add_route("search-json", "/search/json")

    # Home page
    config.add_route("home", "/")

    config.add_route('auth_callback', '/auth_callback')
    config.add_route('logout', '/logout')

    return config