pgbus 0.19.0 → 0.19.2

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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +329 -147
  3. data/README.md +65 -27
  4. data/app/controllers/pgbus/deploy_tasks_controller.rb +38 -0
  5. data/app/helpers/pgbus/deploy_tasks_helper.rb +77 -0
  6. data/app/helpers/pgbus/processes_helper.rb +1 -1
  7. data/app/models/pgbus/deploy_task.rb +104 -0
  8. data/app/models/pgbus/deploy_task_run.rb +45 -0
  9. data/app/views/layouts/pgbus/application.html.erb +2 -0
  10. data/app/views/pgbus/deploy_tasks/_rollover_banner.html.erb +25 -0
  11. data/app/views/pgbus/deploy_tasks/_tasks_table.html.erb +71 -0
  12. data/app/views/pgbus/deploy_tasks/index.html.erb +6 -0
  13. data/app/views/pgbus/deploy_tasks/show.html.erb +134 -0
  14. data/config/i18n-tasks.yml +2 -0
  15. data/config/locales/da.yml +97 -0
  16. data/config/locales/de.yml +97 -0
  17. data/config/locales/en.yml +98 -1
  18. data/config/locales/es.yml +97 -0
  19. data/config/locales/fi.yml +97 -0
  20. data/config/locales/fr.yml +97 -0
  21. data/config/locales/it.yml +97 -0
  22. data/config/locales/ja.yml +97 -0
  23. data/config/locales/nb.yml +97 -0
  24. data/config/locales/nl.yml +97 -0
  25. data/config/locales/pt.yml +97 -0
  26. data/config/locales/sv.yml +97 -0
  27. data/config/routes.rb +7 -0
  28. data/lib/generators/pgbus/add_batch_callback_jobs_generator.rb +4 -1
  29. data/lib/generators/pgbus/add_deploy_tasks_generator.rb +51 -0
  30. data/lib/generators/pgbus/templates/add_deploy_tasks_tables.rb.erb +43 -0
  31. data/lib/generators/pgbus/templates/deploy_tasks.yml.erb +42 -0
  32. data/lib/generators/pgbus/templates/migration.rb.erb +43 -0
  33. data/lib/pgbus/active_job/batch_id.rb +10 -4
  34. data/lib/pgbus/batch/builder.rb +92 -0
  35. data/lib/pgbus/batch.rb +97 -22
  36. data/lib/pgbus/configuration/deploy_settings.rb +46 -0
  37. data/lib/pgbus/configuration.rb +3 -0
  38. data/lib/pgbus/deploy/revision.rb +59 -0
  39. data/lib/pgbus/deploy/rollover.rb +65 -0
  40. data/lib/pgbus/deploy/runner.rb +259 -0
  41. data/lib/pgbus/deploy/task.rb +105 -0
  42. data/lib/pgbus/engine.rb +17 -0
  43. data/lib/pgbus/generators/migration_detector.rb +12 -1
  44. data/lib/pgbus/instrumentation.rb +14 -0
  45. data/lib/pgbus/integrations/appsignal/subscriber.rb +15 -0
  46. data/lib/pgbus/mcp/server.rb +2 -1
  47. data/lib/pgbus/mcp/tools/deploy_tasks_tool.rb +86 -0
  48. data/lib/pgbus/mcp.rb +1 -0
  49. data/lib/pgbus/metrics/subscriber.rb +12 -0
  50. data/lib/pgbus/outbox/poller.rb +1 -0
  51. data/lib/pgbus/process/consumer.rb +57 -3
  52. data/lib/pgbus/process/dispatcher.rb +18 -1
  53. data/lib/pgbus/process/heartbeat.rb +7 -2
  54. data/lib/pgbus/process/supervisor.rb +35 -3
  55. data/lib/pgbus/process/worker.rb +1 -0
  56. data/lib/pgbus/recurring/scheduler.rb +54 -20
  57. data/lib/pgbus/version.rb +1 -1
  58. data/lib/pgbus/web/data_source/deploy_task_list.rb +114 -0
  59. data/lib/pgbus/web/data_source/list_counts.rb +2 -1
  60. data/lib/pgbus/web/data_source.rb +1 -0
  61. data/lib/pgbus/web/deploy_task_state.rb +51 -0
  62. data/lib/pgbus.rb +11 -0
  63. data/sig/pgbus/configuration.rbs +10 -0
  64. data/sig/pgbus.rbs +9 -0
  65. metadata +21 -1
@@ -236,6 +236,102 @@ fi:
236
236
  payload: Kuorma
237
237
  retry: Yritä uudelleen
238
238
  title: 'DLQ-viesti #%{id}'
239
+ deploy_tasks:
240
+ banner:
241
+ heading: Käyttöönotto
242
+ lagging_html:
243
+ one: 'Odotetaan käyttöönottoa: 1 prosessi ei vielä aja versiota <code>%{revision}</code>.'
244
+ other: 'Odotetaan käyttöönottoa: %{count} prosessia ei vielä aja versiota <code>%{revision}</code>.'
245
+ lagging_more: "…ja %{count} muuta"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid} versiossa %{revision}"
247
+ live_count: "%{count} versiossa %{revision}"
248
+ live_heading: 'Elävät prosessit:'
249
+ no_revision_hint_html: Aseta <code>config.app_revision</code>, tai jokin muuttujista <code>PGBUS_REVISION</code>, <code>DASH_VERSION</code> tai <code>KAMAL_VERSION</code>, tai toimita <code>REVISION</code>-tiedosto. Suorita nyt toimii edelleen.
250
+ no_revision_html: 'Sovelluksen versiota ei ole määritetty: deploy-tehtävät odottavat, kunnes se on.'
251
+ no_revision_label: ei versiota
252
+ no_scheduler_html: 'Ajastinta ei ole käynnissä: deploy-tehtävät käynnistyvät vain ajastimesta. Arvio käyttää hallintapaneelin omaa versiota.'
253
+ no_workers_html: 'Odotetaan käyttöönottoa: versiossa <code>%{revision}</code> ei ole vielä workeria.'
254
+ ready_html: 'Käyttöönotto valmis: jokainen elävä prosessi ajaa versiota <code>%{revision}</code>. Odottavat tehtävät ajetaan ajastimen seuraavalla kierroksella.'
255
+ unavailable_html: Käyttöönoton tilaa ei voitu lukea.
256
+ default_queue: default
257
+ disable: Poista käytöstä
258
+ enable: Ota käyttöön
259
+ enqueue:
260
+ enqueued: Deploy-tehtävä lisätty jonoon
261
+ failed: 'Deploy-tehtävää ei lisätty jonoon: syy löytyy lokista'
262
+ every_deploy: Jokaisessa deployssa
263
+ index:
264
+ task_count:
265
+ one: "%{count} tehtävä määritelty"
266
+ other: "%{count} tehtävää määritelty"
267
+ title: Deploy-tehtävät
268
+ not_found: Deploy-tehtävää ei löytynyt
269
+ reasons:
270
+ disabled_armed_html: 'Poistettu käytöstä, käyttöönottoajo odottaa: ota se käyttöön, jotta se ajetaan.'
271
+ disabled_html: 'Poistettu käytöstä: ajastin ohittaa sen.'
272
+ due_html: 'Valmis: ajetaan ajastimen seuraavalla kierroksella.'
273
+ manual_html: "· ajettu %{ago} (manuaalisesti)"
274
+ never_html: Ei koskaan ajettu käyttöönoton jälkeen.
275
+ ran_html: Ajettu %{ago} versiossa <code>%{revision}</code> (käyttöönotto).
276
+ waiting_lagging_html:
277
+ one: 'Odotetaan käyttöönottoa: 1 prosessi ei vielä aja versiota <code>%{revision}</code>.'
278
+ other: 'Odotetaan käyttöönottoa: %{count} prosessia ei vielä aja versiota <code>%{revision}</code>.'
279
+ waiting_no_revision_html: 'Odottaa: sovelluksen versiota ei ole määritetty.'
280
+ waiting_no_scheduler_html: 'Odottaa: ajastinta ei ole käynnissä.'
281
+ waiting_no_workers_html: Odottaa workeria versiossa <code>%{revision}</code>.
282
+ waiting_unknown_html: 'Odottaa: käyttöönoton tilaa ei voitu lukea.'
283
+ run_now: Suorita nyt
284
+ show:
285
+ armed_html: "%{armed_for}, valmisteltu %{ago}"
286
+ back: Takaisin
287
+ configuration: Asetukset
288
+ labels:
289
+ arguments: Argumentit
290
+ armed: Odottava ajo
291
+ command: Komento
292
+ description: Kuvaus
293
+ job_class: Työluokka
294
+ priority: Prioriteetti
295
+ queue: Jono
296
+ source: Lähde
297
+ last_run: Viimeisin ajo
298
+ no_runs: Ajoja ei ole vielä kirjattu
299
+ recent_runs: Viimeisimmät ajot
300
+ run_headers:
301
+ enqueued_at: Lisätty jonoon
302
+ queue: Jono
303
+ revision: Versio
304
+ triggered_by: Käynnistäjä
305
+ version: Versio
306
+ source_config: Asetustiedosto
307
+ source_dynamic: Dynaaminen
308
+ state: Tila
309
+ version: Versio
310
+ states:
311
+ disabled: Pois käytöstä
312
+ due: Valmis
313
+ never: Ei koskaan ajettu
314
+ ran: Ajettu
315
+ waiting: Odottaa
316
+ tasks_table:
317
+ empty_hint_html: Määrittele kertaluonteiset tehtävät tiedostossa <code>config/deploy_tasks.yml</code>; <code>rails generate pgbus:add_deploy_tasks</code> luo aloitustiedoston.
318
+ empty_title: Deploy-tehtäviä ei ole määritelty
319
+ headers:
320
+ actions: Toiminnot
321
+ last_run: Viimeisin ajo
322
+ queue: Jono
323
+ state: Tila
324
+ task: Tehtävä
325
+ version: Versio
326
+ never: Ei koskaan
327
+ toggle:
328
+ disabled: Deploy-tehtävä poistettu käytöstä
329
+ enabled: Deploy-tehtävä otettu käyttöön
330
+ failed: Deploy-tehtävän vaihto epäonnistui
331
+ triggered_by:
332
+ manual: Manuaalinen
333
+ rollover: Käyttöönotto
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: Peruuta
241
337
  confirm: Vahvista
@@ -617,6 +713,7 @@ fi:
617
713
  nav:
618
714
  batches: Erät
619
715
  dashboard: Hallintapaneeli
716
+ deploy_tasks: Deploy
620
717
  dlq: DLQ
621
718
  events: Tapahtumat
622
719
  insights: Oivallukset
@@ -236,6 +236,102 @@ fr:
236
236
  payload: Charge utile
237
237
  retry: Réessayer
238
238
  title: Message DLQ n°%{id}
239
+ deploy_tasks:
240
+ banner:
241
+ heading: Bascule
242
+ lagging_html:
243
+ one: 'En attente de bascule : 1 processus n''exécute pas encore <code>%{revision}</code>.'
244
+ other: 'En attente de bascule : %{count} processus n''exécutent pas encore <code>%{revision}</code>.'
245
+ lagging_more: "…et %{count} de plus"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid} sur %{revision}"
247
+ live_count: "%{count} sur %{revision}"
248
+ live_heading: 'Processus actifs :'
249
+ no_revision_hint_html: Définissez <code>config.app_revision</code>, ou l'une de <code>PGBUS_REVISION</code>, <code>DASH_VERSION</code> ou <code>KAMAL_VERSION</code>, ou livrez un fichier <code>REVISION</code>. Exécuter maintenant fonctionne toujours.
250
+ no_revision_html: 'Révision de l''application non configurée : les tâches de déploiement attendent qu''elle le soit.'
251
+ no_revision_label: aucune révision
252
+ no_scheduler_html: 'Aucun planificateur ne tourne : les tâches de déploiement ne sont lancées que par le planificateur. Ce verdict utilise la révision du tableau de bord.'
253
+ no_workers_html: 'En attente de bascule : aucun worker sur <code>%{revision}</code> pour l''instant.'
254
+ ready_html: 'Bascule terminée : chaque processus actif exécute <code>%{revision}</code>. Les tâches armées s''exécutent au prochain tick du planificateur.'
255
+ unavailable_html: L'état de la bascule n'a pas pu être lu.
256
+ default_queue: default
257
+ disable: Désactiver
258
+ enable: Activer
259
+ enqueue:
260
+ enqueued: Tâche de déploiement mise en file
261
+ failed: 'La tâche de déploiement n''a pas été mise en file : consultez le journal pour la raison'
262
+ every_deploy: À chaque déploiement
263
+ index:
264
+ task_count:
265
+ one: "%{count} tâche déclarée"
266
+ other: "%{count} tâches déclarées"
267
+ title: Tâches de déploiement
268
+ not_found: Tâche de déploiement introuvable
269
+ reasons:
270
+ disabled_armed_html: 'Désactivée avec une exécution de bascule en attente : activez-la pour la laisser s''exécuter.'
271
+ disabled_html: 'Désactivée : le planificateur l''ignore.'
272
+ due_html: 'Prête : s''exécute au prochain tick du planificateur.'
273
+ manual_html: "· exécutée %{ago} (manuel)"
274
+ never_html: Jamais exécutée après une bascule.
275
+ ran_html: Exécutée %{ago} sur <code>%{revision}</code> (bascule).
276
+ waiting_lagging_html:
277
+ one: 'En attente de bascule : 1 processus n''exécute pas encore <code>%{revision}</code>.'
278
+ other: 'En attente de bascule : %{count} processus n''exécutent pas encore <code>%{revision}</code>.'
279
+ waiting_no_revision_html: 'En attente : la révision de l''application n''est pas configurée.'
280
+ waiting_no_scheduler_html: 'En attente : aucun planificateur ne tourne.'
281
+ waiting_no_workers_html: En attente d'un worker sur <code>%{revision}</code>.
282
+ waiting_unknown_html: 'En attente : l''état de la bascule n''a pas pu être lu.'
283
+ run_now: Exécuter maintenant
284
+ show:
285
+ armed_html: "%{armed_for}, armée %{ago}"
286
+ back: Retour
287
+ configuration: Configuration
288
+ labels:
289
+ arguments: Arguments
290
+ armed: Exécution en attente
291
+ command: Commande
292
+ description: Description
293
+ job_class: Classe de tâche
294
+ priority: Priorité
295
+ queue: File d'attente
296
+ source: Source
297
+ last_run: Dernière exécution
298
+ no_runs: Aucune exécution enregistrée
299
+ recent_runs: Exécutions récentes
300
+ run_headers:
301
+ enqueued_at: Mise en file le
302
+ queue: File d'attente
303
+ revision: Révision
304
+ triggered_by: Déclenchée par
305
+ version: Version
306
+ source_config: Fichier de configuration
307
+ source_dynamic: Dynamique
308
+ state: État
309
+ version: Version
310
+ states:
311
+ disabled: Désactivée
312
+ due: Prête
313
+ never: Jamais exécutée
314
+ ran: Exécutée
315
+ waiting: En attente
316
+ tasks_table:
317
+ empty_hint_html: Déclarez les tâches ponctuelles dans <code>config/deploy_tasks.yml</code> ; <code>rails generate pgbus:add_deploy_tasks</code> écrit un fichier de départ.
318
+ empty_title: Aucune tâche de déploiement déclarée
319
+ headers:
320
+ actions: Actions
321
+ last_run: Dernière exécution
322
+ queue: File d'attente
323
+ state: État
324
+ task: Tâche
325
+ version: Version
326
+ never: Jamais
327
+ toggle:
328
+ disabled: Tâche de déploiement désactivée
329
+ enabled: Tâche de déploiement activée
330
+ failed: Échec du basculement de la tâche de déploiement
331
+ triggered_by:
332
+ manual: Manuel
333
+ rollover: Bascule
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: Annuler
241
337
  confirm: Confirmer
@@ -617,6 +713,7 @@ fr:
617
713
  nav:
618
714
  batches: Lots
619
715
  dashboard: Tableau de bord
716
+ deploy_tasks: Déploiement
620
717
  dlq: DLQ
621
718
  events: Événements
622
719
  insights: Analyses
@@ -236,6 +236,102 @@ it:
236
236
  payload: Payload
237
237
  retry: Riprova
238
238
  title: 'Messaggio DLQ #%{id}'
239
+ deploy_tasks:
240
+ banner:
241
+ heading: Passaggio di versione
242
+ lagging_html:
243
+ one: 'In attesa del passaggio: 1 processo non esegue ancora <code>%{revision}</code>.'
244
+ other: 'In attesa del passaggio: %{count} processi non eseguono ancora <code>%{revision}</code>.'
245
+ lagging_more: "…e altri %{count}"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid} su %{revision}"
247
+ live_count: "%{count} su %{revision}"
248
+ live_heading: 'Processi attivi:'
249
+ no_revision_hint_html: Imposta <code>config.app_revision</code>, oppure una tra <code>PGBUS_REVISION</code>, <code>DASH_VERSION</code> o <code>KAMAL_VERSION</code>, oppure distribuisci un file <code>REVISION</code>. Esegui ora funziona comunque.
250
+ no_revision_html: 'Revisione dell''app non configurata: le attività di deploy attendono finché non lo è.'
251
+ no_revision_label: nessuna revisione
252
+ no_scheduler_html: 'Nessuno scheduler in esecuzione: le attività di deploy partono solo dallo scheduler. Questo verdetto usa la revisione della dashboard stessa.'
253
+ no_workers_html: 'In attesa del passaggio: ancora nessun worker su <code>%{revision}</code>.'
254
+ ready_html: 'Passaggio completato: ogni processo attivo esegue <code>%{revision}</code>. Le attività armate partono al prossimo tick dello scheduler.'
255
+ unavailable_html: Impossibile leggere lo stato del passaggio.
256
+ default_queue: default
257
+ disable: Disattiva
258
+ enable: Attiva
259
+ enqueue:
260
+ enqueued: Attività di deploy accodata
261
+ failed: 'L''attività di deploy non è stata accodata: vedi il log per il motivo'
262
+ every_deploy: A ogni deploy
263
+ index:
264
+ task_count:
265
+ one: "%{count} attività dichiarata"
266
+ other: "%{count} attività dichiarate"
267
+ title: Attività di deploy
268
+ not_found: Attività di deploy non trovata
269
+ reasons:
270
+ disabled_armed_html: 'Disattivata con un''esecuzione di passaggio in sospeso: attivala per farla partire.'
271
+ disabled_html: 'Disattivata: lo scheduler la salta.'
272
+ due_html: 'Pronta: parte al prossimo tick dello scheduler.'
273
+ manual_html: "· eseguita %{ago} (manuale)"
274
+ never_html: Mai eseguita dopo un passaggio.
275
+ ran_html: Eseguita %{ago} su <code>%{revision}</code> (passaggio).
276
+ waiting_lagging_html:
277
+ one: 'In attesa del passaggio: 1 processo non esegue ancora <code>%{revision}</code>.'
278
+ other: 'In attesa del passaggio: %{count} processi non eseguono ancora <code>%{revision}</code>.'
279
+ waiting_no_revision_html: 'In attesa: la revisione dell''app non è configurata.'
280
+ waiting_no_scheduler_html: 'In attesa: nessuno scheduler in esecuzione.'
281
+ waiting_no_workers_html: In attesa di un worker su <code>%{revision}</code>.
282
+ waiting_unknown_html: 'In attesa: impossibile leggere lo stato del passaggio.'
283
+ run_now: Esegui ora
284
+ show:
285
+ armed_html: "%{armed_for}, armata %{ago}"
286
+ back: Indietro
287
+ configuration: Configurazione
288
+ labels:
289
+ arguments: Argomenti
290
+ armed: Esecuzione in sospeso
291
+ command: Comando
292
+ description: Descrizione
293
+ job_class: Classe del job
294
+ priority: Priorità
295
+ queue: Coda
296
+ source: Origine
297
+ last_run: Ultima esecuzione
298
+ no_runs: Nessuna esecuzione registrata
299
+ recent_runs: Esecuzioni recenti
300
+ run_headers:
301
+ enqueued_at: Accodata il
302
+ queue: Coda
303
+ revision: Revisione
304
+ triggered_by: Avviata da
305
+ version: Versione
306
+ source_config: File di configurazione
307
+ source_dynamic: Dinamica
308
+ state: Stato
309
+ version: Versione
310
+ states:
311
+ disabled: Disattivata
312
+ due: Pronta
313
+ never: Mai eseguita
314
+ ran: Eseguita
315
+ waiting: In attesa
316
+ tasks_table:
317
+ empty_hint_html: Dichiara le attività una tantum in <code>config/deploy_tasks.yml</code>; <code>rails generate pgbus:add_deploy_tasks</code> scrive un file di partenza.
318
+ empty_title: Nessuna attività di deploy dichiarata
319
+ headers:
320
+ actions: Azioni
321
+ last_run: Ultima esecuzione
322
+ queue: Coda
323
+ state: Stato
324
+ task: Attività
325
+ version: Versione
326
+ never: Mai
327
+ toggle:
328
+ disabled: Attività di deploy disattivata
329
+ enabled: Attività di deploy attivata
330
+ failed: Impossibile cambiare lo stato dell'attività di deploy
331
+ triggered_by:
332
+ manual: Manuale
333
+ rollover: Passaggio
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: Annulla
241
337
  confirm: Conferma
@@ -617,6 +713,7 @@ it:
617
713
  nav:
618
714
  batches: Lotti
619
715
  dashboard: Cruscotto
716
+ deploy_tasks: Deploy
620
717
  dlq: DLQ
621
718
  events: Eventi
622
719
  insights: Approfondimenti
@@ -236,6 +236,102 @@ ja:
236
236
  payload: ペイロード
237
237
  retry: 再試行
238
238
  title: 'DLQメッセージ #%{id}'
239
+ deploy_tasks:
240
+ banner:
241
+ heading: ロールオーバー
242
+ lagging_html:
243
+ one: 'ロールオーバー待ち: 1 個のプロセスがまだ <code>%{revision}</code> で動いていません。'
244
+ other: 'ロールオーバー待ち: %{count} 個のプロセスがまだ <code>%{revision}</code> で動いていません。'
245
+ lagging_more: "…ほか %{count} 件"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid}(%{revision})"
247
+ live_count: "%{revision}: %{count}"
248
+ live_heading: '稼働中のプロセス:'
249
+ no_revision_hint_html: "<code>config.app_revision</code>、または <code>PGBUS_REVISION</code>・<code>DASH_VERSION</code>・<code>KAMAL_VERSION</code> のいずれかを設定するか、<code>REVISION</code> ファイルを同梱してください。「今すぐ実行」は引き続き使えます。"
250
+ no_revision_html: 'アプリのリビジョンが設定されていません: 設定されるまでデプロイタスクは待機します。'
251
+ no_revision_label: リビジョンなし
252
+ no_scheduler_html: 'スケジューラーが動いていません: デプロイタスクはスケジューラーからのみ実行されます。この判定はダッシュボード自身のリビジョンを使っています。'
253
+ no_workers_html: 'ロールオーバー待ち: <code>%{revision}</code> のワーカーがまだいません。'
254
+ ready_html: 'ロールオーバー完了: 稼働中のすべてのプロセスが <code>%{revision}</code> で動いています。待機中のタスクはスケジューラーの次のティックで実行されます。'
255
+ unavailable_html: ロールオーバーの状態を読み取れませんでした。
256
+ default_queue: default
257
+ disable: 無効にする
258
+ enable: 有効にする
259
+ enqueue:
260
+ enqueued: デプロイタスクをキューに追加しました
261
+ failed: 'デプロイタスクはキューに追加されませんでした: 理由はログを確認してください'
262
+ every_deploy: 毎回のデプロイ
263
+ index:
264
+ task_count:
265
+ one: "%{count} 件のタスクが宣言されています"
266
+ other: "%{count} 件のタスクが宣言されています"
267
+ title: デプロイタスク
268
+ not_found: デプロイタスクが見つかりません
269
+ reasons:
270
+ disabled_armed_html: '無効(ロールオーバー実行が保留中): 実行させるには有効にしてください。'
271
+ disabled_html: '無効: スケジューラーはスキップします。'
272
+ due_html: '実行待ち: スケジューラーの次のティックで実行されます。'
273
+ manual_html: "· %{ago}に実行(手動)"
274
+ never_html: ロールオーバー後に実行されたことはありません。
275
+ ran_html: "%{ago}に <code>%{revision}</code> で実行(ロールオーバー)。"
276
+ waiting_lagging_html:
277
+ one: 'ロールオーバー待ち: 1 個のプロセスがまだ <code>%{revision}</code> で動いていません。'
278
+ other: 'ロールオーバー待ち: %{count} 個のプロセスがまだ <code>%{revision}</code> で動いていません。'
279
+ waiting_no_revision_html: '待機中: アプリのリビジョンが設定されていません。'
280
+ waiting_no_scheduler_html: '待機中: スケジューラーが動いていません。'
281
+ waiting_no_workers_html: "<code>%{revision}</code> のワーカーを待っています。"
282
+ waiting_unknown_html: '待機中: ロールオーバーの状態を読み取れませんでした。'
283
+ run_now: 今すぐ実行
284
+ show:
285
+ armed_html: "%{armed_for}(%{ago}に準備)"
286
+ back: 戻る
287
+ configuration: 設定
288
+ labels:
289
+ arguments: 引数
290
+ armed: 保留中の実行
291
+ command: コマンド
292
+ description: 説明
293
+ job_class: ジョブクラス
294
+ priority: 優先度
295
+ queue: キュー
296
+ source: ソース
297
+ last_run: 最終実行
298
+ no_runs: まだ実行記録はありません
299
+ recent_runs: 最近の実行
300
+ run_headers:
301
+ enqueued_at: キュー追加日時
302
+ queue: キュー
303
+ revision: リビジョン
304
+ triggered_by: 実行契機
305
+ version: バージョン
306
+ source_config: 設定ファイル
307
+ source_dynamic: 動的
308
+ state: 状態
309
+ version: バージョン
310
+ states:
311
+ disabled: 無効
312
+ due: 実行待ち
313
+ never: 未実行
314
+ ran: 実行済み
315
+ waiting: 待機中
316
+ tasks_table:
317
+ empty_hint_html: 一度きりのタスクは <code>config/deploy_tasks.yml</code> で宣言します。<code>rails generate pgbus:add_deploy_tasks</code> でひな形が作成されます。
318
+ empty_title: 宣言されたデプロイタスクはありません
319
+ headers:
320
+ actions: アクション
321
+ last_run: 最終実行
322
+ queue: キュー
323
+ state: 状態
324
+ task: タスク
325
+ version: バージョン
326
+ never: なし
327
+ toggle:
328
+ disabled: デプロイタスクを無効にしました
329
+ enabled: デプロイタスクを有効にしました
330
+ failed: デプロイタスクの切り替えに失敗しました
331
+ triggered_by:
332
+ manual: 手動
333
+ rollover: ロールオーバー
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: キャンセル
241
337
  confirm: 確認
@@ -617,6 +713,7 @@ ja:
617
713
  nav:
618
714
  batches: バッチ
619
715
  dashboard: ダッシュボード
716
+ deploy_tasks: デプロイ
620
717
  dlq: DLQ
621
718
  events: イベント
622
719
  insights: インサイト
@@ -236,6 +236,102 @@ nb:
236
236
  payload: Innhold
237
237
  retry: Prøv igjen
238
238
  title: 'DLQ-melding #%{id}'
239
+ deploy_tasks:
240
+ banner:
241
+ heading: Utrulling
242
+ lagging_html:
243
+ one: 'Venter på utrulling: 1 prosess kjører ennå ikke <code>%{revision}</code>.'
244
+ other: 'Venter på utrulling: %{count} prosesser kjører ennå ikke <code>%{revision}</code>.'
245
+ lagging_more: "…og %{count} til"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid} på %{revision}"
247
+ live_count: "%{count} på %{revision}"
248
+ live_heading: 'Aktive prosesser:'
249
+ no_revision_hint_html: Sett <code>config.app_revision</code>, eller en av <code>PGBUS_REVISION</code>, <code>DASH_VERSION</code> eller <code>KAMAL_VERSION</code>, eller lever en <code>REVISION</code>-fil. Kjør nå fungerer fortsatt.
250
+ no_revision_html: 'Appens revisjon er ikke konfigurert: deploy-oppgaver venter til den er det.'
251
+ no_revision_label: ingen revisjon
252
+ no_scheduler_html: 'Ingen planlegger kjører: deploy-oppgaver startes bare av planleggeren. Vurderingen bruker dashbordets egen revisjon.'
253
+ no_workers_html: 'Venter på utrulling: ingen worker på <code>%{revision}</code> ennå.'
254
+ ready_html: 'Utrullet: hver aktive prosess kjører <code>%{revision}</code>. Ventende oppgaver kjøres ved planleggerens neste tick.'
255
+ unavailable_html: Utrullingsstatusen kunne ikke leses.
256
+ default_queue: default
257
+ disable: Deaktiver
258
+ enable: Aktiver
259
+ enqueue:
260
+ enqueued: Deploy-oppgaven er lagt i kø
261
+ failed: 'Deploy-oppgaven ble ikke lagt i kø: se loggen for årsaken'
262
+ every_deploy: Ved hver deploy
263
+ index:
264
+ task_count:
265
+ one: "%{count} oppgave deklarert"
266
+ other: "%{count} oppgaver deklarert"
267
+ title: Deploy-oppgaver
268
+ not_found: Fant ikke deploy-oppgaven
269
+ reasons:
270
+ disabled_armed_html: 'Deaktivert med en ventende utrullingskjøring: aktiver den for å la den kjøre.'
271
+ disabled_html: 'Deaktivert: planleggeren hopper over den.'
272
+ due_html: 'Klar: kjøres ved planleggerens neste tick.'
273
+ manual_html: "· kjørte %{ago} (manuelt)"
274
+ never_html: Har aldri kjørt etter en utrulling.
275
+ ran_html: Kjørte %{ago} på <code>%{revision}</code> (utrulling).
276
+ waiting_lagging_html:
277
+ one: 'Venter på utrulling: 1 prosess kjører ennå ikke <code>%{revision}</code>.'
278
+ other: 'Venter på utrulling: %{count} prosesser kjører ennå ikke <code>%{revision}</code>.'
279
+ waiting_no_revision_html: 'Venter: appens revisjon er ikke konfigurert.'
280
+ waiting_no_scheduler_html: 'Venter: ingen planlegger kjører.'
281
+ waiting_no_workers_html: Venter på en worker på <code>%{revision}</code>.
282
+ waiting_unknown_html: 'Venter: utrullingsstatusen kunne ikke leses.'
283
+ run_now: Kjør nå
284
+ show:
285
+ armed_html: "%{armed_for}, klargjort %{ago}"
286
+ back: Tilbake
287
+ configuration: Konfigurasjon
288
+ labels:
289
+ arguments: Argumenter
290
+ armed: Ventende kjøring
291
+ command: Kommando
292
+ description: Beskrivelse
293
+ job_class: Jobbklasse
294
+ priority: Prioritet
295
+ queue: Kø
296
+ source: Kilde
297
+ last_run: Siste kjøring
298
+ no_runs: Ingen kjøringer registrert ennå
299
+ recent_runs: Siste kjøringer
300
+ run_headers:
301
+ enqueued_at: Lagt i kø
302
+ queue: Kø
303
+ revision: Revisjon
304
+ triggered_by: Startet av
305
+ version: Versjon
306
+ source_config: Konfigurasjonsfil
307
+ source_dynamic: Dynamisk
308
+ state: Tilstand
309
+ version: Versjon
310
+ states:
311
+ disabled: Deaktivert
312
+ due: Klar
313
+ never: Aldri kjørt
314
+ ran: Kjørt
315
+ waiting: Venter
316
+ tasks_table:
317
+ empty_hint_html: Deklarer engangsoppgaver i <code>config/deploy_tasks.yml</code>; <code>rails generate pgbus:add_deploy_tasks</code> skriver en startfil.
318
+ empty_title: Ingen deploy-oppgaver deklarert
319
+ headers:
320
+ actions: Handlinger
321
+ last_run: Siste kjøring
322
+ queue: Kø
323
+ state: Tilstand
324
+ task: Oppgave
325
+ version: Versjon
326
+ never: Aldri
327
+ toggle:
328
+ disabled: Deploy-oppgaven er deaktivert
329
+ enabled: Deploy-oppgaven er aktivert
330
+ failed: Kunne ikke veksle deploy-oppgaven
331
+ triggered_by:
332
+ manual: Manuelt
333
+ rollover: Utrulling
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: Avbryt
241
337
  confirm: Bekreft
@@ -617,6 +713,7 @@ nb:
617
713
  nav:
618
714
  batches: Grupper
619
715
  dashboard: Dashbord
716
+ deploy_tasks: Deploy
620
717
  dlq: DLQ
621
718
  events: Hendelser
622
719
  insights: Innsikter
@@ -236,6 +236,102 @@ nl:
236
236
  payload: Inhoud
237
237
  retry: Opnieuw proberen
238
238
  title: 'DLQ Bericht #%{id}'
239
+ deploy_tasks:
240
+ banner:
241
+ heading: Uitrol
242
+ lagging_html:
243
+ one: 'Wacht op uitrol: 1 proces draait nog niet op <code>%{revision}</code>.'
244
+ other: 'Wacht op uitrol: %{count} processen draaien nog niet op <code>%{revision}</code>.'
245
+ lagging_more: "…en nog %{count}"
246
+ lagging_process: "%{kind}@%{hostname} pid %{pid} op %{revision}"
247
+ live_count: "%{count} op %{revision}"
248
+ live_heading: 'Actieve processen:'
249
+ no_revision_hint_html: Stel <code>config.app_revision</code> in, of een van <code>PGBUS_REVISION</code>, <code>DASH_VERSION</code> of <code>KAMAL_VERSION</code>, of lever een <code>REVISION</code>-bestand mee. Nu uitvoeren werkt nog steeds.
250
+ no_revision_html: 'App-revisie niet geconfigureerd: deploy-taken wachten tot die er is.'
251
+ no_revision_label: geen revisie
252
+ no_scheduler_html: 'Er draait geen scheduler: deploy-taken worden alleen door de scheduler gestart. Dit oordeel gebruikt de eigen revisie van het dashboard.'
253
+ no_workers_html: 'Wacht op uitrol: nog geen worker op <code>%{revision}</code>.'
254
+ ready_html: 'Uitgerold: elk actief proces draait <code>%{revision}</code>. Klaargezette taken draaien bij de volgende tick van de scheduler.'
255
+ unavailable_html: De uitrolstatus kon niet worden gelezen.
256
+ default_queue: default
257
+ disable: Uitschakelen
258
+ enable: Inschakelen
259
+ enqueue:
260
+ enqueued: Deploy-taak in de wachtrij gezet
261
+ failed: 'De deploy-taak is niet in de wachtrij gezet: zie het log voor de reden'
262
+ every_deploy: Bij elke deploy
263
+ index:
264
+ task_count:
265
+ one: "%{count} taak gedeclareerd"
266
+ other: "%{count} taken gedeclareerd"
267
+ title: Deploy-taken
268
+ not_found: Deploy-taak niet gevonden
269
+ reasons:
270
+ disabled_armed_html: 'Uitgeschakeld met een uitrolrun in afwachting: schakel hem in om hem te laten draaien.'
271
+ disabled_html: 'Uitgeschakeld: de scheduler slaat hem over.'
272
+ due_html: 'Klaar: draait bij de volgende tick van de scheduler.'
273
+ manual_html: "· draaide %{ago} (handmatig)"
274
+ never_html: Nooit gedraaid na een uitrol.
275
+ ran_html: Draaide %{ago} op <code>%{revision}</code> (uitrol).
276
+ waiting_lagging_html:
277
+ one: 'Wacht op uitrol: 1 proces draait nog niet op <code>%{revision}</code>.'
278
+ other: 'Wacht op uitrol: %{count} processen draaien nog niet op <code>%{revision}</code>.'
279
+ waiting_no_revision_html: 'Wacht: de app-revisie is niet geconfigureerd.'
280
+ waiting_no_scheduler_html: 'Wacht: er draait geen scheduler.'
281
+ waiting_no_workers_html: Wacht op een worker op <code>%{revision}</code>.
282
+ waiting_unknown_html: 'Wacht: de uitrolstatus kon niet worden gelezen.'
283
+ run_now: Nu uitvoeren
284
+ show:
285
+ armed_html: "%{armed_for}, klaargezet %{ago}"
286
+ back: Terug
287
+ configuration: Configuratie
288
+ labels:
289
+ arguments: Argumenten
290
+ armed: Openstaande run
291
+ command: Commando
292
+ description: Beschrijving
293
+ job_class: Jobklasse
294
+ priority: Prioriteit
295
+ queue: Wachtrij
296
+ source: Bron
297
+ last_run: Laatste run
298
+ no_runs: Nog geen runs vastgelegd
299
+ recent_runs: Recente runs
300
+ run_headers:
301
+ enqueued_at: In wachtrij gezet
302
+ queue: Wachtrij
303
+ revision: Revisie
304
+ triggered_by: Gestart door
305
+ version: Versie
306
+ source_config: Configuratiebestand
307
+ source_dynamic: Dynamisch
308
+ state: Status
309
+ version: Versie
310
+ states:
311
+ disabled: Uitgeschakeld
312
+ due: Klaar
313
+ never: Nooit gedraaid
314
+ ran: Gedraaid
315
+ waiting: Wacht
316
+ tasks_table:
317
+ empty_hint_html: Declareer eenmalige taken in <code>config/deploy_tasks.yml</code>; <code>rails generate pgbus:add_deploy_tasks</code> schrijft een startbestand.
318
+ empty_title: Geen deploy-taken gedeclareerd
319
+ headers:
320
+ actions: Acties
321
+ last_run: Laatste run
322
+ queue: Wachtrij
323
+ state: Status
324
+ task: Taak
325
+ version: Versie
326
+ never: Nooit
327
+ toggle:
328
+ disabled: Deploy-taak uitgeschakeld
329
+ enabled: Deploy-taak ingeschakeld
330
+ failed: Omschakelen van de deploy-taak mislukt
331
+ triggered_by:
332
+ manual: Handmatig
333
+ rollover: Uitrol
334
+ version: v%{version}
239
335
  dialogs:
240
336
  cancel: Annuleren
241
337
  confirm: Bevestigen
@@ -617,6 +713,7 @@ nl:
617
713
  nav:
618
714
  batches: Groepen
619
715
  dashboard: Dashboard
716
+ deploy_tasks: Deploy
620
717
  dlq: DLQ
621
718
  events: Evenementen
622
719
  insights: Inzichten