Skip to content
play

GitHub Action

dependency-cruiser report

v2.5.0 Latest version

dependency-cruiser report

play

dependency-cruiser report

visualize dependenices of changed files in each pull request

Installation

Copy and paste the following snippet into your .yml file.

              

- name: dependency-cruiser report

uses: MH4GF/dependency-cruiser-report-action@v2.5.0

Learn more about this action in MH4GF/dependency-cruiser-report-action

Choose a version

dependency-cruiser report

A GitHub Actions that report to visualize dependencies of changed files each pull requests.

build

samplesample

This action uses dependency-cruiser to output syntax of mermaid.js. Inspired by jest-coverage-report-action.

usage

Install in your project

npm install --save-dev dependency-cruiser

Setup dependency-cruiser in the wizard

npm run depcruise --init

Create new action under .github/workflows .

name: 'depcruise'
on:
  pull_request:

jobs:
  report:
    permissions:
      pull-requests: write
    runs-on: ubuntu-latest
    steps:
      - uses: MH4GF/dependency-cruiser-report-action@v2

Advanced Usage

Specifying config file

This action automatically detects dependency-cruiser config file ( .dependency-cruiser.js, etc.), but you can specify your own rules file.

with:
  config-file: my-rules.json

For more information on config file, please see the official documentation

Customizing cruise script

This action automatically adds necessary flags to your cruise script based on package manager. For example, if you are using yarn, the default script is:

yarn run -s depcruise

So you don't need to specify additional flags - action will handle them automatically. So, after adding necessary flags, action will run this command:

 --output-type mermaid --config ${SPECIFIED_CONFIG_FILE} ${DIFF_FILE_A DIFF_FILE_B ...etc}

But you can use additional options:

with:
  cruise-script: yarn run -s depcruise --exclude "^lib"

Usage with bun, npm or pnpm

This action will automatically download dependencies (default is yarn), but you can also specify bun, npm or pnpm:

with:
  package-manager: npm

or

with:
  package-manager: pnpm

Customizing working directory

If you want to run this action in another directory, specify working-directory:

with:
  working-directory: <dir>

Compatibility

This action requires dependency-cruiser v11.10.0 or newer.