Skip to end of metadata
Go to start of metadata

Pytania do klienta przed wyrównaniem:

  1. Czy przenosimy Archiwum?
  2. Czy maile użytkowników powinny być ustawione tak jak na prod?

Checklista migracji środowiska produkcyjnego → testowego

Dokument opisuje kroki niezbędne do bezpiecznego przeniesienia backupu bazy produkcyjnej na serwer testowy w systemie PlusWorkflow, tak aby środowisko testowe nie wchodziło w interakcję z realnymi danymi/usługami produkcyjnymi.


1. Zadania zaplanowane (Scheduled Tasks / RPA)

Tabele:pm_scheduled_tasks, pm_scheduled_tasks_parameters, pm_scheduled_tasks_history, pm_scheduled_tasks_component, pm_scheduled_tasks_category, pm_rpa_configs, pm_rpa_scripts, pm_rpa_workers_history

Sposób wykonania: Zaraz po przeniesieniu backupu bazy produkcyjnej na serwer testowy — jeszcze przed uruchomieniem serwera testowego — wyłączyć wszystkie zaplanowane zadania:

sql

NrTyp bazyZapytanie
1Mssql
update PM_SCHEDULED_TASKS set name=name+'_disabled', is_active='0'  where  is_active='1'
2Postgres
update PM_SCHEDULED_TASKS set name=name||'_disabled', is_active='0'  where  is_active='1'

⚠️ Ważne: wyłącz wszystkie zadania natychmiast po imporcie bazy, zanim cokolwiek zostanie uruchomione. 

Zadania, które wcześniej były aktywne będą występować z przyrostkiem _disabled.

Docelowo po przejściu całej instrukcji należy przywrócić konfigurację zadań zgodnie ze stanem środowiska sprzed zrównania. Docelowo aktywne powinny pozostać wyłącznie te zadania, które były uruchomione na danym środowisku przed importem bazy. Przykład: jeżeli przed zrównaniem na środowisku testowym aktywne były zadania OCR, po imporcie bazy docelowo chcemy, aby też one działały(po przejściu całej instrukcji).


2. Konfiguracja parametrów systemowych

Sposób wykonania: Dane dotyczące parametrów systemowych są przechowywane  w tabeli pm_systemparameter. Po wyrównaniu środowiska podmienić na wartości odpowiadające systemowi test:

 

NrNazwaUwagi
1
HTTPLink
np. 
UPDATE public.pm_systemparameter
SET valuestring = 'https://<adres_serwera_testowego>:8443/PWFL'
WHERE parameterkey = 'HTTPLink';

Przykład:https://iso.dominik.pl:8443/PWFL — wartość dobrać zgodnie z rzeczywistym adresem i portem instancji testowej.

2
WorkingDirectory
np. na C:\Suncode\PlusWorkflow-TEST\Home\temp
3
SystemType 
np. na Test

 


3. Konfiguracja skrzynek pocztowych i powiadomień

Lokalizacja:Administracja → Konfiguracja systemu → Konfiguracja skrzynek pocztowych

Sposób wykonania: Podmienić konta pocztowe pochodzące z wersji produkcyjnej na konta testowe — w każdym przypadku, gdy środowisko testowe ma korzystać z innych skrzynek niż produkcja.

  • Sprawdź skrzynki odbiorcze skonfigurowane do odbierania poczty przychodzącej (np. e-faktury, pm_efaktura_email_from) — jeśli DEV podłącza się do prawdziwej skrzynki produkcyjnej (IMAP/POP3), odłącz i podmień na skrzynkę testową, aby uniknąć oznaczania/usuwania maili produkcyjnych.
  • Zweryfikuj adresy „From"/„Reply-To", aby ewentualne odpowiedzi nie trafiały na skrzynki produkcyjne.

4. Pliki konfiguracyjne/wdrożeniowe i systemowe

Sposób wykonania: Podmiana plików na serwerze.

 

ElementCo sprawdzić
Katalog wtyczek (/home/plusworkflow/plusworkflow-prod-home/data/plugins)
Przenieść zawartość katalogu wtyczek z produkcji na środowisko testowe
Mapy procesówPrzenieść pliki xpdl zgodnie ze strukturą instalacji (np. C:\Suncode\Plusworkflow\Home\system\XPDL) z produkcji na test
Szablony powiadomień i szablony dokumentówPrzenieść pliki z prod na test zgodnie z ścieżkami w pm_documenttemplate i pm_notificationdef


Jeśli jest potrzeba wyrównania Tomcat dodatkowo:

ElementCo sprawdzić
Tomcat ($CATALINA_HOME/conf/server.xml, context.xml, catalina.properties)Porty nasłuchu, connectory, aliasy hostów, ewentualne przekierowania wskazujące na domenę produkcyjną
$CATALINA_HOME/bin/setenv.shZmienne środowiskowe/JVM (JAVA_OPTS, CATALINA_OPTS) mogą zawierać zaszyte na sztywno adresy URL, hasła lub connection stringi produkcyjne
Zmienne środowiskowe / pliki .envUżywane przez ewentualne mikroserwisy/skrypty towarzyszące (np. RPA, integracje własne Suncode)
Certyfikaty i kluczeSSL w server.xml/keystore Tomcata, podpisy dla integracji SAP/EDI — potwierdź, że DEV nie korzysta z tych samych aktywnych kluczy produkcyjnych, jeśli miałoby to skutkować realnymi transakcjami
Logi aplikacyjne po imporcie$CATALINA_HOME/logs/catalina.out, localhost.*.log — wyczyść/zrotuj, aby nie mylić logów sprzed migracji z nowymi

 


5. Zmiany w bazie danych

Ścieżki do katalogów, dokumentów i plików

Tabele:pm_devices, pm_docclasses, pm_files, pm_documenttemplate, pm_notificationdef, pm_reports

Sposób wykonania: Zaktualizować wszystkie ścieżki systemowe, zastępując wartość produkcyjną odpowiednikiem testowym. Przy kopiowaniu bazy danych i zmianie ścieżki należy zawsze sprawdzić z poziomu serwera, czy wskazany docelowy katalog fizycznie istnieje.

-- Ścieżki do katalogów systemu (urządzeń)
SELECT * FROM pm_devices;
UPDATE pm_devices SET devicepath = replace(devicepath, 'stara wartosc', 'nowa wartosc');

-- Klasy dokumentów
SELECT * FROM pm_docclasses;
UPDATE pm_docclasses SET docclassindexpath = replace(docclassindexpath, 'stara wartosc', 'nowa wartosc');

-- Ścieżki do fizycznych plików zapisanych w systemie
SELECT * FROM pm_files;
UPDATE pm_files SET path = replace(path, 'stara wartosc', 'nowa wartosc');

-- Szablony dokumentów
SELECT * FROM pm_documenttemplate;
UPDATE pm_documenttemplate SET templatepath = replace(templatepath, 'stara wartosc', 'nowa wartosc');

-- Definicje powiadomień
SELECT * FROM pm_notificationdef;
UPDATE pm_notificationdef SET templatepath = replace(templatepath, 'stara wartosc', 'nowa wartosc');

-- Raporty
SELECT * FROM pm_reports;
UPDATE pm_reports SET reportdefinitionpath = replace(reportdefinitionpath, 'stara wartosc', 'nowa wartosc');

Zewnętrzne bazy danych i konfiguracja widoków/tabel zewnętrznych

Tabele:PM_VCOLUMNS, PM_VTABLES, PM_VTYPES, PM_VVALUES, pm_externaldb_conf

Sposób wykonania: Zaktualizować ustawienia dla zewnętrznych źródeł danych, w tym podmienić konfigurację tabel, kolumn i ich typów odnoszących się do systemów produkcyjnych.


-- Konfiguracja tabel zewnętrznych
SELECT * FROM PM_VCOLUMNS;
UPDATE PM_VCOLUMNS SET value = replace(value, 'stara wartosc', 'nowa wartosc');

SELECT * FROM PM_VTABLES;
UPDATE PM_VTABLES SET value = replace(value, 'stara wartosc', 'nowa wartosc');

SELECT * FROM PM_VTYPES;
UPDATE PM_VTYPES SET value = replace(value, 'stara wartosc', 'nowa wartosc');

SELECT * FROM PM_VVALUES;
UPDATE PM_VVALUES SET value = replace(value, 'stara wartosc', 'nowa wartosc');

-- Weryfikacja połączeń zewnętrznych baz danych
SELECT * FROM pm_externaldb_conf;

⚠️ Ważne — tabela dbex_alias: przed wyrównaniem środowiska sprawdzić, jakie bazy zewnętrzne były podłączone, i nie podłączać baz produkcyjnych do środowiska testowego.


-- Sprawdzenie aktualnie podłączonych aliasów baz zewnętrznych
SELECT * FROM dbex_alias;

-- Podmiana bazy produkcyjnej na testową
UPDATE dbex_alias
SET db_catalog = '<test_external_database_name>'
WHERE db_catalog = '<prod_external_database_name>';

 


6. Konfiguracja wtyczek i modułów 


Należy zwrócić uwagę czy występują wtyczki
eFaktura, KSeF, OCR, Directory Monitor, Barcode Reader. W takim przypadku należy przywrócić dotychczasowe konfiguracje z systemu testowego.
Jeśli występował projekt kliencki we wtyczce do Automatycznych aktualizacji należy go przywrócić zgodnie z tym co było dotychczas.

Dodatkowo dla DBExplorer, Plus E-faktura, PO Module potrzebne są poniższe zmiany. 

Tabele:pm_modules_dbexplorer_cfg, pm_plusefaktura_license, pm_po_module

Sposób wykonania: Podmienić konfiguracje i ścieżki specyficzne dla używanych modułów (licencje, powiązane tabele per wtyczka).

-- DBExplorer (nazwa tabeli, do której odwołuje się wtyczka)
SELECT * FROM pm_modules_dbexplorer_cfg;
UPDATE pm_modules_dbexplorer_cfg SET dbRealName = replace(dbRealName, 'stara wartosc', 'nowa wartosc');

-- Ścieżka do pliku licencyjnego modułu Plus E-faktura
SELECT * FROM pm_plusefaktura_license;
UPDATE pm_plusefaktura_license SET path = replace(path, 'stara wartosc', 'nowa wartosc');

-- Moduł PO
SELECT * FROM pm_po_module;
UPDATE pm_po_module SET value = replace(value, 'stara wartosc', 'nowa wartosc'); 


7. Źródła danych

Należy ustalić czy po wyrównaniu zostawiamy konfiguracje skopiowane z produkcji czy przywracamy dotychczasowe z testu. Jeśli zostawiamy ustawienia z PROD jest ryzyko, że coś będzie odnosić do baz produkcyjnych.


8. Weryfikacja zgodności z dokumentacją projektu

W procedurze należy uwzględnić i zweryfikować poprawne ścieżki oraz konfiguracje wskazane w dokumentacji projektowej — powyższa checklista obejmuje tabele systemowe, jednak każdorazowo należy dodatkowo sprawdzić dokumentację właściwego projektu pod kątem:

  • tabel i konfiguracji wdrożeniowych specyficznych dla danego wdrożenia,
  • ścieżek katalogów i plików wskazanych w dokumentacji projektowej,
  • dodatkowych integracji lub modułów niewymienionych w niniejszej checkliście.
  • No labels