game-ci / steam-deploy

Github Action to deploy a game to Steam
MIT License
227 stars 63 forks source link

first line of 'run' command fails on Windows #34

Closed samanpwbb closed 2 years ago

samanpwbb commented 2 years ago

Bug description

When attempting to run steam-deploy on a window-latest machine via a GitHub workflow, I get the following error:

Run chmod +x D:\a\_actions\game-ci\steam-deploy\v1.1.0/steam_deploy.sh
chmod: cannot access 'D:a_actionsgame-cisteam-deployv1.1.0/steam_deploy.sh': No such file or directory
Error: Process completed with exit code 1.

How to reproduce

I have a step in my workflow that looks like this, and it triggers the failure:

      - name: Steam - Deploy Windows
        if: matrix.os == 'windows-latest'
        uses: game-ci/steam-deploy@v1.1.0
        with:
          username: ${{ secrets.STEAM_USERNAME }}
          password: ${{ secrets.STEAM_PASSWORD }}
          configVdf: ${{ secrets.STEAM_CONFIG_VDF}}
          ssfnFileName: ${{ secrets.STEAM_SSFN_FILE_NAME }}
          ssfnFileContents: ${{ secrets.STEAM_SSFN_FILE_CONTENTS }}
          appId: {{secrets.APP_ID}}
          buildDescription: ${{ github.ref }}
          rootPath: electron/out
          depot1Path: wilderplace-win32-x64
          releaseBranch: prerelease

Expected behavior

I expect the steam_deploy script to run on windows.

Additional details

My game is built using Electron, and therefore I need to be running my build script on a Windows machine in order to build for Windows users. Ideally, I can use the same workflow to both build the Electron app, and upload it to Steam, all from a windows machine.

webbertakken commented 2 years ago

Good point. This action used to run as a docker image, but it no longer seems to do that.

We should probably bring back the docker image, so it will run on all platforms again.

davidmfinol commented 2 years ago

The setup-steamcmd action works on all 3 platforms, so I don't think we necessarily need to switch back to a docker image. I think we should be able to determine on which platform the steam-deploy action is running, look up the correct paths/commands for that platform, and use those.

webbertakken commented 2 years ago

If we're going to add any more logic we'll need to switch to either TypeScript or Docker though. Whichever works best.

davidmfinol commented 2 years ago

I believe this may be fixed in v1.2.0 by https://github.com/game-ci/steam-deploy/pull/44

@samanpwbb Can you confirm?

davidmfinol commented 2 years ago

Closing under the assumption that this is fixed by https://github.com/game-ci/steam-deploy/pull/44

Please re-open if there is still an issue.