Appveyor doesn't respect the executable bit?

solarlune's Avatar

solarlune

09 Jun, 2020 09:50 PM

Hello! I'm working with Appveyor to build a compiled x64 GUI application in Golang and I have everything working as it should, I believe, except for an issue with the executable bit.

I've noticed that when I compile my program on Linux and Mac here on Appveyor, the executable bits are not set. This is strange, because if I build on my local Linux machine, it has the bit set, even if I zip it up afterwards and then unzip it.

I also manually am changing the bit on the Mac build after successful build and before the artifacts are compiled, but it still comes down the pipe with the bit not set when I download it from Appveyor.

Any ideas for a reason why this might not be working properly? Is the artifact zipping process done on a Windows VM after the remote VM is finished building, maybe? Or perhaps am I misunderstanding something else?

  1. Support Staff 1 Posted by Feodor Fitsner on 10 Jun, 2020 02:01 AM

    Feodor Fitsner's Avatar

    Are you packing executables into .zip archives?

  2. 2 Posted by solarlune on 10 Jun, 2020 05:44 AM

    solarlune's Avatar

    Yes, that's correct - is that part of the problem?

    If so, is there another way to group a collection of files in a folder without it being zipped up automatically by Appveyor? I'm trying to get the build result (which is an executable output in a folder called bin) as an artifact. The artifact should contain the executable and everything next to it as well.

    Everything's exactly where I need it before trying to make it an artifact, and simply using this partial config works:

    artifacts:
      - path: bin
        name: "MasterPlan-$(APPVEYOR_BUILD_WORKER_IMAGE)-$(APPVEYOR_BUILD_VERSION)"
    

    But with this configuration, the executable bit is lost.

  3. Support Staff 3 Posted by Feodor Fitsner on 10 Jun, 2020 07:34 PM

    Feodor Fitsner's Avatar

    Unfortunately, .zip is not preserving *nix permissions. You have to package artifacts into .tar.gz and push them to artifacts with appveyor PushArtifact command.

  4. Feodor Fitsner closed this discussion on 10 Aug, 2020 09:02 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac