update Press to Jcloude
This commit is contained in:
parent
8226a31793
commit
2e1e6d961b
@ -3,7 +3,7 @@
|
||||
<template #body-content>
|
||||
<div class="space-y-4">
|
||||
<div class="flex items-center space-x-2">
|
||||
<PressAutocomplete
|
||||
<JcloudeAutocomplete
|
||||
v-model="selectedTag"
|
||||
:options="tagOptions"
|
||||
label="Select or create a tag"
|
||||
@ -31,7 +31,7 @@ import Autocomplete from '../components/Autocomplete.vue';
|
||||
export default {
|
||||
name: 'TagsDialog',
|
||||
props: ['docname', 'pagetype'],
|
||||
components: { ErrorMessage, PressAutocomplete: Autocomplete },
|
||||
components: { ErrorMessage, JcloudeAutocomplete: Autocomplete },
|
||||
data() {
|
||||
return {
|
||||
showDialog: true,
|
||||
|
||||
@ -542,7 +542,7 @@ def get_permissions():
|
||||
docperms = jingrow.db.sql(
|
||||
f"""
|
||||
SELECT `document_name`, GROUP_CONCAT(`action`) as `actions`
|
||||
FROM `tabPress User Permission`
|
||||
FROM `tabJcloude User Permission`
|
||||
WHERE user='{user}' or `group` in {groups}
|
||||
GROUP BY `document_name`
|
||||
""",
|
||||
@ -1194,29 +1194,29 @@ def remove_permission_group_user(name, user):
|
||||
|
||||
@jingrow.whitelist()
|
||||
def get_permission_roles():
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
|
||||
return (
|
||||
jingrow.qb.from_(PressRole)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.select(
|
||||
PressRole.name,
|
||||
PressRole.admin_access,
|
||||
PressRole.allow_billing,
|
||||
PressRole.allow_apps,
|
||||
PressRole.allow_partner,
|
||||
PressRole.allow_site_creation,
|
||||
PressRole.allow_bench_creation,
|
||||
PressRole.allow_server_creation,
|
||||
PressRole.allow_webhook_configuration,
|
||||
PressRole.allow_dashboard,
|
||||
PressRole.allow_customer,
|
||||
PressRole.allow_leads,
|
||||
PressRole.allow_contribution,
|
||||
JcloudeRole.name,
|
||||
JcloudeRole.admin_access,
|
||||
JcloudeRole.allow_billing,
|
||||
JcloudeRole.allow_apps,
|
||||
JcloudeRole.allow_partner,
|
||||
JcloudeRole.allow_site_creation,
|
||||
JcloudeRole.allow_bench_creation,
|
||||
JcloudeRole.allow_server_creation,
|
||||
JcloudeRole.allow_webhook_configuration,
|
||||
JcloudeRole.allow_dashboard,
|
||||
JcloudeRole.allow_customer,
|
||||
JcloudeRole.allow_leads,
|
||||
JcloudeRole.allow_contribution,
|
||||
)
|
||||
.join(PressRoleUser)
|
||||
.on((PressRole.name == PressRoleUser.parent) & (PressRoleUser.user == jingrow.session.user))
|
||||
.where(PressRole.team == get_current_team())
|
||||
.join(JcloudeRoleUser)
|
||||
.on((JcloudeRole.name == JcloudeRoleUser.parent) & (JcloudeRoleUser.user == jingrow.session.user))
|
||||
.where(JcloudeRole.team == get_current_team())
|
||||
.run(as_dict=True)
|
||||
)
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ if TYPE_CHECKING:
|
||||
from elasticsearch_dsl.response import AggResponse
|
||||
from elasticsearch_dsl.response.aggs import FieldBucket, FieldBucketData
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
|
||||
class Dataset(TypedDict):
|
||||
"""Single element of list of Datasets returned for stacked histogram chart"""
|
||||
@ -366,7 +366,7 @@ class NginxRequestGroupByChart(StackedGroupByChart):
|
||||
|
||||
def setup_search_filters(self):
|
||||
super().setup_search_filters()
|
||||
jcloude_settings: PressSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
if not (
|
||||
jcloude_settings.monitor_server
|
||||
and (
|
||||
|
||||
@ -19,7 +19,7 @@ from jcloude.api.site import site_config, update_config
|
||||
from jcloude.utils import log_error
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
|
||||
|
||||
class EmailLimitExceeded(TooManyRequestsError):
|
||||
@ -156,7 +156,7 @@ def validate_plan(secret_key):
|
||||
)
|
||||
|
||||
|
||||
def make_spamd_request(jcloude_settings: PressSettings, message: bytes):
|
||||
def make_spamd_request(jcloude_settings: JcloudeSettings, message: bytes):
|
||||
headers = {}
|
||||
if jcloude_settings.spamd_api_key:
|
||||
spamd_api_secret = get_decrypted_password("Jcloude Settings", "Jcloude Settings", "spamd_api_secret")
|
||||
|
||||
@ -26,23 +26,23 @@ def get_notifications(
|
||||
if not filters:
|
||||
filters = {}
|
||||
|
||||
PressNotification = jingrow.qb.PageType("Jcloude Notification")
|
||||
JcloudeNotification = jingrow.qb.PageType("Jcloude Notification")
|
||||
query = (
|
||||
jingrow.qb.from_(PressNotification)
|
||||
jingrow.qb.from_(JcloudeNotification)
|
||||
.select(
|
||||
PressNotification.name,
|
||||
PressNotification.type,
|
||||
PressNotification.read,
|
||||
PressNotification.title,
|
||||
PressNotification.message,
|
||||
PressNotification.creation,
|
||||
PressNotification.is_addressed,
|
||||
PressNotification.is_actionable,
|
||||
PressNotification.document_type,
|
||||
PressNotification.document_name,
|
||||
JcloudeNotification.name,
|
||||
JcloudeNotification.type,
|
||||
JcloudeNotification.read,
|
||||
JcloudeNotification.title,
|
||||
JcloudeNotification.message,
|
||||
JcloudeNotification.creation,
|
||||
JcloudeNotification.is_addressed,
|
||||
JcloudeNotification.is_actionable,
|
||||
JcloudeNotification.document_type,
|
||||
JcloudeNotification.document_name,
|
||||
)
|
||||
.where(PressNotification.team == get_current_team())
|
||||
.orderby(PressNotification.creation, order=jingrow.qb.desc)
|
||||
.where(JcloudeNotification.team == get_current_team())
|
||||
.orderby(JcloudeNotification.creation, order=jingrow.qb.desc)
|
||||
.limit(limit_page_length)
|
||||
.offset(limit_start)
|
||||
)
|
||||
@ -54,10 +54,10 @@ def get_notifications(
|
||||
resources.update(release_groups)
|
||||
|
||||
if resources:
|
||||
query = query.where(PressNotification.reference_name.isin(resources))
|
||||
query = query.where(JcloudeNotification.reference_name.isin(resources))
|
||||
|
||||
if filters.get("read") == "Unread":
|
||||
query = query.where(PressNotification.read == 0)
|
||||
query = query.where(JcloudeNotification.read == 0)
|
||||
|
||||
notifications = query.run(as_dict=True)
|
||||
|
||||
|
||||
@ -53,22 +53,22 @@ def attempts(webhook: str):
|
||||
pg = jingrow.get_pg("Jcloude Webhook", webhook)
|
||||
pg.has_permission("read")
|
||||
|
||||
PressWebhookAttempt = jingrow.qb.PageType("Jcloude Webhook Attempt")
|
||||
PressWebhookLog = jingrow.qb.PageType("Jcloude Webhook Log")
|
||||
JcloudeWebhookAttempt = jingrow.qb.PageType("Jcloude Webhook Attempt")
|
||||
JcloudeWebhookLog = jingrow.qb.PageType("Jcloude Webhook Log")
|
||||
query = (
|
||||
jingrow.qb.from_(PressWebhookAttempt)
|
||||
jingrow.qb.from_(JcloudeWebhookAttempt)
|
||||
.select(
|
||||
PressWebhookAttempt.name,
|
||||
PressWebhookAttempt.endpoint,
|
||||
PressWebhookLog.event,
|
||||
PressWebhookAttempt.status,
|
||||
PressWebhookAttempt.response_status_code,
|
||||
PressWebhookAttempt.timestamp,
|
||||
JcloudeWebhookAttempt.name,
|
||||
JcloudeWebhookAttempt.endpoint,
|
||||
JcloudeWebhookLog.event,
|
||||
JcloudeWebhookAttempt.status,
|
||||
JcloudeWebhookAttempt.response_status_code,
|
||||
JcloudeWebhookAttempt.timestamp,
|
||||
)
|
||||
.left_join(PressWebhookLog)
|
||||
.on(PressWebhookAttempt.parent == PressWebhookLog.name)
|
||||
.where(PressWebhookAttempt.webhook == pg.name)
|
||||
.orderby(PressWebhookAttempt.timestamp, order=jingrow.qb.desc)
|
||||
.left_join(JcloudeWebhookLog)
|
||||
.on(JcloudeWebhookAttempt.parent == JcloudeWebhookLog.name)
|
||||
.where(JcloudeWebhookAttempt.webhook == pg.name)
|
||||
.orderby(JcloudeWebhookAttempt.timestamp, order=jingrow.qb.desc)
|
||||
)
|
||||
return query.run(as_dict=1)
|
||||
|
||||
|
||||
@ -37,16 +37,16 @@ def api(scope: Literal["billing", "partner"]):
|
||||
team: Team = get_current_team(get_pg=True)
|
||||
if team.is_team_owner() or team.is_admin_user():
|
||||
return fn(*args, **kwargs)
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
has_permission = (
|
||||
jingrow.qb.from_(PressRole)
|
||||
.inner_join(PressRoleUser)
|
||||
.on(PressRoleUser.parent == PressRole.name)
|
||||
.select(Count(PressRole.name).as_("count"))
|
||||
.where(PressRole.team == team.name)
|
||||
.where(PressRole[key] == 1)
|
||||
.where(PressRoleUser.user == jingrow.session.user)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.inner_join(JcloudeRoleUser)
|
||||
.on(JcloudeRoleUser.parent == JcloudeRole.name)
|
||||
.select(Count(JcloudeRole.name).as_("count"))
|
||||
.where(JcloudeRole.team == team.name)
|
||||
.where(JcloudeRole[key] == 1)
|
||||
.where(JcloudeRoleUser.user == jingrow.session.user)
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("count")
|
||||
@ -74,16 +74,16 @@ def action():
|
||||
team: Team = get_current_team(get_pg=True)
|
||||
if team.is_team_owner() or team.is_admin_user():
|
||||
return fn(self, *args, **kwargs)
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
has_permission = (
|
||||
jingrow.qb.from_(PressRole)
|
||||
.inner_join(PressRoleUser)
|
||||
.on(PressRoleUser.parent == PressRole.name)
|
||||
.select(Count(PressRole.name).as_("count"))
|
||||
.where(PressRole.team == team.name)
|
||||
.where(PressRole[key] == 1)
|
||||
.where(PressRoleUser.user == jingrow.session.user)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.inner_join(JcloudeRoleUser)
|
||||
.on(JcloudeRoleUser.parent == JcloudeRole.name)
|
||||
.select(Count(JcloudeRole.name).as_("count"))
|
||||
.where(JcloudeRole.team == team.name)
|
||||
.where(JcloudeRole[key] == 1)
|
||||
.where(JcloudeRoleUser.user == jingrow.session.user)
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("count")
|
||||
@ -159,15 +159,15 @@ def base_query() -> QueryBuilder:
|
||||
"""
|
||||
Get a base query for Jcloude Role documents based on the current team context.
|
||||
"""
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
return (
|
||||
jingrow.qb.from_(PressRole)
|
||||
.select(PressRole.name)
|
||||
.left_join(PressRoleUser)
|
||||
.on(PressRoleUser.parent == PressRole.name)
|
||||
.where(PressRole.team == get_current_team())
|
||||
.where(PressRoleUser.user == jingrow.session.user)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.select(JcloudeRole.name)
|
||||
.left_join(JcloudeRoleUser)
|
||||
.on(JcloudeRoleUser.parent == JcloudeRole.name)
|
||||
.where(JcloudeRole.team == get_current_team())
|
||||
.where(JcloudeRoleUser.user == jingrow.session.user)
|
||||
)
|
||||
|
||||
|
||||
|
||||
@ -11,33 +11,33 @@ def check(base_query: QueryBuilder, document_type: str, document_name: str) -> b
|
||||
|
||||
|
||||
def documents(base_query: QueryBuilder, document_type: str) -> list[str]:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
return [
|
||||
pg.document_name
|
||||
for pg in base_query.inner_join(PressRoleResource)
|
||||
for pg in base_query.inner_join(JcloudeRoleResource)
|
||||
.on(
|
||||
(PressRoleResource.parent == PressRole.name)
|
||||
& (PressRoleResource.document_type == document_type)
|
||||
& (Not(PressRoleResource.document_name.isnull()))
|
||||
(JcloudeRoleResource.parent == JcloudeRole.name)
|
||||
& (JcloudeRoleResource.document_type == document_type)
|
||||
& (Not(JcloudeRoleResource.document_name.isnull()))
|
||||
)
|
||||
.select(PressRoleResource.document_name)
|
||||
.select(JcloudeRoleResource.document_name)
|
||||
.distinct()
|
||||
.run(as_dict=True)
|
||||
]
|
||||
|
||||
|
||||
def document(base_query: QueryBuilder, document_type: str, document_name: str) -> bool:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
return (
|
||||
base_query.inner_join(PressRoleResource)
|
||||
base_query.inner_join(JcloudeRoleResource)
|
||||
.on(
|
||||
(PressRoleResource.parent == PressRole.name)
|
||||
& (PressRoleResource.document_type == document_type)
|
||||
& (PressRoleResource.document_name == document_name)
|
||||
(JcloudeRoleResource.parent == JcloudeRole.name)
|
||||
& (JcloudeRoleResource.document_type == document_type)
|
||||
& (JcloudeRoleResource.document_name == document_name)
|
||||
)
|
||||
.select(Count(PressRole.name).as_("document_count"))
|
||||
.select(Count(JcloudeRole.name).as_("document_count"))
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("document_count")
|
||||
|
||||
@ -4,10 +4,10 @@ from jingrow.query_builder.terms import QueryBuilder
|
||||
|
||||
|
||||
def check(base_query: QueryBuilder) -> bool:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
return (
|
||||
base_query.where(PressRole.allow_apps == 1)
|
||||
.select(Count(PressRole.name).as_("count"))
|
||||
base_query.where(JcloudeRole.allow_apps == 1)
|
||||
.select(Count(JcloudeRole.name).as_("count"))
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("count")
|
||||
|
||||
@ -4,17 +4,17 @@ from jingrow.query_builder.terms import QueryBuilder
|
||||
|
||||
|
||||
def check(base_query: QueryBuilder, document_name: str) -> bool:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
ServerSnapshot = jingrow.qb.PageType("Server Snapshot")
|
||||
return (
|
||||
base_query.left_join(PressRoleResource)
|
||||
.on(PressRoleResource.parent == PressRole.name)
|
||||
base_query.left_join(JcloudeRoleResource)
|
||||
.on(JcloudeRoleResource.parent == JcloudeRole.name)
|
||||
.left_join(ServerSnapshot)
|
||||
.on(ServerSnapshot.name == document_name)
|
||||
.select(Count(PressRole.name).as_("count"))
|
||||
.where(PressRoleResource.document_type == "Server")
|
||||
.where(PressRoleResource.document_name == ServerSnapshot.app_server)
|
||||
.select(Count(JcloudeRole.name).as_("count"))
|
||||
.where(JcloudeRoleResource.document_type == "Server")
|
||||
.where(JcloudeRoleResource.document_name == ServerSnapshot.app_server)
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("count")
|
||||
|
||||
@ -4,17 +4,17 @@ from jingrow.query_builder.terms import QueryBuilder
|
||||
|
||||
|
||||
def check(base_query: QueryBuilder, document_name: str) -> bool:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleResource = jingrow.qb.PageType("Jcloude Role Resource")
|
||||
SiteBackup = jingrow.qb.PageType("Site Backup")
|
||||
return (
|
||||
base_query.left_join(PressRoleResource)
|
||||
.on(PressRoleResource.parent == PressRole.name)
|
||||
base_query.left_join(JcloudeRoleResource)
|
||||
.on(JcloudeRoleResource.parent == JcloudeRole.name)
|
||||
.left_join(SiteBackup)
|
||||
.on(SiteBackup.name == document_name)
|
||||
.select(Count(PressRole.name).as_("count"))
|
||||
.where(PressRoleResource.document_type == "Site")
|
||||
.where(PressRoleResource.document_name == SiteBackup.site)
|
||||
.select(Count(JcloudeRole.name).as_("count"))
|
||||
.where(JcloudeRoleResource.document_type == "Site")
|
||||
.where(JcloudeRoleResource.document_name == SiteBackup.site)
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("count")
|
||||
|
||||
@ -4,10 +4,10 @@ from jingrow.query_builder.terms import QueryBuilder
|
||||
|
||||
|
||||
def check(base_query: QueryBuilder) -> bool:
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
return (
|
||||
base_query.where(PressRole.allow_webhook_configuration == 1)
|
||||
.select(Count(PressRole.name).as_("document_count"))
|
||||
base_query.where(JcloudeRole.allow_webhook_configuration == 1)
|
||||
.select(Count(JcloudeRole.name).as_("document_count"))
|
||||
.run(as_dict=True)
|
||||
.pop()
|
||||
.get("document_count")
|
||||
|
||||
@ -25,7 +25,7 @@ class AccountRequest(Page):
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.account_request_jcloude_role.account_request_jcloude_role import (
|
||||
AccountRequestPressRole,
|
||||
AccountRequestJcloudeRole,
|
||||
)
|
||||
|
||||
agreed_to_partner_consent: DF.Check
|
||||
@ -52,7 +52,7 @@ class AccountRequest(Page):
|
||||
otp_generated_at: DF.Datetime | None
|
||||
phone_number: DF.Data | None
|
||||
plan: DF.Link | None
|
||||
jcloude_roles: DF.TableMultiSelect[AccountRequestPressRole]
|
||||
jcloude_roles: DF.TableMultiSelect[AccountRequestJcloudeRole]
|
||||
product_trial: DF.Link | None
|
||||
referral_source: DF.Data | None
|
||||
referrer_id: DF.Data | None
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class AccountRequestPressRole(Page):
|
||||
class AccountRequestJcloudeRole(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -62,7 +62,7 @@ if TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.bench_update_app.bench_update_app import BenchUpdateApp
|
||||
from jcloude.jcloude.pagetype.deploy_candidate.deploy_candidate import DeployCandidate
|
||||
from jcloude.jcloude.pagetype.deploy_candidate_build.deploy_candidate_build import DeployCandidateBuild
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
|
||||
SupervisorctlActions = Literal[
|
||||
"start",
|
||||
@ -725,7 +725,7 @@ class Bench(Page):
|
||||
|
||||
def get_memory_info(self) -> tuple[bool, float, float]:
|
||||
"""Returns a tuple: (is_info_available, free_memory_in_gb, required_memory_in_gb)"""
|
||||
jcloude_settings: PressSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
required_memory_gb = jcloude_settings.minimum_rebuild_memory
|
||||
|
||||
free_memory_bytes = self.get_free_memory()
|
||||
|
||||
@ -46,7 +46,7 @@ from jcloude.utils import get_current_team
|
||||
from jcloude.utils.test import foreground_enqueue, foreground_enqueue_pg
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
from jcloude.jcloude.pagetype.team.team import Team
|
||||
|
||||
|
||||
@ -107,7 +107,7 @@ class TestBench(JingrowTestCase):
|
||||
high_memory_max = 4020
|
||||
low_memory_max = 1029
|
||||
|
||||
jcloude_settings: PressSettings = jingrow.get_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_pg("Jcloude Settings")
|
||||
|
||||
if not jcloude_settings.minimum_rebuild_memory:
|
||||
jcloude_settings.certbot_directory = "./"
|
||||
|
||||
@ -42,8 +42,8 @@ if typing.TYPE_CHECKING:
|
||||
|
||||
from jcloude.jcloude.pagetype.log_server.log_server import LogServer
|
||||
from jcloude.jcloude.pagetype.monitor_server.monitor_server import MonitorServer
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import PressJob
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import JcloudeJob
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
from jcloude.jcloude.pagetype.server.server import BaseServer
|
||||
from jcloude.jcloude.pagetype.server_plan.server_plan import ServerPlan
|
||||
from jcloude.jcloude.pagetype.virtual_machine.virtual_machine import VirtualMachine
|
||||
@ -132,7 +132,7 @@ class Cluster(Page):
|
||||
self.validate_hetzner_api_token()
|
||||
|
||||
def validate_hetzner_api_token(self):
|
||||
settings: "PressSettings" = jingrow.get_single("Jcloude Settings")
|
||||
settings: "JcloudeSettings" = jingrow.get_single("Jcloude Settings")
|
||||
api_token = settings.get_password("hetzner_api_token")
|
||||
client = Client(token=api_token)
|
||||
try:
|
||||
@ -150,7 +150,7 @@ class Cluster(Page):
|
||||
jingrow.throw(f"An error occurred while validating the API token: {e}")
|
||||
|
||||
def validate_aws_credentials(self):
|
||||
settings: "PressSettings" = jingrow.get_single("Jcloude Settings")
|
||||
settings: "JcloudeSettings" = jingrow.get_single("Jcloude Settings")
|
||||
if self.public and not self.aws_access_key_id:
|
||||
self.aws_access_key_id = settings.aws_access_key_id
|
||||
self.aws_secret_access_key = settings.get_password("aws_secret_access_key")
|
||||
@ -193,7 +193,7 @@ class Cluster(Page):
|
||||
]
|
||||
|
||||
# Get Hetzner API token from Jcloude Settings
|
||||
settings: "PressSettings" = jingrow.get_single("Jcloude Settings")
|
||||
settings: "JcloudeSettings" = jingrow.get_single("Jcloude Settings")
|
||||
api_token = settings.get_password("hetzner_api_token")
|
||||
|
||||
client = Client(token=api_token)
|
||||
@ -893,7 +893,7 @@ class Cluster(Page):
|
||||
kms_key_id: str | None = None,
|
||||
is_secondary: bool = False,
|
||||
primary: str | None = None,
|
||||
) -> tuple[BaseServer | MonitorServer | LogServer, PressJob]:
|
||||
) -> tuple[BaseServer | MonitorServer | LogServer, JcloudeJob]:
|
||||
"""Creates a server for the cluster
|
||||
|
||||
temporary_server: If you are creating a temporary server for some special purpose, set this to True.
|
||||
|
||||
@ -63,7 +63,7 @@
|
||||
"fieldname": "status",
|
||||
"fieldtype": "Select",
|
||||
"label": "Status",
|
||||
"options": "Validating\nConfirmed\nAcknowledged\nInvestigating\nResolved\nAuto-Resolved\nPress-Resolved"
|
||||
"options": "Validating\nConfirmed\nAcknowledged\nInvestigating\nResolved\nAuto-Resolved\nJcloude-Resolved"
|
||||
},
|
||||
{
|
||||
"default": "Database Down",
|
||||
|
||||
@ -43,7 +43,7 @@ if TYPE_CHECKING:
|
||||
IncidentSettingsUser,
|
||||
)
|
||||
from jcloude.jcloude.pagetype.monitor_server.monitor_server import MonitorServer
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
from jcloude.jcloude.pagetype.server.server import Server
|
||||
|
||||
INCIDENT_ALERT = "Sites Down" # TODO: make it a field or child table somewhere #
|
||||
@ -367,7 +367,7 @@ class Incident(WebsiteGenerator):
|
||||
|
||||
@cached_property
|
||||
def monitor_server(self) -> MonitorServer:
|
||||
jcloude_settings: PressSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
if not (monitor_url := jcloude_settings.monitor_server):
|
||||
jingrow.throw("Monitor Server not set in Jcloude Settings")
|
||||
return jingrow.get_cached_pg("Monitor Server", monitor_url)
|
||||
@ -482,12 +482,12 @@ class Incident(WebsiteGenerator):
|
||||
|
||||
@property
|
||||
def twilio_phone_number(self):
|
||||
jcloude_settings: PressSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
return Phone(jcloude_settings.twilio_phone_number)
|
||||
|
||||
@property
|
||||
def twilio_client(self):
|
||||
jcloude_settings: PressSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
jcloude_settings: JcloudeSettings = jingrow.get_cached_pg("Jcloude Settings")
|
||||
try:
|
||||
return jcloude_settings.twilio_client
|
||||
except Exception:
|
||||
|
||||
@ -6,7 +6,7 @@ from __future__ import annotations
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressFeedback(Page):
|
||||
class JcloudeFeedback(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -6,5 +6,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressFeedback(JingrowTestCase):
|
||||
class TestJcloudeFeedback(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -10,7 +10,7 @@ from jingrow.utils import add_days, add_to_date
|
||||
from jcloude.jcloude.pagetype.jcloude_job_step.jcloude_job_step import safe_exec
|
||||
|
||||
|
||||
class PressJob(Page):
|
||||
class JcloudeJob(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -232,7 +232,7 @@ def fail_stuck_jcloude_jobs():
|
||||
limit=100,
|
||||
)
|
||||
for job_name in jobs:
|
||||
job = PressJob("Jcloude Job", job_name)
|
||||
job = JcloudeJob("Jcloude Job", job_name)
|
||||
job.force_fail()
|
||||
jingrow.db.commit()
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressJob(JingrowTestCase):
|
||||
class TestJcloudeJob(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -9,10 +9,10 @@ from jingrow.model.page import Page
|
||||
from jingrow.utils.safe_exec import safe_exec
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import PressJob
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import JcloudeJob
|
||||
|
||||
|
||||
class PressJobStep(Page):
|
||||
class JcloudeJobStep(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -45,7 +45,7 @@ class PressJobStep(Page):
|
||||
{"parent": self.job_type, "step_name": self.step_name},
|
||||
"script",
|
||||
)
|
||||
job: PressJob = jingrow.get_pg("Jcloude Job", self.job)
|
||||
job: JcloudeJob = jingrow.get_pg("Jcloude Job", self.job)
|
||||
arguments = json.loads(job.arguments)
|
||||
try:
|
||||
local = {"arguments": jingrow._dict(arguments), "result": None, "pg": job}
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressJobStep(JingrowTestCase):
|
||||
class TestJcloudeJobStep(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressJobType(Page):
|
||||
class JcloudeJobType(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -14,11 +14,11 @@ class PressJobType(Page):
|
||||
if TYPE_CHECKING:
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_job_type_step.jcloude_job_type_step import PressJobTypeStep
|
||||
from jcloude.jcloude.pagetype.jcloude_job_type_step.jcloude_job_type_step import JcloudeJobTypeStep
|
||||
|
||||
callback_max_retry: DF.Int
|
||||
callback_script: DF.Code | None
|
||||
steps: DF.Table[PressJobTypeStep]
|
||||
steps: DF.Table[JcloudeJobTypeStep]
|
||||
# end: auto-generated types
|
||||
|
||||
pass
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressJobType(JingrowTestCase):
|
||||
class TestJcloudeJobType(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressJobTypeStep(Page):
|
||||
class JcloudeJobTypeStep(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressJobTypeStep(JingrowTestCase):
|
||||
class TestJcloudeJobTypeStep(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@ import jingrow
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressMethodPermission(Page):
|
||||
class JcloudeMethodPermission(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressMethodPermission(JingrowTestCase):
|
||||
class TestJcloudeMethodPermission(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -9,7 +9,7 @@ from jcloude.api.client import dashboard_whitelist
|
||||
from jcloude.jcloude.pagetype.communication_info.communication_info import get_communication_info
|
||||
|
||||
|
||||
class PressNotification(Page):
|
||||
class JcloudeNotification(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -17,7 +17,7 @@ from jcloude.jcloude.pagetype.release_group.test_release_group import (
|
||||
from jcloude.jcloude.pagetype.site.test_site import create_test_bench, create_test_site
|
||||
|
||||
|
||||
class TestPressNotification(JingrowTestCase):
|
||||
class TestJcloudeNotification(JingrowTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ DEFAULT_PERMISSIONS = {
|
||||
}
|
||||
|
||||
|
||||
class PressPermissionGroup(Page):
|
||||
class JcloudePermissionGroup(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -23,13 +23,13 @@ class PressPermissionGroup(Page):
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_permission_group_user.jcloude_permission_group_user import (
|
||||
PressPermissionGroupUser,
|
||||
JcloudePermissionGroupUser,
|
||||
)
|
||||
|
||||
permissions: DF.JSON | None
|
||||
team: DF.Link
|
||||
title: DF.Data
|
||||
users: DF.Table[PressPermissionGroupUser]
|
||||
users: DF.Table[JcloudePermissionGroupUser]
|
||||
# end: auto-generated types
|
||||
|
||||
dashboard_fields: ClassVar = ["title", "users"]
|
||||
|
||||
@ -11,7 +11,7 @@ from jcloude.jcloude.pagetype.jcloude_permission_group.jcloude_permission_group
|
||||
from jcloude.jcloude.pagetype.team.test_team import create_test_team
|
||||
|
||||
|
||||
class TestPressPermissionGroup(JingrowTestCase):
|
||||
class TestJcloudePermissionGroup(JingrowTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressPermissionGroupUser(Page):
|
||||
class JcloudePermissionGroupUser(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ if TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.team.team import Team
|
||||
|
||||
|
||||
class PressRole(Page):
|
||||
class JcloudeRole(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -25,8 +25,8 @@ class PressRole(Page):
|
||||
if TYPE_CHECKING:
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_role_resource.jcloude_role_resource import PressRoleResource
|
||||
from jcloude.jcloude.pagetype.jcloude_role_user.jcloude_role_user import PressRoleUser
|
||||
from jcloude.jcloude.pagetype.jcloude_role_resource.jcloude_role_resource import JcloudeRoleResource
|
||||
from jcloude.jcloude.pagetype.jcloude_role_user.jcloude_role_user import JcloudeRoleUser
|
||||
|
||||
admin_access: DF.Check
|
||||
allow_apps: DF.Check
|
||||
@ -40,10 +40,10 @@ class PressRole(Page):
|
||||
allow_server_creation: DF.Check
|
||||
allow_site_creation: DF.Check
|
||||
allow_webhook_configuration: DF.Check
|
||||
resources: DF.Table[PressRoleResource]
|
||||
resources: DF.Table[JcloudeRoleResource]
|
||||
team: DF.Link
|
||||
title: DF.Data
|
||||
users: DF.Table[PressRoleUser]
|
||||
users: DF.Table[JcloudeRoleUser]
|
||||
# end: auto-generated types
|
||||
|
||||
dashboard_fields = (
|
||||
|
||||
@ -6,5 +6,5 @@ import jingrow
|
||||
|
||||
def execute():
|
||||
jingrow.db.sql(
|
||||
"UPDATE `tabPress Role` SET allow_billing = enable_billing, allow_apps = enable_apps"
|
||||
"UPDATE `tabJcloude Role` SET allow_billing = enable_billing, allow_apps = enable_apps"
|
||||
)
|
||||
|
||||
@ -8,7 +8,7 @@ from jingrow.tests.utils import JingrowTestCase
|
||||
from jcloude.jcloude.pagetype.team.test_team import create_test_team
|
||||
|
||||
|
||||
class TestPressRole(JingrowTestCase):
|
||||
class TestJcloudeRole(JingrowTestCase):
|
||||
def setUp(self):
|
||||
jingrow.set_user("Administrator")
|
||||
jingrow.db.delete("Jcloude Role")
|
||||
|
||||
@ -8,7 +8,7 @@ from jingrow.model.page import Page
|
||||
from jcloude.api.client import dashboard_whitelist
|
||||
|
||||
|
||||
class PressRolePermission(Page):
|
||||
class JcloudeRolePermission(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressRolePermission(JingrowTestCase):
|
||||
class TestJcloudeRolePermission(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressRoleResource(Page):
|
||||
class JcloudeRoleResource(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressRoleUser(Page):
|
||||
class JcloudeRoleUser(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ from jcloude.jcloude.pagetype.telegram_message.telegram_message import TelegramM
|
||||
from jcloude.telegram_utils import Telegram
|
||||
|
||||
|
||||
class PressSettings(Page):
|
||||
class JcloudeSettings(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -7,12 +7,12 @@ import typing
|
||||
import jingrow
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
|
||||
|
||||
def execute():
|
||||
jingrow.reload_pagetype("Jcloude Settings")
|
||||
settings: PressSettings = jingrow.get_single("Jcloude Settings")
|
||||
settings: JcloudeSettings = jingrow.get_single("Jcloude Settings")
|
||||
|
||||
if not settings.minimum_rebuild_memory:
|
||||
settings.minimum_rebuild_memory = 2
|
||||
|
||||
@ -46,5 +46,5 @@ def create_test_jcloude_settings():
|
||||
return settings
|
||||
|
||||
|
||||
class TestPressSettings(JingrowTestCase):
|
||||
class TestJcloudeSettings(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressTag(Page):
|
||||
class JcloudeTag(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -21,5 +21,5 @@ def create_and_add_test_tag(name: str, pagetype: str, tag: str = "test_tag"):
|
||||
return test_tag
|
||||
|
||||
|
||||
class TestPressTag(JingrowTestCase):
|
||||
class TestJcloudeTag(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -8,7 +8,7 @@ from jingrow.model.page import Page
|
||||
ALLOWED_CONFIG_PERMS = ["global", "restricted"]
|
||||
|
||||
|
||||
class PressUserPermission(Page):
|
||||
class JcloudeUserPermission(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@ from jcloude.jcloude.pagetype.site.test_site import create_test_site
|
||||
from jcloude.jcloude.pagetype.team.test_team import create_test_team
|
||||
|
||||
|
||||
class TestPressUserPermission(JingrowTestCase):
|
||||
class TestJcloudeUserPermission(JingrowTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@ from jcloude.overrides import get_permission_query_conditions_for_pagetype
|
||||
from jcloude.utils import is_valid_hostname
|
||||
|
||||
|
||||
class PressWebhook(Page):
|
||||
class JcloudeWebhook(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -30,12 +30,12 @@ class PressWebhook(Page):
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_webhook_selected_event.jcloude_webhook_selected_event import (
|
||||
PressWebhookSelectedEvent,
|
||||
JcloudeWebhookSelectedEvent,
|
||||
)
|
||||
|
||||
enabled: DF.Check
|
||||
endpoint: DF.Data
|
||||
events: DF.Table[PressWebhookSelectedEvent]
|
||||
events: DF.Table[JcloudeWebhookSelectedEvent]
|
||||
secret: DF.Data
|
||||
team: DF.Link
|
||||
# end: auto-generated types
|
||||
@ -164,7 +164,7 @@ class PressWebhook(Page):
|
||||
|
||||
@dashboard_whitelist()
|
||||
def delete(self):
|
||||
jingrow.db.sql("delete from `tabPress Webhook Attempt` where webhook = %s", (self.name,))
|
||||
jingrow.db.sql("delete from `tabJcloude Webhook Attempt` where webhook = %s", (self.name,))
|
||||
jingrow.delete_pg("Jcloude Webhook", self.name)
|
||||
|
||||
|
||||
@ -176,7 +176,7 @@ def auto_disable_high_delivery_failure_webhooks():
|
||||
data = jingrow.db.sql(
|
||||
"""
|
||||
SELECT `endpoint`
|
||||
FROM `tabPress Webhook Attempt`
|
||||
FROM `tabJcloude Webhook Attempt`
|
||||
WHERE `creation` >= NOW() - INTERVAL 1 HOUR
|
||||
GROUP BY `endpoint`
|
||||
HAVING (COUNT(CASE WHEN `status` = 'Failed' THEN 1 END) / COUNT(*)) * 100 > 70;
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressWebhook(JingrowTestCase):
|
||||
class TestJcloudeWebhook(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -7,7 +7,7 @@ import jingrow
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressWebhookAttempt(Page):
|
||||
class JcloudeWebhookAttempt(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressWebhookAttempt(JingrowTestCase):
|
||||
class TestJcloudeWebhookAttempt(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressWebhookEvent(Page):
|
||||
class JcloudeWebhookEvent(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressWebhookEvent(JingrowTestCase):
|
||||
class TestJcloudeWebhookEvent(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -13,7 +13,7 @@ from jingrow.utils import add_to_date, now
|
||||
from jcloude.overrides import get_permission_query_conditions_for_pagetype
|
||||
|
||||
|
||||
class PressWebhookLog(Page):
|
||||
class JcloudeWebhookLog(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
@ -22,9 +22,9 @@ class PressWebhookLog(Page):
|
||||
if TYPE_CHECKING:
|
||||
from jingrow.types import DF
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_webhook_attempt.jcloude_webhook_attempt import PressWebhookAttempt
|
||||
from jcloude.jcloude.pagetype.jcloude_webhook_attempt.jcloude_webhook_attempt import JcloudeWebhookAttempt
|
||||
|
||||
attempts: DF.Table[PressWebhookAttempt]
|
||||
attempts: DF.Table[JcloudeWebhookAttempt]
|
||||
event: DF.Link
|
||||
next_retry_at: DF.Datetime | None
|
||||
request_payload: DF.JSON
|
||||
@ -92,16 +92,16 @@ class PressWebhookLog(Page):
|
||||
|
||||
def _process_webhook_call(self):
|
||||
try:
|
||||
PressWebhookSelectedEvent = jingrow.qb.PageType("Jcloude Webhook Selected Event")
|
||||
PressWebhook = jingrow.qb.PageType("Jcloude Webhook")
|
||||
JcloudeWebhookSelectedEvent = jingrow.qb.PageType("Jcloude Webhook Selected Event")
|
||||
JcloudeWebhook = jingrow.qb.PageType("Jcloude Webhook")
|
||||
query = (
|
||||
jingrow.qb.from_(PressWebhookSelectedEvent)
|
||||
.select(PressWebhook.name, PressWebhook.endpoint, PressWebhook.secret)
|
||||
.left_join(PressWebhook)
|
||||
.on(PressWebhookSelectedEvent.parent == PressWebhook.name)
|
||||
.where(PressWebhookSelectedEvent.event == self.event)
|
||||
.where(PressWebhook.team == self.team)
|
||||
.where(PressWebhook.enabled == 1)
|
||||
jingrow.qb.from_(JcloudeWebhookSelectedEvent)
|
||||
.select(JcloudeWebhook.name, JcloudeWebhook.endpoint, JcloudeWebhook.secret)
|
||||
.left_join(JcloudeWebhook)
|
||||
.on(JcloudeWebhookSelectedEvent.parent == JcloudeWebhook.name)
|
||||
.where(JcloudeWebhookSelectedEvent.event == self.event)
|
||||
.where(JcloudeWebhook.team == self.team)
|
||||
.where(JcloudeWebhook.enabled == 1)
|
||||
)
|
||||
webhooks = query.run(as_dict=True)
|
||||
payload = json.loads(self.request_payload)
|
||||
|
||||
@ -5,5 +5,5 @@
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestPressWebhookLog(JingrowTestCase):
|
||||
class TestJcloudeWebhookLog(JingrowTestCase):
|
||||
pass
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class PressWebhookSelectedEvent(Page):
|
||||
class JcloudeWebhookSelectedEvent(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ if typing.TYPE_CHECKING:
|
||||
from jcloude.jcloude.pagetype.database_server.database_server import DatabaseServer
|
||||
from jcloude.jcloude.pagetype.mariadb_variable.mariadb_variable import MariaDBVariable
|
||||
from jcloude.jcloude.pagetype.nfs_volume_detachment.nfs_volume_detachment import NFSVolumeDetachment
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import PressJob
|
||||
from jcloude.jcloude.pagetype.jcloude_job.jcloude_job import JcloudeJob
|
||||
from jcloude.jcloude.pagetype.release_group.release_group import ReleaseGroup
|
||||
from jcloude.jcloude.pagetype.server_mount.server_mount import ServerMount
|
||||
from jcloude.jcloude.pagetype.server_plan.server_plan import ServerPlan
|
||||
@ -1152,7 +1152,7 @@ class BaseServer(Page, TagHelpers):
|
||||
def create_image(self):
|
||||
self.run_jcloude_job("Create Server Snapshot")
|
||||
|
||||
def run_jcloude_job(self, job_name, arguments=None) -> PressJob:
|
||||
def run_jcloude_job(self, job_name, arguments=None) -> JcloudeJob:
|
||||
if arguments is None:
|
||||
arguments = {}
|
||||
return jingrow.get_pg(
|
||||
|
||||
@ -13,7 +13,7 @@ from time import time
|
||||
import jingrow
|
||||
import pytz
|
||||
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import PressSettings
|
||||
from jcloude.jcloude.pagetype.jcloude_settings.jcloude_settings import JcloudeSettings
|
||||
from jcloude.jcloude.pagetype.remote_file.remote_file import delete_remote_backup_objects
|
||||
from jcloude.jcloude.pagetype.site.site import Literal, Site
|
||||
from jcloude.jcloude.pagetype.site_backup.site_backup import SiteBackup
|
||||
@ -256,7 +256,7 @@ class ScheduledBackupJob:
|
||||
or 6
|
||||
)
|
||||
|
||||
self.offsite_setup = PressSettings.is_offsite_setup()
|
||||
self.offsite_setup = JcloudeSettings.is_offsite_setup()
|
||||
self.server_time = datetime.now()
|
||||
self.sites = Site.get_sites_for_backup(self.interval, backup_type=self.backup_type)
|
||||
if self.backup_type == "Logical":
|
||||
|
||||
@ -383,14 +383,14 @@ class Team(Page):
|
||||
if member_to_remove:
|
||||
self.remove(member_to_remove)
|
||||
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
roles = (
|
||||
jingrow.qb.from_(PressRole)
|
||||
.join(PressRoleUser)
|
||||
.on(PressRole.name == PressRoleUser.parent)
|
||||
.where(PressRoleUser.user == member)
|
||||
.select(PressRole.name)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.join(JcloudeRoleUser)
|
||||
.on(JcloudeRole.name == JcloudeRoleUser.parent)
|
||||
.where(JcloudeRoleUser.user == member)
|
||||
.select(JcloudeRole.name)
|
||||
.run(as_dict=True, pluck="name")
|
||||
)
|
||||
|
||||
@ -839,16 +839,16 @@ class Team(Page):
|
||||
"""
|
||||
Checks if the current user has admin access in the team via roles.
|
||||
"""
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
return (
|
||||
jingrow.qb.from_(PressRoleUser)
|
||||
.left_join(PressRole)
|
||||
.on(PressRole.name == PressRoleUser.parent)
|
||||
.select(Count(PressRoleUser.name).as_("count"))
|
||||
.where(PressRole.team == self.name)
|
||||
.where(PressRoleUser.user == jingrow.session.user)
|
||||
.where(PressRole.admin_access == 1)
|
||||
jingrow.qb.from_(JcloudeRoleUser)
|
||||
.left_join(JcloudeRole)
|
||||
.on(JcloudeRole.name == JcloudeRoleUser.parent)
|
||||
.select(Count(JcloudeRoleUser.name).as_("count"))
|
||||
.where(JcloudeRole.team == self.name)
|
||||
.where(JcloudeRoleUser.user == jingrow.session.user)
|
||||
.where(JcloudeRole.admin_access == 1)
|
||||
.run(as_dict=1)
|
||||
.pop()
|
||||
.get("count", 0)
|
||||
@ -864,16 +864,16 @@ class Team(Page):
|
||||
def invite_team_member(self, email, roles=None):
|
||||
from jingrow.utils.user import is_system_user
|
||||
|
||||
PressRole = jingrow.qb.PageType("Jcloude Role")
|
||||
PressRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
JcloudeRole = jingrow.qb.PageType("Jcloude Role")
|
||||
JcloudeRoleUser = jingrow.qb.PageType("Jcloude Role User")
|
||||
|
||||
has_admin_access = (
|
||||
jingrow.qb.from_(PressRole)
|
||||
.select(PressRole.name)
|
||||
.join(PressRoleUser)
|
||||
.on((PressRole.name == PressRoleUser.parent) & (PressRoleUser.user == jingrow.session.user))
|
||||
.where(PressRole.team == self.name)
|
||||
.where(PressRole.admin_access == 1)
|
||||
jingrow.qb.from_(JcloudeRole)
|
||||
.select(JcloudeRole.name)
|
||||
.join(JcloudeRoleUser)
|
||||
.on((JcloudeRole.name == JcloudeRoleUser.parent) & (JcloudeRoleUser.user == jingrow.session.user))
|
||||
.where(JcloudeRole.team == self.name)
|
||||
.where(JcloudeRole.admin_access == 1)
|
||||
)
|
||||
|
||||
if not is_system_user() and jingrow.session.user != self.user and not has_admin_access.run():
|
||||
|
||||
@ -52,7 +52,7 @@ func logError(format string, args ...interface{}) {
|
||||
// waitForUser pauses execution and waits for user to jcloude Enter
|
||||
// This ensures error messages are visible before program exits
|
||||
func waitForUser() {
|
||||
fmt.Println("\nPress Enter to exit...")
|
||||
fmt.Println("\nJcloude Enter to exit...")
|
||||
fmt.Scanln()
|
||||
}
|
||||
|
||||
|
||||
@ -99,7 +99,7 @@ func (m *Monitor) logFindings() {
|
||||
latest.Disk.WriteLatencyMillis)
|
||||
fmt.Fprintf(m.logFile, " Queue Depth: %.2f\n", latest.Disk.QueueDepth)
|
||||
|
||||
fmt.Fprintf(m.logFile, "\nPSI (Pressure Stall Information):\n")
|
||||
fmt.Fprintf(m.logFile, "\nPSI (Jcloudeure Stall Information):\n")
|
||||
fmt.Fprintf(m.logFile, " I/O: Some=%.2f%% Full=%.2f%%\n",
|
||||
latest.PSI.IO_SomeAvg10, latest.PSI.IO_FullAvg10)
|
||||
fmt.Fprintf(m.logFile, " Memory: Some=%.2f%% Full=%.2f%%\n",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user