Level 0
This commit is contained in:
@@ -94,7 +94,8 @@ tiers. SHKeeper needs both its flag and URL/currencies plus API key in the Secre
|
|||||||
It prepays one calendar month per invoice, without automatic renewal.
|
It prepays one calendar month per invoice, without automatic renewal.
|
||||||
|
|
||||||
Defaults reuse product `prod_Sc9N5J0vNAdLCn` and the same five live Price IDs as
|
Defaults reuse product `prod_Sc9N5J0vNAdLCn` and the same five live Price IDs as
|
||||||
the application. Provision dedicated `www-level-0` through `www-level-4`
|
the application. Level 0 is the free account baseline; paid offers are levels
|
||||||
|
1–5. Provision dedicated `www-level-1` through `www-level-5`
|
||||||
groupOfUniqueNames groups, sentinel and ACLs separately. Override group DNs if
|
groupOfUniqueNames groups, sentinel and ACLs separately. Override group DNs if
|
||||||
needed; sandbox testing requires separate test-mode prices.
|
needed; sandbox testing requires separate test-mode prices.
|
||||||
|
|
||||||
|
|||||||
+22
-16
@@ -88,36 +88,42 @@ www_membership_environment:
|
|||||||
SHKEEPER_CURRENCIES: ""
|
SHKEEPER_CURRENCIES: ""
|
||||||
SHKEEPER_CA_CERT_FILE: ""
|
SHKEEPER_CA_CERT_FILE: ""
|
||||||
|
|
||||||
# Existing LIVE Stripe prices. Provision the dedicated group DNs separately.
|
# Existing LIVE Stripe prices. Level 0 is free and is not configured as a paid tier.
|
||||||
|
# Provision the dedicated paid-group DNs separately.
|
||||||
# Override with {} to disable paid tiers, or test-mode prices for a sandbox.
|
# Override with {} to disable paid tiers, or test-mode prices for a sandbox.
|
||||||
www_membership_tiers:
|
www_membership_tiers:
|
||||||
level-0:
|
level-1:
|
||||||
label: Level 0
|
level: 1
|
||||||
|
label: Supporter
|
||||||
price_id: price_1Rgv4xC5KPXqTvVLfMd6z7wn
|
price_id: price_1Rgv4xC5KPXqTvVLfMd6z7wn
|
||||||
price_label: $4 USD / month
|
price_label: $4 USD / month
|
||||||
usd_amount: "4.00"
|
usd_amount: "4.00"
|
||||||
group_dn: cn=www-level-0,ou=groups,dc=eom,dc=dev
|
group_dn: cn=www-level-1,ou=groups,dc=eom,dc=dev
|
||||||
level-1:
|
level-2:
|
||||||
label: Level 1
|
level: 2
|
||||||
|
label: Insider
|
||||||
price_id: price_1Rgv5QC5KPXqTvVLv1PaHWb5
|
price_id: price_1Rgv5QC5KPXqTvVLv1PaHWb5
|
||||||
price_label: $8 USD / month
|
price_label: $8 USD / month
|
||||||
usd_amount: "8.00"
|
usd_amount: "8.00"
|
||||||
group_dn: cn=www-level-1,ou=groups,dc=eom,dc=dev
|
group_dn: cn=www-level-2,ou=groups,dc=eom,dc=dev
|
||||||
level-2:
|
level-3:
|
||||||
label: Level 2
|
level: 3
|
||||||
|
label: Collaborator
|
||||||
price_id: price_1Rgv5rC5KPXqTvVL8Ol8sMUf
|
price_id: price_1Rgv5rC5KPXqTvVL8Ol8sMUf
|
||||||
price_label: $16 USD / month
|
price_label: $16 USD / month
|
||||||
usd_amount: "16.00"
|
usd_amount: "16.00"
|
||||||
group_dn: cn=www-level-2,ou=groups,dc=eom,dc=dev
|
group_dn: cn=www-level-3,ou=groups,dc=eom,dc=dev
|
||||||
level-3:
|
level-4:
|
||||||
label: Level 3
|
level: 4
|
||||||
|
label: Sustainer
|
||||||
price_id: price_1Rgv6FC5KPXqTvVL39mAxYjm
|
price_id: price_1Rgv6FC5KPXqTvVL39mAxYjm
|
||||||
price_label: $32 USD / month
|
price_label: $32 USD / month
|
||||||
usd_amount: "32.00"
|
usd_amount: "32.00"
|
||||||
group_dn: cn=www-level-3,ou=groups,dc=eom,dc=dev
|
group_dn: cn=www-level-4,ou=groups,dc=eom,dc=dev
|
||||||
level-4:
|
level-5:
|
||||||
label: Level 4
|
level: 5
|
||||||
|
label: Patron
|
||||||
price_id: price_1Rgv6mC5KPXqTvVLkcmznWZa
|
price_id: price_1Rgv6mC5KPXqTvVLkcmznWZa
|
||||||
price_label: $64 USD / month
|
price_label: $64 USD / month
|
||||||
usd_amount: "64.00"
|
usd_amount: "64.00"
|
||||||
group_dn: cn=www-level-4,ou=groups,dc=eom,dc=dev
|
group_dn: cn=www-level-5,ou=groups,dc=eom,dc=dev
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ assert plaintext_config["LDAP_URL"] == "ldap://openldap.openldap.svc.cluster.loc
|
|||||||
assert all(isinstance(value, str) for value in plaintext_config.values())
|
assert all(isinstance(value, str) for value in plaintext_config.values())
|
||||||
assert "MEMBERSHIP_SECRET_KEY" not in config and "SHKEEPER_API_KEY" not in config
|
assert "MEMBERSHIP_SECRET_KEY" not in config and "SHKEEPER_API_KEY" not in config
|
||||||
tiers = json.loads(find(all_objects, "ConfigMap", "membership-tiers")["data"]["tiers.json"])
|
tiers = json.loads(find(all_objects, "ConfigMap", "membership-tiers")["data"]["tiers.json"])
|
||||||
assert len(tiers) == 5 and tiers["level-4"]["usd_amount"] == "64.00"
|
assert len(tiers) == 5 and tiers["level-5"]["usd_amount"] == "64.00"
|
||||||
|
assert [tiers[f"level-{level}"]["level"] for level in range(1, 6)] == list(range(1, 6))
|
||||||
for name in ["membership", "membership-worker"]:
|
for name in ["membership", "membership-worker"]:
|
||||||
deployment = find(all_objects, "Deployment", name)
|
deployment = find(all_objects, "Deployment", name)
|
||||||
pod_checks(deployment["spec"]["template"]["spec"])
|
pod_checks(deployment["spec"]["template"]["spec"])
|
||||||
|
|||||||
Reference in New Issue
Block a user