Skip to content

A Github action to get the packages affected by your changesets

License

Notifications You must be signed in to change notification settings

caffco/changed-packages-github-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Maintainability Test Coverage

Changed Packages

Get information about packages with changes and packages included in your release plan.

About

This action works with the changesets versioning tool to allow you to conditionally run other actions based on whether a package has changed or it's included in a release plan.

Usage

name: Run tests if package changed
on: [push, pull_request]
jobs:
  get-changed-packages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
        with:
          fetch-depth: 0
      - name: Create local copy of main branch
        run: git fetch origin main:main
      - name: Get changed packages
        uses: caffco/changed-packages-github-action@v0.0.7
        with:
          base_branch: main
          repository_path: .

  run-tests:
    runs-on: ubuntu-latest
    steps:
        - name: Run package-a tests
        needs: get-changed-packages
        if: ${{contains(needs.get-changed-packages.outputs.changed_packages, 'package-a')}}
        run: yarn test-package-a

        - name: Run package-b tests
        needs: get-changed-packages
        if: ${{contains(needs.get-changed-packages.outputs.changed_packages, 'package-b')}}
        run: yarn test-package-b

About

A Github action to get the packages affected by your changesets

Resources

License

Stars

Watchers

Forks

Packages

No packages published