pgbus 0.19.4 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +96 -7
- data/Rakefile +6 -1
- data/app/controllers/pgbus/dashboard_controller.rb +2 -0
- data/app/controllers/pgbus/workflow_definitions_controller.rb +28 -0
- data/app/controllers/pgbus/workflows_controller.rb +197 -0
- data/app/frontend/pgbus/modules/charts.js +130 -4
- data/app/frontend/pgbus/modules/charts.min.js +1 -1
- data/app/frontend/pgbus/modules/charts.min.js.map +1 -1
- data/app/frontend/pgbus/style.css +1 -1
- data/app/helpers/pgbus/button_helper.rb +4 -2
- data/app/helpers/pgbus/workflow_insights_helper.rb +129 -0
- data/app/helpers/pgbus/workflows_helper.rb +165 -0
- data/app/models/pgbus/workflow_entry.rb +172 -0
- data/app/models/pgbus/workflow_event.rb +43 -0
- data/app/models/pgbus/workflow_signal.rb +77 -0
- data/app/models/pgbus/workflow_step.rb +142 -0
- data/app/views/layouts/pgbus/application.html.erb +2 -0
- data/app/views/pgbus/dashboard/_stats_cards.html.erb +17 -0
- data/app/views/pgbus/workflows/_actions.html.erb +59 -0
- data/app/views/pgbus/workflows/_events_table.html.erb +24 -0
- data/app/views/pgbus/workflows/_filters.html.erb +29 -0
- data/app/views/pgbus/workflows/_signal_form.html.erb +31 -0
- data/app/views/pgbus/workflows/_signals_table.html.erb +40 -0
- data/app/views/pgbus/workflows/_status_filter.html.erb +12 -0
- data/app/views/pgbus/workflows/_steps_table.html.erb +79 -0
- data/app/views/pgbus/workflows/_timeline.html.erb +39 -0
- data/app/views/pgbus/workflows/_workflows_table.html.erb +59 -0
- data/app/views/pgbus/workflows/attention.html.erb +88 -0
- data/app/views/pgbus/workflows/definitions/_by_revision.html.erb +52 -0
- data/app/views/pgbus/workflows/definitions/_duration_table.html.erb +18 -0
- data/app/views/pgbus/workflows/definitions/_funnel.html.erb +49 -0
- data/app/views/pgbus/workflows/definitions/_pipeline.html.erb +16 -0
- data/app/views/pgbus/workflows/definitions/_step_card.html.erb +31 -0
- data/app/views/pgbus/workflows/definitions/_throughput_table.html.erb +32 -0
- data/app/views/pgbus/workflows/definitions/_window.html.erb +17 -0
- data/app/views/pgbus/workflows/definitions/index.html.erb +71 -0
- data/app/views/pgbus/workflows/definitions/not_found.html.erb +5 -0
- data/app/views/pgbus/workflows/definitions/show.html.erb +80 -0
- data/app/views/pgbus/workflows/index.html.erb +15 -0
- data/app/views/pgbus/workflows/not_found.html.erb +5 -0
- data/app/views/pgbus/workflows/show.html.erb +93 -0
- data/config/i18n-tasks.yml +6 -0
- data/config/locales/da.yml +442 -0
- data/config/locales/de.yml +442 -0
- data/config/locales/en.yml +442 -0
- data/config/locales/es.yml +442 -0
- data/config/locales/fi.yml +442 -0
- data/config/locales/fr.yml +442 -0
- data/config/locales/it.yml +442 -0
- data/config/locales/ja.yml +442 -0
- data/config/locales/nb.yml +442 -0
- data/config/locales/nl.yml +442 -0
- data/config/locales/pt.yml +442 -0
- data/config/locales/sv.yml +442 -0
- data/config/routes.rb +26 -0
- data/lib/generators/pgbus/add_workflow_signals_generator.rb +56 -0
- data/lib/generators/pgbus/add_workflows_generator.rb +54 -0
- data/lib/generators/pgbus/templates/add_workflow_signals.rb.erb +51 -0
- data/lib/generators/pgbus/templates/add_workflows.rb.erb +150 -0
- data/lib/generators/pgbus/templates/migration.rb.erb +127 -0
- data/lib/pgbus/active_job/delivery.rb +49 -0
- data/lib/pgbus/active_job/executor.rb +3 -1
- data/lib/pgbus/configuration/workflow_settings.rb +99 -0
- data/lib/pgbus/configuration.rb +21 -3
- data/lib/pgbus/generators/migration_detector.rb +40 -0
- data/lib/pgbus/instrumentation.rb +32 -0
- data/lib/pgbus/integrations/appsignal/dashboard.json +128 -1
- data/lib/pgbus/integrations/appsignal/subscriber.rb +16 -1
- data/lib/pgbus/mcp/rack_app.rb +7 -2
- data/lib/pgbus/mcp/runner.rb +2 -1
- data/lib/pgbus/mcp/serialization.rb +25 -0
- data/lib/pgbus/mcp/server.rb +53 -10
- data/lib/pgbus/mcp/tools/deploy_tasks_tool.rb +1 -10
- data/lib/pgbus/mcp/tools/workflow_cancel_tool.rb +23 -0
- data/lib/pgbus/mcp/tools/workflow_definitions_tool.rb +36 -0
- data/lib/pgbus/mcp/tools/workflow_detail_tool.rb +38 -0
- data/lib/pgbus/mcp/tools/workflow_resume_at_tool.rb +32 -0
- data/lib/pgbus/mcp/tools/workflow_resume_tool.rb +24 -0
- data/lib/pgbus/mcp/tools/workflow_run_now_tool.rb +23 -0
- data/lib/pgbus/mcp/tools/workflow_signal_tool.rb +77 -0
- data/lib/pgbus/mcp/tools/workflow_skip_step_tool.rb +23 -0
- data/lib/pgbus/mcp/tools/workflow_stats_tool.rb +42 -0
- data/lib/pgbus/mcp/tools/workflows_attention_tool.rb +42 -0
- data/lib/pgbus/mcp/tools/workflows_tool.rb +60 -0
- data/lib/pgbus/mcp/workflow_insights_payload.rb +15 -0
- data/lib/pgbus/mcp/workflow_payloads.rb +53 -0
- data/lib/pgbus/mcp/write_tool.rb +134 -0
- data/lib/pgbus/mcp.rb +15 -0
- data/lib/pgbus/metrics/backends/statsd.rb +6 -0
- data/lib/pgbus/metrics/subscriber.rb +14 -1
- data/lib/pgbus/metrics/workflow_metrics.rb +65 -0
- data/lib/pgbus/process/dispatcher.rb +26 -0
- data/lib/pgbus/version.rb +1 -1
- data/lib/pgbus/web/data_source/workflow_actions.rb +109 -0
- data/lib/pgbus/web/data_source/workflow_insights.rb +99 -0
- data/lib/pgbus/web/data_source/workflow_list.rb +248 -0
- data/lib/pgbus/web/data_source.rb +3 -0
- data/lib/pgbus/web/workflow_action_plan.rb +62 -0
- data/lib/pgbus/web/workflow_insights_queries.rb +250 -0
- data/lib/pgbus/web/workflow_insights_report.rb +171 -0
- data/lib/pgbus/web/workflow_payload.rb +36 -0
- data/lib/pgbus/web/workflow_query.rb +82 -0
- data/lib/pgbus/web/workflow_state.rb +76 -0
- data/lib/pgbus/web/workflow_timeline.rb +113 -0
- data/lib/pgbus/web/workflow_window.rb +51 -0
- data/lib/pgbus/workflow/batch_finished_job.rb +21 -0
- data/lib/pgbus/workflow/dsl.rb +105 -0
- data/lib/pgbus/workflow/error_capture.rb +63 -0
- data/lib/pgbus/workflow/exception_policy.rb +170 -0
- data/lib/pgbus/workflow/fan_out.rb +157 -0
- data/lib/pgbus/workflow/fan_out_definition.rb +41 -0
- data/lib/pgbus/workflow/flow_control.rb +94 -0
- data/lib/pgbus/workflow/instance.rb +183 -0
- data/lib/pgbus/workflow/outside_verbs.rb +138 -0
- data/lib/pgbus/workflow/payload.rb +53 -0
- data/lib/pgbus/workflow/registry.rb +53 -0
- data/lib/pgbus/workflow/removed_step.rb +14 -0
- data/lib/pgbus/workflow/runner.rb +218 -0
- data/lib/pgbus/workflow/signal_matcher.rb +53 -0
- data/lib/pgbus/workflow/signals.rb +132 -0
- data/lib/pgbus/workflow/states.rb +119 -0
- data/lib/pgbus/workflow/step_context.rb +58 -0
- data/lib/pgbus/workflow/step_definition.rb +131 -0
- data/lib/pgbus/workflow/step_execution.rb +242 -0
- data/lib/pgbus/workflow/step_job.rb +28 -0
- data/lib/pgbus/workflow/step_outcome.rb +151 -0
- data/lib/pgbus/workflow/steps.rb +103 -0
- data/lib/pgbus/workflow/sweep.rb +156 -0
- data/lib/pgbus/workflow/test_helpers.rb +152 -0
- data/lib/pgbus/workflow/wait_timeout.rb +73 -0
- data/lib/pgbus/workflow/waiting.rb +82 -0
- data/lib/pgbus/workflow.rb +183 -0
- data/sig/pgbus/configuration.rbs +22 -0
- metadata +92 -1
data/config/locales/fi.yml
CHANGED
|
@@ -140,6 +140,11 @@ fi:
|
|
|
140
140
|
throughput: Läpäisykyky
|
|
141
141
|
throughput_detail: tehtäviä/min viimeisen %{minutes} min aikana
|
|
142
142
|
throughput_unavailable: vaatii työtilastot (rails g pgbus:add_job_stats)
|
|
143
|
+
workflows: Työnkulut
|
|
144
|
+
workflows_attention:
|
|
145
|
+
one: "%{count} vaatii huomiota"
|
|
146
|
+
other: "%{count} vaatii huomiota"
|
|
147
|
+
workflows_detail: käynnissä (%{paused} keskeytetty)
|
|
143
148
|
verdict:
|
|
144
149
|
links:
|
|
145
150
|
dlq: Dead letterit
|
|
@@ -723,6 +728,7 @@ fi:
|
|
|
723
728
|
processes: Prosessit
|
|
724
729
|
queues: Jonot
|
|
725
730
|
recurring: Toistuva
|
|
731
|
+
workflows: Työnkulut
|
|
726
732
|
return_to_app: Takaisin sovellukseen
|
|
727
733
|
title: Pgbus-hallintapaneeli
|
|
728
734
|
toggle_dark_mode: Vaihda tumma tila
|
|
@@ -1023,3 +1029,439 @@ fi:
|
|
|
1023
1029
|
disabled: Tehtävä poistettu käytöstä
|
|
1024
1030
|
enabled: Tehtävä otettu käyttöön
|
|
1025
1031
|
failed: Tehtävän vaihto epäonnistui
|
|
1032
|
+
workflow_insights:
|
|
1033
|
+
back_to_classes: Kaikki työnkulkuluokat
|
|
1034
|
+
back_to_runs: Kaikki työnkulkujen ajot
|
|
1035
|
+
bad_request: 'Virheellinen pyyntö: %{reason}'
|
|
1036
|
+
capped: 'Rajattu workflow_retention-arvoon (%{retention}): tätä vanhemmat valmistuneet ja perutut ajot poistetaan.'
|
|
1037
|
+
few_samples:
|
|
1038
|
+
one: n=%{count}, vähän näytteitä
|
|
1039
|
+
other: n=%{count}, vähän näytteitä
|
|
1040
|
+
index:
|
|
1041
|
+
description: 'Miten kukin työnkulkuluokka on toiminut %{window}: nyt käynnissä olevat ajot, päättyneet ajot ja kuinka kauan ajo kestää alusta loppuun.'
|
|
1042
|
+
empty_hint: 'Määrittele Pgbus::Workflow-aliluokka ja käynnistä ajo: YourWorkflow.start!(subject, **arguments).'
|
|
1043
|
+
empty_title: Yhtään työnkulkuluokkaa ei ole vielä ajettu.
|
|
1044
|
+
headers:
|
|
1045
|
+
attention: Vaatii toimia
|
|
1046
|
+
cancelled: Peruttu
|
|
1047
|
+
duration_p50: Kesto p50
|
|
1048
|
+
duration_p95: Kesto p95
|
|
1049
|
+
finished: Valmistunut
|
|
1050
|
+
ongoing: Käynnissä
|
|
1051
|
+
paused: Keskeytetty
|
|
1052
|
+
workflow_class: Työnkulkuluokka
|
|
1053
|
+
title: Työnkulkujen näkymä
|
|
1054
|
+
links:
|
|
1055
|
+
at_step: "%{status} ajot vaiheessa %{step}"
|
|
1056
|
+
attention: luokan %{workflow} toimenpiteitä vaativat ajot
|
|
1057
|
+
cancelled: luokan %{workflow} ikkunassa perutut ajot
|
|
1058
|
+
cancelled_bucket: jaksolla perutut ajot
|
|
1059
|
+
finished: luokan %{workflow} ikkunassa valmistuneet ajot
|
|
1060
|
+
finished_bucket: jaksolla valmistuneet ajot
|
|
1061
|
+
ongoing: luokan %{workflow} käynnissä olevat ajot
|
|
1062
|
+
paused: luokan %{workflow} keskeytetyt ajot
|
|
1063
|
+
started: luokan %{workflow} ikkunassa alkaneet ajot
|
|
1064
|
+
started_bucket: jaksolla alkaneet ajot
|
|
1065
|
+
not_found:
|
|
1066
|
+
hint: Pgbus::Workflow-aliluokkaa tai ajoa nimeltä %{workflow} ei ole (tai lukeminen epäonnistui, katso loki).
|
|
1067
|
+
title: Tuntematon työnkulkuluokka
|
|
1068
|
+
not_loaded: Määrittelyä ei ole ladattu
|
|
1069
|
+
not_loaded_hint: 'Luokka ei enää lataudu sovelluksessa: vaiheet tulevat ajojen riveiltä siinä järjestyksessä, jossa ajot saavuttivat ne.'
|
|
1070
|
+
percentile: "%{name} %{value}"
|
|
1071
|
+
removed_in_flight:
|
|
1072
|
+
one: "%{count} ajo poistetussa vaiheessa %{step}"
|
|
1073
|
+
other: "%{count} ajoa poistetussa vaiheessa %{step}"
|
|
1074
|
+
show:
|
|
1075
|
+
by_revision:
|
|
1076
|
+
all_steps: Kaikki vaiheet
|
|
1077
|
+
caption: 'Samat luvut viidelle viimeisimmälle sovellusversiolle, jotka päättivät yrityksen ikkunassa, uusin ensin: heikkeneminen julkaisun jälkeen näkyy rivinä.'
|
|
1078
|
+
empty: Yksikään yritys tässä ikkunassa ei tallentanut sovellusversiota (config.app_revision).
|
|
1079
|
+
headers:
|
|
1080
|
+
attempts: Yritykset
|
|
1081
|
+
failed: Epäonnistui
|
|
1082
|
+
reattempted: Yritetty uudelleen
|
|
1083
|
+
revision: Versio
|
|
1084
|
+
run_time: Ajoaika
|
|
1085
|
+
skipped: Ohitettu
|
|
1086
|
+
step: Vaihe
|
|
1087
|
+
seen_html: nähty %{from} – %{to}
|
|
1088
|
+
title: Sovellusversioittain
|
|
1089
|
+
worse: nousua arvosta %{rate} versiossa %{revision}
|
|
1090
|
+
charts:
|
|
1091
|
+
durations:
|
|
1092
|
+
between: "%{from}–%{to}"
|
|
1093
|
+
caption:
|
|
1094
|
+
one: Kuinka kauan ikkunassa valmistunut %{count} ajo kesti alusta loppuun.
|
|
1095
|
+
other: Kuinka kauan ikkunassa valmistuneet %{count} ajoa kestivät alusta loppuun.
|
|
1096
|
+
headers:
|
|
1097
|
+
range: Kesto
|
|
1098
|
+
runs: Ajot
|
|
1099
|
+
over: "%{from} tai enemmän"
|
|
1100
|
+
title: Kesto alusta loppuun
|
|
1101
|
+
under: alle %{to}
|
|
1102
|
+
series:
|
|
1103
|
+
cancelled: Perutut
|
|
1104
|
+
finished: Valmistuneet
|
|
1105
|
+
runs: Ajot
|
|
1106
|
+
started: Alkaneet
|
|
1107
|
+
throughput:
|
|
1108
|
+
caption: 'Alkaneet, valmistuneet ja perutut ajot jaksoittain (%{bucket}) %{window}: %{started} alkoi, %{finished} valmistui, %{cancelled} peruttiin.'
|
|
1109
|
+
headers:
|
|
1110
|
+
cancelled: Perutut
|
|
1111
|
+
finished: Valmistuneet
|
|
1112
|
+
from: Alkaen
|
|
1113
|
+
started: Alkaneet
|
|
1114
|
+
title: Ajot / %{bucket}
|
|
1115
|
+
description: 'Aikaikkuna %{window}: missä ajot ovat nyt, miten kukin vaihe toimii ja mihin ajot pysähtyvät.'
|
|
1116
|
+
funnel:
|
|
1117
|
+
caption:
|
|
1118
|
+
one: 'Ikkunassa alkaneesta %{count} ajosta: kuinka moni saavutti kunkin vaiheen ja missä se on nyt.'
|
|
1119
|
+
other: 'Ikkunassa alkaneista %{count} ajosta: kuinka moni saavutti kunkin vaiheen ja missä kukin on nyt.'
|
|
1120
|
+
empty: Yksikään ajo ei alkanut tässä ikkunassa.
|
|
1121
|
+
headers:
|
|
1122
|
+
now_here: Nyt tässä vaiheessa
|
|
1123
|
+
reached: Saavuttanut
|
|
1124
|
+
share: Alkaneista
|
|
1125
|
+
step: Vaihe
|
|
1126
|
+
here:
|
|
1127
|
+
cancelled:
|
|
1128
|
+
one: "%{count} peruttu"
|
|
1129
|
+
other: "%{count} peruttu"
|
|
1130
|
+
finished:
|
|
1131
|
+
one: "%{count} valmistunut"
|
|
1132
|
+
other: "%{count} valmistunut"
|
|
1133
|
+
paused:
|
|
1134
|
+
one: "%{count} keskeytetty"
|
|
1135
|
+
other: "%{count} keskeytetty"
|
|
1136
|
+
performing:
|
|
1137
|
+
one: "%{count} käynnissä"
|
|
1138
|
+
other: "%{count} käynnissä"
|
|
1139
|
+
ready:
|
|
1140
|
+
one: "%{count} ajastettu"
|
|
1141
|
+
other: "%{count} ajastettu"
|
|
1142
|
+
waiting:
|
|
1143
|
+
one: "%{count} odottaa"
|
|
1144
|
+
other: "%{count} odottaa"
|
|
1145
|
+
title: Suppilo
|
|
1146
|
+
pipeline:
|
|
1147
|
+
attempts:
|
|
1148
|
+
one: "%{count} yritys"
|
|
1149
|
+
other: "%{count} yritystä"
|
|
1150
|
+
caption: 'Vaiheet järjestyksessä: ajot, jotka ovat vaiheessa nyt, ja miten sen ikkunassa päättyneet yritykset menivät.'
|
|
1151
|
+
empty: 'Ei vielä vaiheita: luokan yhdelläkään ajolla ei ole vaihetta ikkunassa eikä mikään ole käynnissä.'
|
|
1152
|
+
failed: Epäonnistui
|
|
1153
|
+
kinds:
|
|
1154
|
+
fan_out: Fan-out
|
|
1155
|
+
removed: Poistettu
|
|
1156
|
+
signal: Odottaa signaalia
|
|
1157
|
+
undeclared: Ei määrittelyssä
|
|
1158
|
+
live:
|
|
1159
|
+
paused: Keskeytetty
|
|
1160
|
+
performing: Käynnissä
|
|
1161
|
+
ready: Ajastettu
|
|
1162
|
+
waiting: Odottaa
|
|
1163
|
+
now_label: Ajot tässä vaiheessa nyt
|
|
1164
|
+
pickup: Nouto
|
|
1165
|
+
reattempted: Yritetty uudelleen
|
|
1166
|
+
run_time: Ajoaika
|
|
1167
|
+
skipped: Ohitettu
|
|
1168
|
+
step_link: Käynnissä olevat ajot vaiheessa %{step}
|
|
1169
|
+
title: Putki
|
|
1170
|
+
window_label: Ikkunassa päättyneet yritykset
|
|
1171
|
+
summary:
|
|
1172
|
+
attention: Vaatii toimia
|
|
1173
|
+
cancelled: Perutut
|
|
1174
|
+
duration: Kesto p50
|
|
1175
|
+
finished: Valmistuneet
|
|
1176
|
+
ongoing: Käynnissä
|
|
1177
|
+
started: Alkaneet
|
|
1178
|
+
window_label: Aikaikkuna
|
|
1179
|
+
windows:
|
|
1180
|
+
1h: viimeisen tunnin aikana
|
|
1181
|
+
24h: viimeisen 24 tunnin aikana
|
|
1182
|
+
30d: viimeisen 30 päivän aikana
|
|
1183
|
+
7d: viimeisen 7 päivän aikana
|
|
1184
|
+
workflows:
|
|
1185
|
+
actions:
|
|
1186
|
+
bulk_cancel: Peru kaikki
|
|
1187
|
+
bulk_resume: Jatka kaikki
|
|
1188
|
+
cancel: Peru
|
|
1189
|
+
rerun: Uusi
|
|
1190
|
+
resume: Jatka
|
|
1191
|
+
resume_at: Jatka vaiheesta
|
|
1192
|
+
run_now: Aja nyt
|
|
1193
|
+
signal: Lähetä signaali
|
|
1194
|
+
skip_step: Ohita vaihe
|
|
1195
|
+
attempt: yritys %{attempt}
|
|
1196
|
+
attention:
|
|
1197
|
+
at_step_html: vaiheessa %{step}
|
|
1198
|
+
back: "← Työnkulut"
|
|
1199
|
+
cancel_all:
|
|
1200
|
+
one: Peru kaikki %{count}
|
|
1201
|
+
other: Peru kaikki %{count}
|
|
1202
|
+
confirm:
|
|
1203
|
+
cancel:
|
|
1204
|
+
one: Perutaanko vaiheeseen %{step} jumittunut ajo?
|
|
1205
|
+
other: Perutaanko kaikki %{count} vaiheeseen %{step} jumittunutta ajoa?
|
|
1206
|
+
cancel_error:
|
|
1207
|
+
one: 'Perutaanko vaiheeseen %{step} jumittunut ajo (virhe: %{error})?'
|
|
1208
|
+
other: 'Perutaanko kaikki %{count} vaiheeseen %{step} jumittunutta ajoa (virhe: %{error})?'
|
|
1209
|
+
resume:
|
|
1210
|
+
one: Jatketaanko vaiheessa %{step} keskeytettyä ajoa?
|
|
1211
|
+
other: Jatketaanko kaikkia %{count} vaiheessa %{step} keskeytettyä ajoa?
|
|
1212
|
+
resume_error:
|
|
1213
|
+
one: 'Jatketaanko vaiheessa %{step} keskeytettyä ajoa (virhe: %{error})?'
|
|
1214
|
+
other: 'Jatketaanko kaikkia %{count} vaiheessa %{step} keskeytettyä ajoa (virhe: %{error})?'
|
|
1215
|
+
description: Käynnissä olevat ajot, jotka odottavat ihmistä, ryhmiteltynä pysähtymisen syyn mukaan. Kun syy on korjattu, käsittele koko ryhmä kerralla.
|
|
1216
|
+
empty_hint: Yksikään käynnissä oleva ajo ei ole keskeytetty, jumissa, myöhässä tai odota yli rajan workflow_waiting_visibility_threshold.
|
|
1217
|
+
empty_title: Mikään ei vaadi huomiota.
|
|
1218
|
+
first_seen_html: ensimmäinen %{time}
|
|
1219
|
+
headers:
|
|
1220
|
+
actions: Toiminnot
|
|
1221
|
+
reason: Syy
|
|
1222
|
+
runs: Ajot
|
|
1223
|
+
seen: Nähty
|
|
1224
|
+
workflow: Työnkulku
|
|
1225
|
+
last_seen_html: viimeisin %{time}
|
|
1226
|
+
only_class_html: Vain %{workflow}.
|
|
1227
|
+
reasons:
|
|
1228
|
+
overdue: 'Myöhässä: erääntynyt, mutta ei otettu'
|
|
1229
|
+
paused_error: Keskeytetty virheen vuoksi
|
|
1230
|
+
paused_manual: Keskeytetty käsin
|
|
1231
|
+
stalled: 'Jumissa: sen worker lakkasi vastaamasta'
|
|
1232
|
+
waiting_overdue: Odottaa liian kauan
|
|
1233
|
+
resume_all:
|
|
1234
|
+
one: Jatka kaikki %{count}
|
|
1235
|
+
other: Jatka kaikki %{count}
|
|
1236
|
+
show_all: Näytä kaikki luokat
|
|
1237
|
+
show_runs: Näytä ajot
|
|
1238
|
+
title: Vaatii huomiota
|
|
1239
|
+
audit:
|
|
1240
|
+
by: "%{event}, tekijä %{actor}"
|
|
1241
|
+
empty: Ei tallennettuja tapahtumia.
|
|
1242
|
+
headers:
|
|
1243
|
+
what: Mitä tapahtui
|
|
1244
|
+
when: Milloin
|
|
1245
|
+
title: Auditointiloki
|
|
1246
|
+
with_reason: "%{sentence}: %{reason}"
|
|
1247
|
+
with_step: "%{sentence} (%{step} #%{attempt})"
|
|
1248
|
+
bad_request: 'Virheellinen pyyntö: %{reason}'
|
|
1249
|
+
confirm:
|
|
1250
|
+
cancel: Perutaanko tämä työnkulku? Sen avoimet vaiheet perutaan, eikä se aja enää uudelleen.
|
|
1251
|
+
rerun: Käynnistetäänkö tämä työnkulku uudelleen uutena ajona samalla kohteella ja samoilla argumenteilla?
|
|
1252
|
+
resume: Jatketaanko tätä työnkulkua?
|
|
1253
|
+
resume_at: Jatketaanko tätä työnkulkua valitusta vaiheesta? Sen avoimet vaiheet perutaan ensin.
|
|
1254
|
+
run_now: Ajetaanko ajastettu vaihe nyt odottamatta?
|
|
1255
|
+
signal: Lähetetäänkö tämä signaali työnkulkuun?
|
|
1256
|
+
skip_step: Ohitetaanko vaihe, jota tämä työnkulku odottaa, ja siirrytäänkö seuraavaan?
|
|
1257
|
+
events:
|
|
1258
|
+
cancelled: Peruttu
|
|
1259
|
+
fan_out_finished: Fan-out päättynyt
|
|
1260
|
+
fan_out_opened: Fan-out avattu
|
|
1261
|
+
finished: Päättynyt
|
|
1262
|
+
late_completion_ignored: Myöhäinen valmistuminen ohitettu
|
|
1263
|
+
paused: Keskeytetty
|
|
1264
|
+
rerun: Uusittu
|
|
1265
|
+
rescheduled: Ajastettu uudelleen
|
|
1266
|
+
resumed: Jatkettu
|
|
1267
|
+
run_now: Aja nyt
|
|
1268
|
+
signal_claimed: Signaali varattu
|
|
1269
|
+
signal_received: Signaali vastaanotettu
|
|
1270
|
+
stall_detected: Jumiutuminen havaittu
|
|
1271
|
+
started: Aloitettu
|
|
1272
|
+
step_completed: Vaihe valmis
|
|
1273
|
+
step_failed: Vaihe epäonnistui
|
|
1274
|
+
step_reattempted: Vaihe yritetty uudelleen
|
|
1275
|
+
step_scheduled: Vaihe ajastettu
|
|
1276
|
+
step_skipped: Vaihe ohitettu
|
|
1277
|
+
step_started: Vaihe aloitettu
|
|
1278
|
+
step_waiting: Vaihe odottaa
|
|
1279
|
+
wait_timed_out: Odotus aikakatkaistu
|
|
1280
|
+
filters:
|
|
1281
|
+
apply: Käytä suodattimia
|
|
1282
|
+
clear: Tyhjennä
|
|
1283
|
+
created_from: Luotu alkaen
|
|
1284
|
+
created_to: Luotu asti
|
|
1285
|
+
ended_from: Päättynyt alkaen
|
|
1286
|
+
ended_to: Päättynyt asti
|
|
1287
|
+
error_class: Virheluokka
|
|
1288
|
+
step: Nykyinen vaihe
|
|
1289
|
+
subject_id: Kohteen ID
|
|
1290
|
+
subject_type: Kohteen tyyppi
|
|
1291
|
+
workflow_class: Työnkulun luokka
|
|
1292
|
+
workflow_id: Työnkulun ID
|
|
1293
|
+
flash:
|
|
1294
|
+
bad_group: Ryhmä ei kelpaa.
|
|
1295
|
+
bulk_cancel:
|
|
1296
|
+
one: Peruttiin %{count}.
|
|
1297
|
+
other: Peruttiin %{count}.
|
|
1298
|
+
bulk_cancel_skipped: Peruttiin %{count}; %{skipped} oli jo edennyt.
|
|
1299
|
+
bulk_failed: "%{count} ei voitu muuttaa: %{reason}"
|
|
1300
|
+
bulk_more: 'Ajoja voi olla vielä jäljellä: paina uudelleen seuraavat %{cap} varten.'
|
|
1301
|
+
bulk_resume:
|
|
1302
|
+
one: Jatkettiin %{count}.
|
|
1303
|
+
other: Jatkettiin %{count}.
|
|
1304
|
+
bulk_resume_skipped: Jatkettiin %{count}; %{skipped} oli jo edennyt.
|
|
1305
|
+
cancel: Työnkulku peruttu.
|
|
1306
|
+
choose_step: Valitse vaihe, josta jatketaan.
|
|
1307
|
+
failed:
|
|
1308
|
+
not_allowed: 'Ei tehty: ajon tila on nyt %{status}.'
|
|
1309
|
+
not_found: Työnkulkua ei enää ole.
|
|
1310
|
+
other: "%{action} epäonnistui: %{reason}"
|
|
1311
|
+
payload_not_object: 'Ei lähetetty: payload ei ole JSON-objekti.'
|
|
1312
|
+
payload_too_large: 'Ei lähetetty: payload ylittää %{limit} tavua.'
|
|
1313
|
+
rerun: Uusi ajo käynnistetty.
|
|
1314
|
+
resume: Työnkulkua jatkettu.
|
|
1315
|
+
resume_at: Työnkulkua jatkettu vaiheesta %{step}.
|
|
1316
|
+
run_now: Ajastettu vaihe ajetaan nyt.
|
|
1317
|
+
signal: Signaali %{name} lähetetty.
|
|
1318
|
+
signal_duplicate: Signaali %{name} oli jo toimitettu tällä avaimella; mitään uutta ei lähetetty.
|
|
1319
|
+
signal_name_missing: 'Ei lähetetty: signaali tarvitsee nimen.'
|
|
1320
|
+
skip_step: Vaihe ohitettu.
|
|
1321
|
+
headers:
|
|
1322
|
+
current_step: Nykyinen vaihe
|
|
1323
|
+
last_activity: Viimeisin toiminta
|
|
1324
|
+
started: Aloitettu
|
|
1325
|
+
status: Tila
|
|
1326
|
+
subject: Kohde
|
|
1327
|
+
workflow: Työnkulku
|
|
1328
|
+
index:
|
|
1329
|
+
attention_link:
|
|
1330
|
+
one: Vaatii huomiota (%{count})
|
|
1331
|
+
other: Vaatii huomiota (%{count})
|
|
1332
|
+
description: 'Pitkäkestoiset monivaiheiset ajot: mitä kukin tekee ja mitä seuraavaksi tapahtuu.'
|
|
1333
|
+
empty_hint: Valitse toinen tila tai tyhjennä suodattimet. Ajo alkaa komennolla YourWorkflow.start!(subject, **arguments).
|
|
1334
|
+
empty_title: Ei työnkulkuja.
|
|
1335
|
+
insights_link: Näkymä luokittain
|
|
1336
|
+
status_label: Suodata tilan mukaan
|
|
1337
|
+
title: Työnkulut
|
|
1338
|
+
next:
|
|
1339
|
+
cancelled_html: Peruttu %{ago}.
|
|
1340
|
+
due_html: 'Valmiina: %{step} erääntyi %{ago} ja odottaa workeria.'
|
|
1341
|
+
finished_html: Päättyi %{ago}.
|
|
1342
|
+
overdue_html: 'Myöhässä: %{step} erääntyi %{ago}; siivous lähettää sen uudelleen.'
|
|
1343
|
+
paused_error_html: 'Keskeytetty vaiheessa %{step}: %{error} — jatka tai peru.'
|
|
1344
|
+
paused_manual_html: Keskeytetty vaiheessa %{step} — jatka tai peru.
|
|
1345
|
+
performing_attempt_html: Suoritetaan vaihetta %{step} (yritys %{attempt}).
|
|
1346
|
+
performing_html: Suoritetaan vaihetta %{step}.
|
|
1347
|
+
ready_html: 'Valmiina: %{step} ajetaan seuraavaksi.'
|
|
1348
|
+
scheduled_html: 'Ajastettu: %{step} ajetaan %{time}.'
|
|
1349
|
+
unknown_html: 'Tila: %{status}.'
|
|
1350
|
+
waiting_batch_html: Odottaa erää %{batch} (%{done} / %{total} tehtävää valmis).
|
|
1351
|
+
waiting_signal_html: Odottaa signaalia %{signal}, alkoi %{ago}.
|
|
1352
|
+
waiting_signal_timeout_html: Odottaa signaalia %{signal}, alkoi %{ago}. Odotus aikakatkaistaan %{time}.
|
|
1353
|
+
waiting_step_html: Odottaa vaihetta %{step}.
|
|
1354
|
+
not_found:
|
|
1355
|
+
hint: Se on ehkä päättynyt ja poistettu workflow_retentionin jälkeen, tai tietokantaa ei voitu lukea (katso loki).
|
|
1356
|
+
title: Työnkulkua ei löytynyt
|
|
1357
|
+
outcomes:
|
|
1358
|
+
cancelled: peruttu
|
|
1359
|
+
completed: valmistui
|
|
1360
|
+
finished_early: päätti ajon etuajassa
|
|
1361
|
+
paused: keskeytti ajon
|
|
1362
|
+
reattempted: yritetty uudelleen
|
|
1363
|
+
skipped: ohitettu
|
|
1364
|
+
resume:
|
|
1365
|
+
carry_on: 'Jatka: etene vaiheeseen %{step}'
|
|
1366
|
+
continue: 'Jatka: siirry vaiheeseen %{step}'
|
|
1367
|
+
finish: 'Jatka: päätä ajo'
|
|
1368
|
+
resend: 'Jatka: lähetä %{step} uudelleen'
|
|
1369
|
+
retry: 'Jatka: yritä vaihetta %{step} uudelleen'
|
|
1370
|
+
rewait: 'Jatka: odota vaihetta %{step} uudelleen'
|
|
1371
|
+
show:
|
|
1372
|
+
actions: Toiminnot
|
|
1373
|
+
arguments: Argumentit
|
|
1374
|
+
back: "← Työnkulut"
|
|
1375
|
+
cancelled_at: Peruttu
|
|
1376
|
+
class_missing: "%{workflow_class} ei ole ladattuna tässä prosessissa: ajon voi yhä perua, mutta ei jatkaa."
|
|
1377
|
+
definition_outdated: 'Tämä ajo alkoi luokan %{workflow_class} vanhemmalla määrityksellä: sen vaiheet ovat muuttuneet ajon alun jälkeen.'
|
|
1378
|
+
details: Tiedot
|
|
1379
|
+
finished_at: Päättynyt
|
|
1380
|
+
no_arguments: Tällä ajolla ei ole argumentteja.
|
|
1381
|
+
paused_at: Keskeytetty
|
|
1382
|
+
reason_hint: Tallennetaan auditointilokiin tekijän viereen.
|
|
1383
|
+
reason_label: Syy (valinnainen)
|
|
1384
|
+
rerun_of: Uusinta ajosta
|
|
1385
|
+
reruns: Uusittu ajona
|
|
1386
|
+
resume_at_label: Jatka vaiheesta
|
|
1387
|
+
signal:
|
|
1388
|
+
hint: Sitä odottava vaihe herää heti; muuten signaali odottaa, kunnes jokin vaihe ottaa sen.
|
|
1389
|
+
name: Signaalin nimi
|
|
1390
|
+
payload: Payload (JSON)
|
|
1391
|
+
send: Lähetä signaali
|
|
1392
|
+
title: Lähetä signaali
|
|
1393
|
+
signal_statuses:
|
|
1394
|
+
claimed: Varattu
|
|
1395
|
+
consumed: Käsitelty
|
|
1396
|
+
pending: Odottaa
|
|
1397
|
+
signals:
|
|
1398
|
+
empty: Tälle ajolle ei ole toimitettu signaaleja.
|
|
1399
|
+
headers:
|
|
1400
|
+
claimed: Varattu
|
|
1401
|
+
consumed: Käsitelty
|
|
1402
|
+
idempotency_key: Idempotenssiavain
|
|
1403
|
+
name: Signaali
|
|
1404
|
+
received: Vastaanotettu
|
|
1405
|
+
status: Tila
|
|
1406
|
+
payload: Payload
|
|
1407
|
+
title: Signaalit
|
|
1408
|
+
statuses:
|
|
1409
|
+
cancelled: Peruttu
|
|
1410
|
+
finished: Päättynyt
|
|
1411
|
+
gone: poistunut
|
|
1412
|
+
paused: Keskeytetty
|
|
1413
|
+
performing: Suoritetaan
|
|
1414
|
+
ready: Valmiina
|
|
1415
|
+
scheduled: Ajastettu
|
|
1416
|
+
waiting: Odottaa
|
|
1417
|
+
step_statuses:
|
|
1418
|
+
cancelled: Peruttu
|
|
1419
|
+
completed: Valmis
|
|
1420
|
+
failed: Epäonnistui
|
|
1421
|
+
in_progress: Käynnissä
|
|
1422
|
+
scheduled: Ajastettu
|
|
1423
|
+
skipped: Ohitettu
|
|
1424
|
+
waiting: Odottaa
|
|
1425
|
+
steps:
|
|
1426
|
+
batch: erä %{batch}
|
|
1427
|
+
caused_by: 'Aiheuttaja: %{error}'
|
|
1428
|
+
empty: Ei vielä yrityksiä.
|
|
1429
|
+
headers:
|
|
1430
|
+
finished: Päättynyt
|
|
1431
|
+
queued: Jonossa
|
|
1432
|
+
ran: Ajettu
|
|
1433
|
+
scheduled: Ajastettu
|
|
1434
|
+
started: Aloitettu
|
|
1435
|
+
status: Tila
|
|
1436
|
+
step: Vaihe
|
|
1437
|
+
waited: Odotettu
|
|
1438
|
+
worker: Worker
|
|
1439
|
+
revision: versio %{revision}
|
|
1440
|
+
show_backtrace: Näytä backtrace
|
|
1441
|
+
title: Yritykset
|
|
1442
|
+
waiting_for: sen jälkeen odotus %{duration}
|
|
1443
|
+
waits_for_html: odottaa signaalia %{signal}
|
|
1444
|
+
tabs:
|
|
1445
|
+
all: Kaikki
|
|
1446
|
+
cancelled: Peruttu
|
|
1447
|
+
finished: Päättynyt
|
|
1448
|
+
ongoing: Käynnissä
|
|
1449
|
+
paused: Keskeytetty
|
|
1450
|
+
performing: Suoritetaan
|
|
1451
|
+
ready: Valmiina
|
|
1452
|
+
waiting: Odottaa
|
|
1453
|
+
timeline:
|
|
1454
|
+
caption: 'Jokainen yritys, vanhin ylimpänä: odotettu (sen odotus), jonossa (erääntynyt, ei vielä otettu), ajettu (väri kertoo lopputuloksen) ja odottaa (signaalia tai erää), keskeytykset omalla rivillään. Alla oleva yritystaulukko listaa samat kestot.'
|
|
1455
|
+
empty: Ei vielä yrityksiä.
|
|
1456
|
+
paused_period_html: Keskeytetty %{from} ajaksi %{duration}
|
|
1457
|
+
paused_row: Keskeytetty
|
|
1458
|
+
series:
|
|
1459
|
+
paused: Keskeytetty
|
|
1460
|
+
queued: Jonossa
|
|
1461
|
+
ran_cancelled: Ajettu, peruttu
|
|
1462
|
+
ran_failed: Ajettu, epäonnistui
|
|
1463
|
+
ran_ok: Ajettu
|
|
1464
|
+
ran_open: Käynnissä
|
|
1465
|
+
waited: Odotettu
|
|
1466
|
+
waiting: Odottaa
|
|
1467
|
+
title: Aikajana
|