I'm looking for a canonical Appveyor configuration with which to test a Rust crate. I have found the following configs, but I don't know how to judge between them.
If you're releasing a binary, then here's the CI config for ripgrep, which produces Windows executables and puts them in Github releases: https://github.com/BurntSushi/ripgrep/blob/master/appveyor.yml --- There are parts of that config that I don't understand though.
Yeah, sure, that's one. I still don't think I understand it though. What does the warning message mean and why does build: false disable it? I think I just copied that from someone else's CI config.
There are various other things that I could guess at but don't fully grok, e.g., clone_folder, fast_finish and whether the cache is actually helping or not.
By default AppVeyor works in "Msbuild" mode, it searches for .sln or .csproj files and tries to build it. If .sln or .csproj files cannot be found (in your case it was not downloaded by npm), error described above happens.
By default AppVeyor runs all build jobs. If at least one job has failed the entire build is marked as failed. Sometimes, you want the build fail immediately once one of the job fails. To enable fast fail strategy add fast_finish setting into appveyor.yml
whether the cache is actually helping or not
In my experience that depends on many factors (the size of the project including deps, number of the jobs, etc). For Zemeroth-sized project it seems to reduce the compile time, but I'd double check in the case of a bigger project.