I wrote a Web-App based on NodeJS / Electron. The web part gets deployed and published to gh-pages, the desktop builds go to Github Releases. Linux and MacOS work, but on Windows the deployment fails.
First the website gets built, then the desktop app - both via node.
It complains
Installing deploy dependencies
. . .
The system cannot find the path specified.
Initialized empty Git repository in C:/Users/travis/AppData/Local/Temp/d20201103-1784-1desig9/work/.git/
Preparing deploy
Deploying application
failed to deploy
Logged in as @suhrmann (Simon Uhrmann)
The system cannot find the path specified.
cd C:/Users/travis/AppData/Local/Temp/d20201103-1784-1desig9/work
Switched to a new branch ''gh-pages''
cd -
cd C:/Users/travis/AppData/Local/Temp/d20201103-1784-1desig9/work
The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1274) [Receiver=3.1.2]
Could not copy C:/Users/travis/build/suhrmann/Anno-1800-Calculator/dist.
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received
The build has been terminated
Sample failed deployment on Windows (I allow_failures on always failing build on Windows):
Is this a problem with deployment on Windows, or did I make a mistake in the Travis config?
Thank you in advance for help!
On the other hand, I am curious as to why you are deploying the same code 3 times. Do different OSes generate different files in dist? If so, I would think that running it 3 times will overwrite the files, and the last one that runs always “wins”. It also does not seem like good use of our resources.
Good to know it is not incorrect config Thank you very much!
The build on all platforms is only there to find the error - I though windows might use another build location and therefore built on all os.
For now I stop investigating gh-pages on Windows and restrict build and deployment to os: "linux" - again
Now Windows deployment on Github release works again … But in the end, after successful deployment Windows still fails with:
Done. Your build exited with 0.
Setting target_commitish to 987e4b2111f4baf2c92fdc5349e049c80bd0c4c1
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received
The build has been terminated
UPDATE:
To clarify: There are 2 jobs: 1st build the website and deploy to gh-pages, 2nd build the desktop apps using Electron, and these are abviously os specific - I used dockerized wine to build for Winodws, but I wanted to give “native” Windows a try
I’ve identified the cause: it’s the cwRsync that’s used as rsync in the Windows image.
It’s basically broken as it doesn’t support Windows paths, either with forward- or backslashes, and needs them specified as /cygdrive/c/<etc>.
The linked package doesn’t have any sort of a meaningful source- or bug tracker and has other serious problems beside the above, so I suggest it to be replaced with another rsync version.
There is even a quite up to date version in Choco: choco install msys2 [MSYS2 20200903.0.0] - dont use the outdated msys2-installer!
The description of msys2 on Choco:
You can also just install the msys2 package without system update and use ridk afterwards:
cinst ruby # install ruby
cinst msys2 --params "/NoUpdate" # install msys2 without system update
Update-SessionEnvironment # refresh environment vars
ridk install 2 3 # use ruby's ridk to update the system and install development toolchain