Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

files option does not respect working-directory setting #458

Open
jerryc05 opened this issue May 28, 2024 · 7 comments
Open

files option does not respect working-directory setting #458

jerryc05 opened this issue May 28, 2024 · 7 comments

Comments

@jerryc05
Copy link

jerryc05 commented May 28, 2024

files option does not seem to respect jobs.<job_name>.defaults.run.working-directory from github. I have to prepend working directory path to every file under files for gh actions to find the correct file.

@softprops
Copy link
Owner

Can you share a link to your workflow? There's nothing in particular we do to manage your working directories. I believe the configuration option you mentioned simply switches the working directory before running the action rather than providing the job steps' working-directory input

@jerryc05
Copy link
Author

here is an excerpt, hope this helps:


jobs:
  build_and_deploy:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./frontend

    steps:
      - uses: actions/checkout@v4

      - uses: pnpm/action-setup@v4
        with:
          version: latest
          run_install: false

      - shell: bash
        run: |
          echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV

      - uses: actions/cache@v4
        with:
          path: ${{ env.STORE_PATH }}
          key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
          restore-keys: |
            ${{ runner.os }}-pnpm-store-

      - run: pnpm i

      - name: Build
        run: pnpm run dist

      - name: Deploy to GitHub release
        uses: softprops/action-gh-release@v2
        with:
          files: frontend/dist/*.zip
          tag_name: zipped_dist

where pnpm run dist command packages everything into a zip file.

If this workflow looks good to you, I can try to provide a minimal reproducible repo.

@softprops
Copy link
Owner

I think I see the issue

the following settings the working directory for each step. think of it like the PWD path when executing a step

    defaults:
      run:
        working-directory: ./frontend

In your files declaration you provide the patternfrontend/dist/*.zip which will be resolved while you are in the frontend directory which would assume a path more like frontend/frontend/dist/*.zip because its relative to the working-directory for the step.

      - name: Deploy to GitHub release
        uses: softprops/action-gh-release@v2
        with:
          files: frontend/dist/*.zip

Could you try and remove the frontend prefix from that step? Since the working-directory is frontend that would then resolve to something like frontend/dist/*.zip

      - name: Deploy to GitHub release
        uses: softprops/action-gh-release@v2
        with:
          files: dist/*.zip

@jerryc05
Copy link
Author

jerryc05 commented Jun 3, 2024

afaik,

        with:
          files: frontend/dist/*.zip

is working (current working version of my workflow), but

        with:
          files: dist/*.zip

does not work (cannot find anything matching *.zip) (my initial not-working version)

@softprops
Copy link
Owner

What happens when you remove the frontend part of the path after setting the working directory to frontend?

@jerryc05
Copy link
Author

jerryc05 commented Jun 3, 2024

IMG_0627

@gust-p
Copy link

gust-p commented Aug 13, 2024

I am having the very same issue. In my case is pretty much the same but is a rust application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants