Skip to content

Commit 1597372

Browse files
Merge branch 'main' into WD-37829-dev-add-chip-component-to-pro-related-pages-on-c-com
2 parents 67d5c77 + 0415633 commit 1597372

2 files changed

Lines changed: 136 additions & 123 deletions

File tree

products.yaml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,85 @@ maas:
1616
operatingSystem: "Linux"
1717
applicationCategory: "BusinessApplication"
1818
url: "https://canonical.com/maas"
19+
pricing:
20+
standaloneSupport:
21+
title: "MAAS standalone support pricing"
22+
billing:
23+
cadence: "annual"
24+
unit: "per managed machine"
25+
tiers:
26+
- name: "Self-support"
27+
price: "Free"
28+
summary: "Free for all machines"
29+
cta:
30+
text: "Install MAAS"
31+
url: "https://canonical.com/maas/docs/how-to-get-maas-up-and-running"
32+
features:
33+
- name: "High availability (HA) support"
34+
included: false
35+
- name: "Role based access control (RBAC)"
36+
included: false
37+
- name: "Knowledge Base"
38+
included: false
39+
- name: "Response time - SLA Sev 1"
40+
included: false
41+
- name: "Phone and ticket support"
42+
included: false
43+
- name: "Essential"
44+
price: "$30"
45+
summary: "per year, per managed machine"
46+
cta:
47+
text: "Contact us"
48+
url: "https://canonical.com/maas/contact-us"
49+
features:
50+
- name: "High availability (HA) support"
51+
included: true
52+
- name: "Role based access control (RBAC)"
53+
included: true
54+
- name: "Knowledge Base"
55+
included: true
56+
- name: "Response time - SLA Sev 1"
57+
included: false
58+
- name: "Phone and ticket support"
59+
included: false
60+
- name: "Standard"
61+
price: "$50"
62+
summary: "per year, per managed machine"
63+
cta:
64+
text: "Contact us"
65+
url: "https://canonical.com/maas/contact-us"
66+
features:
67+
- name: "High availability (HA) support"
68+
included: true
69+
- name: "Role based access control (RBAC)"
70+
included: true
71+
- name: "Knowledge Base"
72+
included: true
73+
- name: "Response time - SLA Sev 1"
74+
included: true
75+
value: "4 hours"
76+
- name: "Phone and ticket support"
77+
included: true
78+
value: "Office hours"
79+
- name: "Advanced"
80+
price: "$100"
81+
summary: "per year, per managed machine"
82+
cta:
83+
text: "Contact us"
84+
url: "https://canonical.com/maas/contact-us"
85+
features:
86+
- name: "High availability (HA) support"
87+
included: true
88+
- name: "Role based access control (RBAC)"
89+
included: true
90+
- name: "Knowledge Base"
91+
included: true
92+
- name: "Response time - SLA Sev 1"
93+
included: true
94+
value: "1 hour"
95+
- name: "Phone and ticket support"
96+
included: true
97+
value: "24 hours a day, every day"
1998
microk8s:
2099
name: "MicroK8s"
21100
description: "High availability Kubernetes with autonomous clusters. MicroK8s is the simplest production-grade conformant K8s for edge and IoT, on Linux, Windows, and macOS."

templates/maas/index.html

Lines changed: 57 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,21 @@
2222
{% endblock %}
2323

2424
{% block extra_metatags %}
25+
{% set maas_support_pricing = products_yaml.maas.pricing.standaloneSupport %}
26+
{% set maas_support_offers = namespace(items=[]) %}
27+
{% for tier in maas_support_pricing.tiers %}
28+
{% set price = 0 if tier.price == 'Free' else tier.price | replace('$', '') | float %}
29+
{% set maas_support_offers.items = maas_support_offers.items + [
30+
{
31+
'@type': 'Offer',
32+
'name': tier.name,
33+
'description': tier.summary,
34+
'url': tier.cta.url,
35+
'price': price,
36+
'priceCurrency': 'USD'
37+
}
38+
] %}
39+
{% endfor %}
2540
<script type="application/ld+json" nonce="{{ csp_nonce }}">
2641
{
2742
"@context": "https://schema.org",
@@ -30,7 +45,15 @@
3045
"description": {{ products_yaml.maas.description | tojson }},
3146
"operatingSystem": {{ products_yaml.maas.operatingSystem | tojson }},
3247
"applicationCategory": {{ products_yaml.maas.applicationCategory | tojson }},
33-
"url": {{ products_yaml.maas.url | tojson }}
48+
"url": {{ products_yaml.maas.url | tojson }},
49+
"offers": {
50+
"@type": "AggregateOffer",
51+
"priceCurrency": "USD",
52+
"lowPrice": {{ (maas_support_offers.items | sort(attribute='price') | first).price }},
53+
"highPrice": {{ (maas_support_offers.items | sort(attribute='price') | last).price }},
54+
"offerCount": {{ maas_support_offers.items | length }},
55+
"offers": {{ maas_support_offers.items | tojson }}
56+
}
3457
}
3558
</script>
3659
{% endblock %}
@@ -592,7 +615,7 @@ <h3 class="p-heading--5"><a href="/maas/features">MAAS product tour</a></h3>
592615
},
593616
]
594617
},
595-
],)
618+
],)
596619
}}
597620

598621
{{ vf_basic_section(
@@ -653,129 +676,40 @@ <h3 class="p-heading--5 u-no-padding u-no-margin">MAAS Standalone Support</h3>
653676
]
654677
) }}
655678

679+
{% set maas_support_pricing = products_yaml.maas.pricing.standaloneSupport %}
680+
{% set maas_support_tiers = namespace(tiers=[]) %}
681+
{% for tier in maas_support_pricing.tiers %}
682+
{% set tier_offerings = namespace(items=[]) %}
683+
{% for feature in tier.features %}
684+
{% set list_item_content_html = feature.name %}
685+
{% if feature.value is defined %}
686+
{% set list_item_content_html = feature.name ~ ': ' ~ feature.value %}
687+
{% endif %}
688+
{% set tier_offerings.items = tier_offerings.items + [
689+
{
690+
'list_item_style': 'ticked' if feature.included else 'crossed',
691+
'list_item_content_html': list_item_content_html
692+
}
693+
] %}
694+
{% endfor %}
695+
{% set tier_price_explanation = 'for all machines' if loop.first else tier.summary %}
696+
{% set tier_cta_html = ('<a href="' ~ tier.cta.url ~ '">' ~ tier.cta.text ~ '&nbsp;&rsaquo;</a>') if loop.first else ('<a href="' ~ tier.cta.url ~ '" class="js-invoke-modal" aria-controls="maas-contact-form">' ~ tier.cta.text ~ '&nbsp;&rsaquo;</a>') %}
697+
{% set maas_support_tiers.tiers = maas_support_tiers.tiers + [
698+
{
699+
'tier_name_text': tier.name,
700+
'tier_price_text': tier.price,
701+
'tier_price_explanation': tier_price_explanation,
702+
'tier_label_text': 'What’s included',
703+
'tier_offerings': tier_offerings.items,
704+
'cta_html': tier_cta_html | safe
705+
}
706+
] %}
707+
{% endfor %}
708+
656709
{% call(slot) vf_pricing_block(
657-
title_text='MAAS standalone support pricing',
710+
title_text=maas_support_pricing.title,
658711
top_rule_variant="highlighted",
659-
tiers=[
660-
{
661-
'tier_name_text': 'Self-support',
662-
'tier_price_text': 'Free',
663-
'tier_price_explanation': 'for all machines',
664-
'tier_label_text': 'What’s included',
665-
'tier_offerings': [
666-
{
667-
'list_item_style': 'crossed',
668-
'list_item_content_html': 'High availability (HA) support'
669-
},
670-
{
671-
'list_item_style': 'crossed',
672-
'list_item_content_html': 'Role based access control (RBAC)'
673-
},
674-
{
675-
'list_item_style': 'crossed',
676-
'list_item_content_html': 'Knowledge Base'
677-
},
678-
{
679-
'list_item_style': 'crossed',
680-
'list_item_content_html': 'Response time - SLA Sev 1'
681-
},
682-
{
683-
'list_item_style': 'crossed',
684-
'list_item_content_html': 'Phone and ticket support'
685-
}
686-
],
687-
'cta_html': '<a href="/maas/docs/how-to-get-maas-up-and-running">Install MAAS&nbsp;&rsaquo;</a>'
688-
},
689-
690-
{
691-
'tier_name_text': 'Essential',
692-
'tier_price_text': '$30',
693-
'tier_price_explanation': 'per year, per managed machine',
694-
'tier_label_text': 'What’s included',
695-
'tier_offerings': [
696-
{
697-
'list_item_style': 'ticked',
698-
'list_item_content_html': 'High availability (HA) support'
699-
},
700-
{
701-
'list_item_style': 'ticked',
702-
'list_item_content_html': 'Role based access control (RBAC)'
703-
},
704-
{
705-
'list_item_style': 'ticked',
706-
'list_item_content_html': 'Knowledge Base'
707-
},
708-
{
709-
'list_item_style': 'crossed',
710-
'list_item_content_html': 'Response time - SLA Sev 1'
711-
},
712-
{
713-
'list_item_style': 'crossed',
714-
'list_item_content_html': 'Phone and ticket support'
715-
}
716-
],
717-
'cta_html': '<a href="/maas/contact-us" class="js-invoke-modal" aria-controls="maas-contact-form">Contact us&nbsp;&rsaquo;</a>'
718-
},
719-
720-
{
721-
'tier_name_text': 'Standard',
722-
'tier_price_text': '$50',
723-
'tier_price_explanation': 'per year, per managed machine',
724-
'tier_label_text': 'What’s included',
725-
'tier_offerings': [
726-
{
727-
'list_item_style': 'ticked',
728-
'list_item_content_html': 'High availability (HA) support'
729-
},
730-
{
731-
'list_item_style': 'ticked',
732-
'list_item_content_html': 'Role based access control (RBAC)'
733-
},
734-
{
735-
'list_item_style': 'ticked',
736-
'list_item_content_html': 'Knowledge Base'
737-
},
738-
{
739-
'list_item_style': 'ticked',
740-
'list_item_content_html': 'Response time - SLA Sev 1: 4 hours'
741-
},
742-
{
743-
'list_item_style': 'ticked',
744-
'list_item_content_html': 'Phone and ticket support: Office hours'
745-
}
746-
],
747-
'cta_html': '<a href="/maas/contact-us" class="js-invoke-modal" aria-controls="maas-contact-form">Contact us&nbsp;&rsaquo;</a>'
748-
},
749-
{
750-
'tier_name_text': 'Advanced',
751-
'tier_price_text': '$100',
752-
'tier_price_explanation': 'per year, per managed machine',
753-
'tier_label_text': 'What’s included',
754-
'tier_offerings': [
755-
{
756-
'list_item_style': 'ticked',
757-
'list_item_content_html': 'High availability (HA) support'
758-
},
759-
{
760-
'list_item_style': 'ticked',
761-
'list_item_content_html': 'Role based access control (RBAC)'
762-
},
763-
{
764-
'list_item_style': 'ticked',
765-
'list_item_content_html': 'Knowledge Base'
766-
},
767-
{
768-
'list_item_style': 'ticked',
769-
'list_item_content_html': 'Response time - SLA Sev 1: 1 hour'
770-
},
771-
{
772-
'list_item_style': 'ticked',
773-
'list_item_content_html': 'Phone and ticket support:<br /> 24 hours a day, everyday'
774-
}
775-
],
776-
'cta_html': '<a href="/maas/contact-us" class="js-invoke-modal" aria-controls="maas-contact-form">Contact us&nbsp;&rsaquo;</a>'
777-
}
778-
]
712+
tiers=maas_support_tiers.tiers
779713
) -%}
780714
{%- if slot == 'section_description' -%}
781715
<p>Choose from a wide range of support options to best suit your needs and deployments.</p>

0 commit comments

Comments
 (0)