NEWS
Aufruf an alle: Travis-CI/AppVeyor für alle Adapter …
-
Ich hätte da mal ein Problem…
Meine Builds laufen auf allen getesteten Maschinen in der Regel problemlos durch, mit einer Ausnahme: Mac OSX mit NodeJS v4.
Installation/Kompilierung läuft durch, dann knallts (in 80% der Builds, ab und zu geht's doch).
Das letzte, was der Log zeigt, sind die folgenden Zeilen:
checkIsControllerInstalled... checkIsControllerInstalled: installed! Setup finished. Copy adapter...
Dann passiert 10 Minuten lang nichts, bevor Travis den Job abbricht (keine Rückmeldung seit 10 Minuten). Diese Konfiguration erscheint mir allgemein etwas langsamer als die anderen, möglicherweise verschluckt sie sich beim sychronen rekursiven Kopieren.
Hast du eine Idee, was man da machen könnte?
-
Hm interessant, ja die MacOS Infrastruktur von Travis-CI ist teilweise nicht 100% stabil, aber so ein nachvollziehbares Thema hatte ich noch nicht. hast Du mal ein Beispiel?
Kannst ja mal in die Funktion die das kopieren in setup.js macht debug einbauen das Du siehst Ob er einfach nur ewig braucht (wäre dann ein I/O Thema der Travis-Maschine) oder ob er irgendwo mittendrin aufhört …
-
Kann nachvollzogen werden, wenn hier https://github.com/AlCalzone/iobroker.t … travis.yml die Zeilen 12-15 auskommentiert werden. Ich bau mal debug-logs ein und schaue.
-
Du kannst auch "allow_failures" oder so nutzen anstelle exclude dann lässt er es laufen der Gesamtstatus ist aber grün auch wenn das fehlschlägt, vllt einfacher um zu sehen ob es irgendwann wieder tut
-
Interessant, diesmal hakts an ner anderen Stelle (nach dem erfolgreichen Kopieren):
Adapter copied. Install adapter... 1) "before all" hook: Test tradfri adapter: Start js-controller Controller is not running! Adapter normal terminated: true Test package.json and io-package.json ✓ Test package files 1 passing (28m) 1 failing 1) Test tradfri adapter "before all" hook: Test tradfri adapter: Start js-controller: Error: timeout of 600000ms exceeded. Ensure the done() callback is being called in this test.
-
Sehr interessant … erhöhe mal den timeout ...
-
Sehr interessant … erhöhe mal den timeout ... `
Werd ich mal probieren.Aber: Es ist zum Mäusemelken… allow_failures aktiviert, und der Job läuft sofort problemlos durch, wenn auch in der dreifachen Zeit...
-
LOL
-
Hallo Apollon,
ich habe mich auch mal versucht in der Adapter-Entwicklung und wollte jetzt diese Tests auch einbauen. Leider kommt bei mir aber ein Fehler den ich nicht Verstehe.
Mein Adapter ist dieser hier: https://github.com/AlGu1/hombot und noch nicht im Forum angekündigt, da ich noch mind. die Tests einbauen wollte.
Die Fehler bei Travis-CI sind z.B.: (Edit: https://travis-ci.org/AlGu1/hombot/jobs/344045512)
! ````
- Test hombot adapter
"before all" hook: Test hombot adapter: Start js-controller:
Uncaught Error: connect ECONNREFUSED 127.0.0.1:9000
at Object.exports._errnoException (util.js:907:11)
at exports._exceptionWithHostPort (util.js:930:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1081:14)
und bei AppVeyor: (Edit: [https://ci.appveyor.com/project/AlGu1/h … gewji5f5rc](https://ci.appveyor.com/project/AlGu1/hombot/build/job/9ru2qdgewji5f5rc)) >! ```` 1) Test hombot adapter "before all" hook: Test hombot adapter: Start js-controller: Uncaught Error: connect ECONNREFUSED 127.0.0.1:9000 at Object.exports._errnoException (util.js:907:11) at exports._exceptionWithHostPort (util.js:930:20) at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1081:14) 2) Test hombot adapter "after all" hook: Test hombot adapter: Stop js-controller: Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. at test\testAdapter.js:137:13 at test\lib\setup.js:649:13 at null._onTimeout (test\lib\setup.js:594:17) 3) Test hombot adapter "after all" hook: Test hombot adapter: Stop js-controller: Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. at test\testAdapter.js:137:13 at test\lib\setup.js:649:13 at null._onTimeout (test\lib\setup.js:594:17) >! ```` Sagen dir die Meldungen etwas? Ich habe versucht mich an die Anleitung für das Adapter.Template zu halten. Und bin mir nicht sicher ob ich das auch alles richtig gemacht habe. Vielen Dank und Gruß AlGu
- Test hombot adapter
-
Sehr interessant …
bau mal in https://github.com/AlGu1/hombot/blob/ma ... up.js#L308 um das client.connect() ein try/catch ein um die exception abzufangen. geht es dann ?!
-
Ich glaube ich weiß woran es liegt. Ich habe den Adapter ja noch unter "hombot" im Github und nicht unter "ioBroker.hombot". Denn der "appName" wird aus dem "__dirname" gelesen (getAppName). Dadurch kommt dann z.B. bei AppVeyor folgender Fehler:
Command failed: npm install https://github.com/hombot/hombot.js-controller/tarball/master --prefix ./ --production
zustande und die Url gibt es so ja nicht.
Kannst du mir sagen wie ich den Adapter in "ioBroker/hombot" verschieben? Oder kann das nur Bluefox?
Vielen Dank und Gruß
AlGu
-
Kannst du mir sagen wie ich den Adapter in "ioBroker/hombot" verschieben? `
Eigentlich musst du nur dein Repo umbenennen zu ioBroker.hombot. Meine Adapter sind auch alle unter meinem Namen, z.B. https://github.com/AlCalzone/ioBroker.tradfri und da funktionieren die Tests. -
Das interesanteste ist ja das folgende: Ich habe gerade einen fork gemacht und travis-ci läuft bei mir …
https://travis-ci.org/Apollon77/ioBroke ... /344201789
Einziger Fehler weil node 4.x Tests fehlschlagen ist das dort "request" noch nicht in nodejs drin war und es in den "dependecies" fehlt. Sobald Du die aktuelle "request" dep in die package schreibst klappt bei mir alles.
Und ich habe NICHTS verändert am Code. Es ist dein aktueller Git-Stand.
Hast Du irgendwas spezielles bei travis-ci eingestellt bei Dir?
PS: Hast Du das mit dem try/catch mal versucht?
-
https://travis-ci.org/Apollon77/ioBroke … /344201789 `
Da steht jetzt "ioBroker." im Repo-Namen. Daran wirds liegen. -
aaaahhhh jetzt seh ich das … ja na klar wenn "ioBroker" im Reponamen komplett fehlt dann gehts schieff :-)) klatsch (das war die hand vor die Stirn und so)
-
Danke jetzt klappt es. Ich muss nun nur noch vernünftige Tests in die Datei einbauen.
Viele Grüße
AlGu
-
Hallo zusammen,
kann mir jemand helfen? Ich baue gerade zum ersten Mal diese Tests ein, bekomme aber folgenden Fehler:
1) Test hp-ilo adapter Test hp-ilo adapter: Check if adapter started: Uncaught AssertionError: expected 'Cannot check connection' to not equal 'Cannot check connection' + expected - actual at C:\projects\ioBroker.hp-ilo\test\testAdapter.js:108:35 at checkConnectionOfAdapter (C:\projects\ioBroker.hp-ilo\test\testAdapter.js:18:17) at null._onTimeout (C:\projects\ioBroker.hp-ilo\test\testAdapter.js:28:17) 2) Test package.json and io-package.json Test package files: AssertionError: expected undefined to exist at Context. <anonymous>(C:\projects\ioBroker.hp-ilo\test\testPackageFiles.js:30:44) at callFnAsync (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runnable.js:349:8) at Test.Runnable.run (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runnable.js:301:7) at Runner.runTest (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:422:10) at C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:528:12 at next (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:342:14) at C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:352:7 at next (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:284:14) at Immediate._onImmediate (C:\projects\ioBroker.hp-ilo\node_modules\mocha\lib\runner.js:320:5)</anonymous>
Wo muss ich suchen?
-
Schick mir mal den travis Link direkt
-
-
Ursache travis Ausgabe ab Zeile 812 … bei nodejs 4 ist request nicht dabei und muss in die dependencies