Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Creating issue fails if assigned and mapped user has no write access to repo #187

Open
vornkat-iis opened this issue Jul 12, 2023 · 1 comment

Comments

@vornkat-iis
Copy link

TLDR; Issues are numbered wrong after import because for some issues the import fails because the assigned user has no write access to the private repo.

What I want to do: Import metadata (issues, MRs,...) to a private GitHub repo, check everything and publish once it is tidy. Map and link the respective users to give them credit, even if they are no more actively contributing.

What I expect: All issues appear and are numbered the same way, so links e.g., from commits mentioning them, point to the correct issue in GitHub.

What actually happens: Issues which failed to create are skipped, messing up the numbering for all following issues.

Proposed solution: If creating the issue fails because the assigned user does not have write access, create the issues anyway but without assigned user. I assume this means parsing the error, adjusting the parameters and calling the API again.

Unfortunately it is not possible to give everybody write access to avoid this.

Console Output
Migrating issue #3 ('<issue name>')...
        Migrating issue comments...
        ...Done creating comments (migrated 1 comments, skipped 4 comments)
        FAILED: 
{
  status: 200,
  url: '[<url>'](<url>),
  headers: {
    'access-control-allow-origin': '*',
    'access-control-expose-headers': 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset',
    'cache-control': 'private, max-age=60, s-maxage=60',
    connection: 'close',
    'content-encoding': 'gzip',
    'content-security-policy': "default-src 'none'",
    'content-type': 'application/json; charset=utf-8',
    date: 'Wed, 12 Jul 2023 18:47:44 GMT',
    etag: 'W/"<...>"',
    'referrer-policy': 'origin-when-cross-origin, strict-origin-when-cross-origin',
    server: 'GitHub.com',
    'strict-transport-security': 'max-age=31536000; includeSubdomains; preload',
    'transfer-encoding': 'chunked',
    vary: 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding, Accept, X-Requested-With',
    'x-accepted-oauth-scopes': '',
    'x-content-type-options': 'nosniff',
    'x-frame-options': 'deny',
    'x-github-api-version-selected': '2022-11-28',
    'x-github-media-type': 'github.v3; param=golden-comet-preview; format=json',
    'x-github-request-id': '0430:9958:2F1A2F0:2F75C4B:64AEF550',
    'x-oauth-scopes': 'admin:enterprise, admin:gpg_key, admin:org, admin:org_hook, admin:public_key, admin:repo_hook, admin:ssh_signing_key, audit_log, codespace, delete:packages, delete_repo, gist, notifications, project, repo, user, workflow, write:discussion, write:packages',
    'x-ratelimit-limit': '5000',
    'x-ratelimit-remaining': '4846',
    'x-ratelimit-reset': '1689189718',
    'x-ratelimit-resource': 'core',
    'x-ratelimit-used': '154',
    'x-xss-protection': '0'
  },
  data: {
    id: 7812881,
    status: 'failed',
    url: '[<url>'](<url>),
    import_issues_url: '[<url>'](<url>),
    repository_url: '[<url>'](<url>),
    created_at: '2023-07-12T20:47:42.000+02:00',
    updated_at: '2023-07-12T20:47:42.000+02:00',
    errors: [ [Object] ]
  }
}
        ERRORS:
[
  {
    location: '/issue/assignee',
    resource: 'Issue',
    field: 'assignee',
    value: 'fraunhofer-iis-anon',
    code: 'invalid'
  }
]
        ...DONE migrating issue #3.****
@roharvey
Copy link

I just ran into this, and indeed the issue number was off by the number of non-imported issues. I sort of wonder if the issue number is simply an incrementing counter (and I'm not sure what happens if there is a deleted/non-sequential issue). I ended up re-imported some issues (unfortunately GitHub doesn't allow you to delete via the API in order to restart). Would have been ideal for this to continue to import and simply add a comment that user A was unassigned from the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants