add a 'stopped_org_readonly' state for crawls that are running while org is made read-only (#1977)
an org is made read-only while crawls are running: - treat similar to other stopped_* states, do a graceful stop - update UI to display "Stopped: Crawling Disabled" for this status - don't add corresponding skipped status - just skip running crawls if org is read-only
This commit is contained in:
parent
96691a33fa
commit
e9aeff1836
@ -224,6 +224,7 @@ TYPE_SUCCESSFUL_STATES = Literal[
|
||||
"stopped_by_user",
|
||||
"stopped_storage_quota_reached",
|
||||
"stopped_time_quota_reached",
|
||||
"stopped_org_readonly",
|
||||
]
|
||||
SUCCESSFUL_STATES = get_args(TYPE_SUCCESSFUL_STATES)
|
||||
|
||||
|
||||
@ -1242,6 +1242,9 @@ class CrawlOperator(BaseOperator):
|
||||
# gracefully stop crawl if current running crawl sizes reach storage quota
|
||||
org = await self.org_ops.get_org_by_id(crawl.oid)
|
||||
|
||||
if org.readOnly:
|
||||
return "stopped_org_readonly"
|
||||
|
||||
if org.quotas.storageQuota:
|
||||
running_crawls_total_size = status.size
|
||||
for crawl_job in data.related[CJS].values():
|
||||
@ -1366,6 +1369,8 @@ class CrawlOperator(BaseOperator):
|
||||
state = "stopped_storage_quota_reached"
|
||||
elif status.stopReason == "stopped_time_quota_reached":
|
||||
state = "stopped_time_quota_reached"
|
||||
elif status.stopReason == "stopped_org_readonly":
|
||||
state = "stopped_org_readonly"
|
||||
else:
|
||||
state = "complete"
|
||||
|
||||
|
||||
@ -21,6 +21,7 @@ StopReason = Literal[
|
||||
"size-limit",
|
||||
"stopped_storage_quota_reached",
|
||||
"stopped_time_quota_reached",
|
||||
"stopped_org_readonly",
|
||||
]
|
||||
|
||||
|
||||
|
||||
@ -228,6 +228,16 @@ export class CrawlStatus extends TailwindElement {
|
||||
label = msg("Stopped: Time Quota Reached");
|
||||
break;
|
||||
|
||||
case "stopped_org_readonly":
|
||||
color = "var(--warning)";
|
||||
icon = html`<sl-icon
|
||||
name="exclamation-square-fill"
|
||||
slot="prefix"
|
||||
style="color: ${color}"
|
||||
></sl-icon>`;
|
||||
label = msg("Stopped: Crawling Disabled");
|
||||
break;
|
||||
|
||||
case "canceled":
|
||||
color = "var(--sl-color-orange-600)";
|
||||
icon = html`<sl-icon
|
||||
|
||||
@ -139,7 +139,8 @@ export type CrawlState =
|
||||
| "canceled"
|
||||
| "stopped_by_user"
|
||||
| "stopped_storage_quota_reached"
|
||||
| "stopped_time_quota_reached";
|
||||
| "stopped_time_quota_reached"
|
||||
| "stopped_org_readonly";
|
||||
|
||||
// TODO maybe convert this to an enum?
|
||||
export enum ReviewStatus {
|
||||
|
||||
@ -21,6 +21,7 @@ export const finishedCrawlStates: CrawlState[] = [
|
||||
"stopped_by_user",
|
||||
"stopped_storage_quota_reached",
|
||||
"stopped_time_quota_reached",
|
||||
"stopped_org_readonly",
|
||||
];
|
||||
|
||||
export const inactiveCrawlStates: CrawlState[] = [
|
||||
|
||||
Loading…
Reference in New Issue
Block a user