monodeploy
                                
                                 monodeploy copied to clipboard
                                
                                    monodeploy copied to clipboard
                            
                            
                            
                        [plugin-github] Cannot determine GitHub owner or repository
Describe the bug
I get this error when I run my publish workflow in one of my repositories. (It is unfortunately private.)
Executing Release Hooks
  ➤ YN0001: │ Error: Cannot determine GitHub owner or repository
      at PluginInternals (/home/runner/work/fnd-configs/fnd-configs/.yarn/cache/@monodeploy-plugin-github-npm-0.4.1-6d7a11f9d2-2fb1a2ef02.zip/node_modules/@monodeploy/plugin-github/lib/plugin.js:29:15)
This same publish workflow works fine in other private repositories, same config and everything.
- [ ] I am interested in contributing a fix.
To reproduce
I am unable to reproduce this error locally or in Github Actions on another repo
Expected behavior
GitHub plugin publishes a release
Environment (please complete the following information):
- OS: GitHub Actions Ubuntu 20.04.4 LTS Runner
- Monodeploy Version: 3.3.0
- Monodeploy GitHub Plugin Version: 0.6.1
 
- Yarn Version: 3.2.3
- Yarn module linker: pnp
 
- Node Version: 16.16.0
- Git Version: not sure
Additional context
Publish workflow:
name: Publish
on:
  # Whenever manually triggered
  workflow_dispatch: {}
  # And every Tuesday at 6:30 UTC
  schedule:
    - cron: '30 6 * * TUE'
jobs:
  publish:
    name: Publish Packages
    runs-on: ubuntu-latest
    permissions:
      contents: write
      packages: write
    steps:
      - uses: actions/checkout@v3
        with:
          # Need to fetch history, not just current commit
          fetch-depth: 0
          # This workflow currently needs to use the admin PAT token to bypass branch protection rules on push to main
          token: ${{ secrets.PAT }}
      - uses: actions/[email protected]
        with:
          node-version: 16
      - name: Set up commit author
        run: |
          git config --local user.name 'github-actions[bot]'
          git config --local user.email 'github-actions[bot]@users.noreply.github.com'
      - run: yarn
      - run: yarn monodeploy
        env:
          # PAT token needed to publish GitHub releases (contents: write)
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          # Node auth token needed for .yarnrc.yml to be able to access private MBH packages (packages: write)
          NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Config:
module.exports = {
  preset: 'monodeploy/preset-recommended',
  changesetIgnorePatterns: ['**/test/**'],
  conventionalChangelogConfig: '@tophat/conventional-changelog-config',
  changelogFilename: '<packageDir>/CHANGELOG.md',
  plugins: ['@monodeploy/plugin-github'],
  git: {
    push: true,
  },
  // This only matters for --dry-run
  forceWriteChangeFiles: true,
}
Anyway you can share part of your package.json file for your top level workspace? I'm mainly interested in the repository field.
You can also try adding a test case here: https://github.com/tophat/monodeploy/blob/main/packages/git/src/parseRepositoryProperty.test.ts with the format of your repository url to see if the parser logic can handle the format.
That seemed to have done the trick, added the repo field and it works now. Maybe worth adding a line to the docs, as there's normally no reason for the top level package.json to have the repo field. Thanks for the hint!