piperider icon indicating copy to clipboard operation
piperider copied to clipboard

"Invalid git branch: main" when using piperider compare

Open DaveFlynn opened this issue 2 years ago • 1 comments

When using the piperider compare function, you may come across the following error message:

Error: Invalid git branch: main

This is caused because PipeRider expects the name of the default/base branch to be main. This may not always be the case, and another common alternative is master.

To workaround this issue, you should create a default compare 'recipe' and specify the actual name of your default/base branch.

For instance, if your default branch is called master, you should create the following file in .piperider/compare/default.yml

base:
  branch: master
  dbt:
    commands:
    - dbt deps
    - dbt build
  piperider:
    command: piperider run
target:
  dbt:
    commands:
    - dbt deps
    - dbt build --select state:modified+ --state <DBT_STATE_PATH>
  piperider:
    command: piperider run

After creating this file, specifying the correct base branch name, you should be able run piperider compare

DaveFlynn avatar Aug 30 '23 05:08 DaveFlynn

Another solution, that may be more desirable, is to use the --base-branch option when running compare:

piperider compare --base-branch master

The reason is that the --select option that specifies resources actually supersedes recipes, so the following command would still default to using main branch as the base:

piperider compare --select models/marts

Instead, add the --base-branch option:

piperider compare --select models/marts --base-branch master

DaveFlynn avatar Aug 30 '23 09:08 DaveFlynn