Skip to content
This repository has been archived by the owner on Oct 13, 2023. It is now read-only.

Add PROJECT_PATH environment variable #116

Open
3 tasks done
S-Coyle opened this issue May 20, 2020 · 8 comments
Open
3 tasks done

Add PROJECT_PATH environment variable #116

S-Coyle opened this issue May 20, 2020 · 8 comments
Labels
enhancement New feature or request

Comments

@S-Coyle
Copy link

S-Coyle commented May 20, 2020

Do the checklist before filing an issue:

Motivation

For a variety of reasons, many projects don't contain their Cargo.toml file in their root directory, or they have multiple sub-projects each with their own Cargo.tomls. Would it be possible to make the project path configurable? That way the community would benefit from being able to run from a specified path.
We've added this action to a few of our projects and I'm in the process of expanding that to others as it works well, but I've hit this issue which seems to block me from using it in projects such as here and only the root directory `Cargo.toml in this repo here EDIT: was mistaken about this particular linked repo being an example.

Workflow example

name: Security audit
on:
  schedule:
    - cron: '0 0 * * *'
      
  paths: 
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: actions-rs/audit-check@v1
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
        env:
          PROJECT_PATH: ./my_sub_folder

Additional context

As far as I'm aware there's no way around this at the moment. Been looking for workarounds to this issue I'm facing and found the working-directory option here but turns out it can only be used with run and not with uses.
Found a PR here which seems to have resolved this in another action, hoping something similar would work with audit-check.

@S-Coyle S-Coyle added the enhancement New feature or request label May 20, 2020
@colin-grapl
Copy link

Same issue here - we use a cargo workspace.

@fenollp
Copy link

fenollp commented Sep 24, 2020

Same -- see also actions-rs/cargo#59

@mortendahl
Copy link

Same, this would be useful

@martin-g
Copy link

martin-g commented Jul 8, 2021

Related to actions-rs/cargo#86

The best would be if it takes into account the current working directory:

defaults:
  run:
    working-directory: lang/rust

See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#defaultsrun

@jblachly
Copy link

We need this for our monorepo.

See also #194

Ideally, I would suggest letting cargo do the work; it already has a --manifest-path <path/to/Cargo.toml> argument.

In fact, other actions in the actions-rs repo permit this via

with:
  args: --manifest-path mypath/Cargo.toml

@lsunsi
Copy link

lsunsi commented Sep 9, 2021

I also hit this particular wall while integrating with my project. Posting to subscribe on further results!

@fzyzcjy
Copy link

fzyzcjy commented Oct 4, 2021

any updates?

@georglauterbach
Copy link

I need this as well. This issue seems to have become stale, but it is quite important. Not every repository has the Rust code / Cargo.toml directly in the repository root.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Development

No branches or pull requests

9 participants