[3.0] Verständnisfrage zur Migration

Das Forum soll der Ablage von Lösungen für immer wieder auftauchende Problemstellungen dienen. // This forum contains solutions to problems that frequently occur.
Benutzeravatar
Paric
Beiträge: 45
Registriert: 25.08.2014, 08:51:04

[3.0] Verständnisfrage zur Migration

Beitrag von Paric » 27.04.2015, 09:47:19

Hallo,

ich habe mich jetzt mal an die Migration auf 3.0 herrangewagt. Als ich die migrations-scripte durchlaufen lassen habe, habe ich zwar keinen Fehler bekommen, allerdings hat sich nichts ersichtliches in meinen Dateien getan. Nun stellte sich mir die Frage, woher weiß das Migrationsscript in welchem Ordner mein Projekt liegt? Es ist ja nicht im APF-Ordner.

Meine Struktur schaut so, oder so aus:

Code: Alles auswählen

httpd/tella/ <---- Einstiegspunkt
 |- APF
 |- TELLA
 |- index.php
da der Migrationsordner ja im APF-Ordner liegt kann er ja nix von meinem Projektordner wissen, oder?

Benutzeravatar
dr.e.
Administrator
Beiträge: 4525
Registriert: 04.11.2007, 16:13:53

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dr.e. » 27.04.2015, 12:19:26

Hi!

korrekt! Ich beschreibe es mal Schritt für Schritt:

Zur Ausführung der Migrations-Skripten brauchst du zunächst ein aktuelles APF 3.0-RC2-Release (Download unter http://adventure-php-framework.org/Seit ... perimental - z.B. http://files.adventure-php-framework.or ... 8-php5.zip). Dies entpackst du im Ordner APF (vorher die alte Installation löschen).

Anschließend öffnest du eine cygwin-Shell (Windows) oder eine Bash (LINUX) und wechselst in das Verzeichnis deines Projektes. In diesem Fall ist das httpd/tella/TELLA/. Anschließend führst du die beiden Skripten (Code + Config) wie folgt aus (Beispiel für Windows mit Cygwin und XAMPP):

Code: Alles auswählen

$ ../APF/migration/migrate-code.sh /cygdrive/c/xampp/php/php
$ ../APF/migration/migrate-config.sh /cygdrive/c/xampp/php/php
Damit weiß das Migrations-Skript jeweils in welchem Ordner eine Migration stattfinden soll und führt diese korrekt aus. Weitere Details findest du unter http://adventure-php-framework.org/Seit ... -1-auf-3-0. Dort wird auch explizit darauf hingewiesen, dass du zunächst in den Projekt-Ordner wechseln sollst um unerwartete Ergebnisse zu vermeiden.

Hoffe das hilft! :)
Viele Grüße,
Christian

Benutzeravatar
Paric
Beiträge: 45
Registriert: 25.08.2014, 08:51:04

Re: [3.0] Verständnisfrage zur Migration

Beitrag von Paric » 30.04.2015, 08:26:00

das war es wohl, das habe ich missverstanden. Ich dachte ich sollte ins Migrationsverzeichnis. Aber so macht das ganze auch mehr Sinn :)

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 22.08.2015, 13:05:27

Hallo bei mir wird immer gesagt das er die Datein nicht öffnen kann.

* Migrate service object API ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_service_object_api.php

und das halt bei allen Datein

Die Datein sind alle vorhanden habs auch mal versucht als Administrator zu starten selber effekt. Somit läuft das Script durch aber es wird nichts geändert.

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dave » 22.08.2015, 13:53:07

Pfadangaben sind korrekt?

Ansonsten nochmal neu auf den Server kopieren, vllt. wurden die Dateien ja nicht richtig übertragen. Ich musste letzens auch den Übertragungstyp auf "binär" ändern, da es sonst immer zu Problemen in einer Datei vom "Piwik" kam. Vllt. hilft dir das.

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 22.08.2015, 14:20:44

Da ich eine migration niemals aufm server laufen lasse. Ist das ganze natürlich nur auf meinem localhost. Datein sind wie gesagt alle da Pfad ist auch richtig sonst könnte ich die "Main" Datei ja gar nicht aufrufen.

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dave » 22.08.2015, 15:26:15

Ich habe mal Google angeworfen mit folgendem: could not open input file cygwin
Allerdings kann ich dir nicht sagen, was dir davon helfen könnte. Google am besten mal selbst danach, ansonsten musst du auf Christian warten, der ist im Moment jedoch stark eingespannt.

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 22.08.2015, 18:01:47

so hab jetzt den befehl anderes gestartet statt mit

Code: Alles auswählen

/cgywin/h/htdocs/APF_3.0/migration/*.sh
hab ich nun

Code: Alles auswählen

../APF_3.0/migration/*.sh
gewählt und er ist beim ersten Auftrag......

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dave » 22.08.2015, 18:36:08

Das bedeutet, es hat funktioniert? :lol:

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 22.08.2015, 23:06:23

jop bin grad nach hause gekommen, er ist fertig. Also hat er probleme beim auflösen der Adresse anscheinend!?


PS: Ach mist grad gesehen: Fatal error: "Allowed memory size of 134217728 bytes exhausted (tried to allocate 2097152 bytes) in H:\htdocs\APF_3.0\migration\migrate_base.php on line 1" bei mehere Datein, glaub dann muss ich den mal hoch stellen.

PSS. Auch mit 512mb läft der cache über.

Benutzeravatar
dr.e.
Administrator
Beiträge: 4525
Registriert: 04.11.2007, 16:13:53

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dr.e. » 23.08.2015, 11:35:16

Hallo GeneralCrime,

das Verhalten erscheint mir wirklich komisch. Die Migration lief in allen meinen Tests in weniger als 1 Minute durch. Sollte es länger dauern, vermute ich wirklich, dass da etwas faul ist. :roll:
* Migrate service object API ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_service_object_api.php
Das ist komisch migrate_service_object_api.php ist in GIT vorhanden und auch im Build.
Die Datein sind alle vorhanden habs auch mal versucht als Administrator zu starten selber effekt. Somit läuft das Script durch aber es wird nichts geändert.
In welchem Verzeichnis hast du die Migration gestartet? Wichtig ist, dass die Migration in dem Ordner gestartet wird, in dem auch dein Projekt liegt - nicht im Ordner, in dem die Skripten liegen.
Datein sind wie gesagt alle da Pfad ist auch richtig sonst könnte ich die "Main" Datei ja gar nicht aufrufen.
Das kann evtl. am fehlenden x-Flag liegen. Hast du mal ein

Code: Alles auswählen

chmod a+x migrate-code.sh migrate-config.sh relocate.sh
versucht?
PS: Ach mist grad gesehen: Fatal error: "Allowed memory size of 134217728 bytes exhausted (tried to allocate 2097152 bytes) in H:\htdocs\APF_3.0\migration\migrate_base.php on line 1" bei mehere Datein, glaub dann muss ich den mal hoch stellen.
Da ist PHP (wieder einmal) nicht wirklich präzise mit seiner Angabe... :shock: Ich kann mir wirklich nur vorstellen, dass die Migration einen falschen Ordner mitnimmt und sich daran verschluckt.

Magst du mal ein paar Details zu der Ordner-/Projekt-Struktur und deinem Aufruf posten? Ich bin mir sicher, wir finden den Fehler! :)
Viele Grüße,
Christian

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 23.08.2015, 13:56:32

Also zur Ordnerstruktur:

Code: Alles auswählen

Festplatte H
--->htdocs
------>APF_3.0
------>projekt
PHP liegt in unter c:/xammp den erkennt er ja auch mittels Pfad.

als erstes gehe ich mit

Code: Alles auswählen

 cd /cygdrive/h/htdocs/projekt
in das projekt verzeichniss was auch klappt. er sagt mir dann

Code: Alles auswählen

****@******-PC /cygdrive/h/htdocs/projekt
dann rufe ich

Code: Alles auswählen

/cygdrive/h/htdocs/APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
auf welcher dann mir das auswirft
#############################################
# APF 3.0 automatic code migration #
#############################################

Checking PHP executable available ... [OK]

Using given php executable at /cygdrive/c/xampp/php/php. PHP Version: 5.6.11.

#############################################

Starting migration ...
* Migrate taglib declaration statements ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_taglib_r egistration.php
* Consolidate tag usage ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_consolid ate_tag_usage.php
* Remove redundant tag lib registration ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_extract_ add_tag_statements.php
* Switch to new place holder logic ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_update_p lace_holders_to_expression_notation.php
* Migrate iterator item place holders ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_iterator _place_holders.php
* Remove RequestHandler usage ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_r equest_handler.php
* Remove HeaderManager usage ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_header_manager.php
* Remove APF\tools\cookie\Cookie usage ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_tools_cookie.php
* Migrate session handling to new API ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_session_handling.php
* Migrate form definitions ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_form_definitions.php
* Migrate service object API ...
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_service_object_api.php

#############################################

Migration done! Please check your code and follow instructions within migration documentation!
starte ich mittels

Code: Alles auswählen

../APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
startet er das ganze braucht aber stunden und bricht bei jeder datei mit dem überlauf fehler ab.
cygwin liegt unter c:/programme/cgywin

hoffe das ist genug info.... das ganze liegt auf meinem rechner also kein server.

PS: Mein System läuft auf Win10

Benutzeravatar
dr.e.
Administrator
Beiträge: 4525
Registriert: 04.11.2007, 16:13:53

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dr.e. » 23.08.2015, 20:01:51

Hi,

danke, das hilft schon mal einen Schritt weiter. Da er alle Dateien nicht findet, vermute ich einen Fehler in den Berechtigungen der Dateien oder das Problem, dass das mit Windows kompilierte PHP nicht mit den Cygwin-Pfaden zurecht kommt. Oft ist da eine Normalisierung/Anpassung der Pfade mit cygpath notwendig.

Versuchen wir zunächst meinen ersten Verdacht zu bestätigen oder zu entkräften. Kannst du mal ein

Code: Alles auswählen

ls -shal /cygdrive/h/htdocs/APF_3.0/migration/
ls -sahl /cygdrive/c/xampp/php/php
/cygdrive/c/xampp/php/php -v
ausführen und die Ausgabe posten. Zudem könnte folgender Aufruf etwas mehr Infos bringen:

Code: Alles auswählen

sh -x /cygdrive/h/htdocs/APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
Nachdem das migrate-code.sh per

Code: Alles auswählen

SCRIPT_DIR=$(dirname $0)
seinen aktuellen Ausführungspfad bestimmt, könnte evtl. auch

Code: Alles auswählen

../APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
zum Ziel führen.

Ich hoffe, wir kommen damit einen Schritt weiter!
Viele Grüße,
Christian

GeneralCrime
Beiträge: 67
Registriert: 14.12.2011, 07:13:16

Re: [3.0] Verständnisfrage zur Migration

Beitrag von GeneralCrime » 24.08.2015, 11:12:04

Code: Alles auswählen

$ ls -shal /cygdrive/h/htdocs/APF_3.0/migration/
insgesamt 97K
8,0K drwxrwx---+ 1 General Crime General Crime    0 23. Aug 15:13 .
4,0K drwxrwx---+ 1 General Crime General Crime    0 23. Aug 15:14 ..
4,0K -rwxrwx---+ 1 General Crime General Crime 1,2K 23. Aug 15:13 check.sh
4,0K -rwxrwx---+ 1 General Crime General Crime 2,6K 23. Aug 15:13 migrate_base.php
1,0K -rwxrwx---+ 1 General Crime General Crime  264 23. Aug 15:13 migrate_cacheconfig.php
4,0K -rwxrwx---+ 1 General Crime General Crime 1,3K 23. Aug 15:13 migrate_consolidate_tag_usage.php
4,0K -rwxrwx---+ 1 General Crime General Crime 1,5K 23. Aug 15:13 migrate_extract_add_tag_statements.php
8,0K -rwxrwx---+ 1 General Crime General Crime 4,3K 23. Aug 15:13 migrate_form_definitions.php
4,0K -rwxrwx---+ 1 General Crime General Crime 1,3K 23. Aug 15:13 migrate_iterator_place_holders.php
1,0K -rwxrwx---+ 1 General Crime General Crime  316 23. Aug 15:13 migrate_pager_config.php
1,0K -rwxrwx---+ 1 General Crime General Crime  405 23. Aug 15:13 migrate_place_holders_to_extended_syntax.php
8,0K -rwxrwx---+ 1 General Crime General Crime 6,3K 23. Aug 15:13 migrate_remove_header_manager.php
4,0K -rwxrwx---+ 1 General Crime General Crime 3,8K 23. Aug 15:13 migrate_remove_request_handler.php
4,0K -rwxrwx---+ 1 General Crime General Crime 3,7K 23. Aug 15:13 migrate_remove_tools_cookie.php
4,0K -rwxrwx---+ 1 General Crime General Crime 2,0K 23. Aug 15:13 migrate_service_object_api.php
4,0K -rwxrwx---+ 1 General Crime General Crime 3,7K 23. Aug 15:13 migrate_session_handling.php
4,0K -rwxrwx---+ 1 General Crime General Crime 1,4K 23. Aug 15:13 migrate_taglib_registration.php
1,0K -rwxrwx---+ 1 General Crime General Crime  377 23. Aug 15:13 migrate_update_place_holders_to_expression_notation.php
4,0K -rwxrwx---+ 1 General Crime General Crime 2,1K 23. Aug 15:13 migrate-code.sh
4,0K -rwxrwx---+ 1 General Crime General Crime 1,1K 23. Aug 15:13 migrate-config.sh
4,0K -rwxrwx---+ 1 General Crime General Crime  950 23. Aug 15:13 migrate-place-holders.sh
1,0K -rwxrwx---+ 1 General Crime General Crime  511 23. Aug 15:13 README.txt
8,0K -rwxrwx---+ 1 General Crime General Crime 4,3K 23. Aug 15:13 relocate.php
4,0K -rwxrwx---+ 1 General Crime General Crime 1,7K 23. Aug 15:13 relocate.sh

Code: Alles auswählen

$ ls -shal /cygdrive/c/xampp/php/php
68K -rwxrwx---+ 1 Administratoren General Crime 66K 10. Jul 06:10 /cygdrive/c/xampp/php/php

Code: Alles auswählen

$ /cygdrive/c/xampp/php/php/ -v
PHP 5.6.11 (cli) (built: Jul  9 2015 20:55:40)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
    with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans

Code: Alles auswählen

$ sh -x /cygdrive/h/htdocs/APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
+ echo '#############################################'
#############################################
+ echo '# APF 3.0 automatic code migration          #'
# APF 3.0 automatic code migration          #
+ echo '#############################################'
#############################################
+ echo

++ dirname /cygdrive/h/htdocs/APF_3.0/migration/migrate-code.sh
+ SCRIPT_DIR=/cygdrive/h/htdocs/APF_3.0/migration
+ source /cygdrive/h/htdocs/APF_3.0/migration/check.sh
++ echo -n 'Checking PHP executable available ... '
Checking PHP executable available ... ++ '[' -n /cygdrive/c/xampp/php/php ']'
++ '[' '!' -x /cygdrive/c/xampp/php/php -o -d /cygdrive/c/xampp/php/php ']'
++ echo -e '\e[00;32m[OK]\e[00m'
[OK]
++ echo

+++ /cygdrive/c/xampp/php/php -r 'echo phpversion();'
++ echo 'Using given php executable at /cygdrive/c/xampp/php/php. PHP Version: 5.6.11.'
Using given php executable at /cygdrive/c/xampp/php/php. PHP Version: 5.6.11.
++ PHP_BINARY=/cygdrive/c/xampp/php/php
+ echo

+ echo '#############################################'
#############################################
+ echo

+ echo 'Starting migration ...'
Starting migration ...
+ echo '* Migrate taglib declaration statements ...'
* Migrate taglib declaration statements ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_taglib_registration.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_taglib_registration.php
+ echo '* Consolidate tag usage ...'
* Consolidate tag usage ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_consolidate_tag_usage.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_consolidate_tag_usage.php
+ echo '* Remove redundant tag lib registration ...'
* Remove redundant tag lib registration ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_extract_add_tag_statements.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_extract_add_tag_statements.php
+ echo '* Switch to new place holder logic ...'
* Switch to new place holder logic ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_update_place_holders_to_expression_notation.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_update_place_holders_to_expression_notation.php
+ echo '* Migrate iterator item place holders ...'
* Migrate iterator item place holders ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_iterator_place_holders.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_iterator_place_holders.php
+ echo '* Remove RequestHandler usage ...'
* Remove RequestHandler usage ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_request_handler.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_request_handler.php
+ echo '* Remove HeaderManager usage ...'
* Remove HeaderManager usage ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_header_manager.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_header_manager.php
+ echo '* Remove APF\tools\cookie\Cookie usage ...'
* Remove APF\tools\cookie\Cookie usage ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_tools_cookie.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_remove_tools_cookie.php
+ echo '* Migrate session handling to new API ...'
* Migrate session handling to new API ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_session_handling.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_session_handling.php
+ echo '* Migrate form definitions ...'
* Migrate form definitions ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_form_definitions.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_form_definitions.php
+ echo '* Migrate service object API ...'
* Migrate service object API ...
+ /cygdrive/c/xampp/php/php /cygdrive/h/htdocs/APF_3.0/migration/migrate_service_object_api.php
Could not open input file: /cygdrive/h/htdocs/APF_3.0/migration/migrate_service_object_api.php
+ echo

+ echo '#############################################'
#############################################
+ echo

+ echo 'Migration done! Please check your code and follow instructions within migration documentation!'
Migration done! Please check your code and follow instructions within migration documentation!
+ exit 0
CODE: ALLES AUSWÄHLEN
../APF_3.0/migration/migrate-code.sh /cygdrive/c/xampp/php/php
Dies habe ich wie oben schon getaätigt er braucht dann stunden und bricht immer mit einem überlaufenden cache ab habs mit 128mb und mit 512mb versucht. Fehlermeldung steht ja oben.

Benutzeravatar
dr.e.
Administrator
Beiträge: 4525
Registriert: 04.11.2007, 16:13:53

Re: [3.0] Verständnisfrage zur Migration

Beitrag von dr.e. » 24.08.2015, 15:59:26

Hi,

ich denke das Problem sind die unterschiedlichen Berechtigungen von PHP, den APF-Dateien und dem ausführenden Benutzer. Die PHP-Instanz läuft vermutlich unter Administratoren und die Dateien haben ein -rwxrwx---+ was bedeutet, dass sie nicht für alle lesbar sind. Kannst du mal versuchen die Dateien mit den selben Rechten - oder auch mit 777 - auszustatten und die Migration mit dem selben User laufen zu lassen dem auch PHP gehört?
Dies habe ich wie oben schon getätigt er braucht dann stunden und bricht immer mit einem überlaufenden cache ab habs mit 128mb und mit 512mb versucht. Fehlermeldung steht ja oben.
Danke. Das ist echt komisch. Ich bin mir nicht sicher wie wir nun weiter kommen, da ich tatsächlich wie auch du keine weitere Idee habe.

Letzte Idee ist noch, dass du mir deine Projekt-Sourcen zur Verfügung stellst und ich das bei mir lokal ausprobieren und debuggen kann. Deine Quellen werde ich selbstverständlich vertraulich behandeln. Ist das für dich möglich?
Viele Grüße,
Christian

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast