Replace legacy github client in GitHub Controller
What does this MR do?
Second attempt of !37555 (merged) as it had to be reverted due to regression !38819 (merged)
This MR removes use of LegacyGithubImport::Client
in favour of GithubImport::Client
in GitHubController
with an end goal of removing the legacy code altogether (in the follow up MRs, since the legacy client is used in a few other places).
Changes in this MR remove dependency on legacy client and unblock development of #27370 (closed)
A quick note on tests: githubish shared examples from spec/support/shared_examples/controllers/githubish_import_controller_shared_examples.rb
are shared between Github and Gitea importers. Due to feature flag addition we need to support different scenarios between legacy and new client, since new github client has a different interface. Because of that, some tests now have stubs for both legacy and new clients, in order to make tests pass with and without feature flag turned on.
Mentions #225211 (closed)
Screenshots
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry
- [-] Documentation (if required)
-
Code review guidelines - [-] Merge request performance guidelines
-
Style guides - [-] Database guides
- [-] Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team