Skip to content

working-directory not propagated to all composite action steps #24

@jbroma

Description

@jbroma

Description

The working-directory input is not applied to several internal composite action steps that run npx rock commands. This causes failures in monorepo setups where rock.config.mjs is in a subdirectory rather than the repo root.

Steps affected

The following steps are missing working-directory: ${{ inputs.working-directory }}:

  • Populate GitHub Token in Cache — writes .rock/cache/project.json to repo root instead of app dir
  • Check if PR-related artifact existsnpx rock remote-cache list
  • Check if regular artifact existsnpx rock remote-cache list
  • Find Build Artifactfind uses absolute path so it works, but inconsistent
  • Download and Unpack APKnpx rock remote-cache download
  • Find artifact URL again before uploadingnpx rock remote-cache list

Steps that correctly use working-directory:

  • Native Fingerprint
  • Get Provider Name
  • Determine Android sourceDir and appName
  • Build Android

Error

npm warn exec The following package was not found and will be installed: rock@0.13.0
Error: rock.config not found in any parent directory of /

Reproduction

Use the action in a monorepo where rock.config.mjs is in a subdirectory:

- uses: callstackincubator/android@v3
  with:
    github-token: ${{ secrets.GITHUB_TOKEN }}
    variant: 'Release'
    working-directory: './apps/my-app'

The "Get Provider Name" step succeeds (has working-directory), but "Check if regular artifact exists" fails (missing working-directory).

Expected

All steps that run npx rock should use working-directory: ${{ inputs.working-directory }}.

Versions

  • callstackincubator/android@v3 (v3.1.0)
  • rock@0.13.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions