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

Remote-Check does not work #268

Open
StefanRiedel-Seifert opened this issue Dec 4, 2020 · 17 comments
Open

Remote-Check does not work #268

StefanRiedel-Seifert opened this issue Dec 4, 2020 · 17 comments
Labels
feature New feature or refactoring

Comments

@StefanRiedel-Seifert
Copy link

The Codepal check seems to be remote-enabled, I have setup them in our Remote-CI-Hub, but the checks are not triggered: always passed without error, which is not correct.
On the local system, they work and the installation local and remote are absolutely identical.
I get no dumps on the remote system.
result

@estevao-schultz-neto-SAP
Copy link
Contributor

estevao-schultz-neto-SAP commented Dec 7, 2020

The attribute: <remote_rfc_enabled> = ABAP_TRUE is set directly in the constructor of the Y_CHECK_BASE (all CHECKS inherit from this class). We thought the CI Framework would take care of the rest. Now, checking if there is still something else needed.

@StefanRiedel-Seifert
Copy link
Author

Checked the documentation:

  • REMOTE_ENABLED allows to check with an outdated scenario (which uses a push approach rather than a pull approach by manually uploading the extracted source code to be checked). If your check is based CL_CI_TEST_ABAP_COMP_PROCS and is the flag REMORE_RFC_ENABLED is set to ABAP_TRUE, you can also set REMOTE_ENABLED to ABAP_TRUE.

  • REMOTE_RFC_ENABLED indicates that your check can be carried out remotely. Note that it is your responsibility to ensure that your check can run remotely if you set these attributes as true – the attributes themselves are merely of an organizational nature and do not enable your test to run remotely! Additionally, beware that these attributes might be inherited from the superclass if you do not set them yourself, even if the classification does not apply to your check.

@lucasborin
Copy link
Member

Is the code under inspection available in the remote system that will perform the inspection too?

@StefanRiedel-Seifert
Copy link
Author

StefanRiedel-Seifert commented Dec 8, 2020 via email

@estevao-schultz-neto-SAP
Copy link
Contributor

Both flags are set actually: REMOTE_ENABLED and REMOTE_RFC_ENABLED. We are checking...

@lucasborin
Copy link
Member

I tested here, and it works.

However, you must have:

  • the code pal installed and active in both systems
  • RFC set in SCI => Code Inspector => Management of => Remote System
  • Remote Check Variant created in SCI => Check Variant => In Remote System => Y_CODE_PAL (or, your variant)

It looks like this feature will read the variant from the remote system only.
I mean, it won't execute the Check in the remote system, but so locally with the 'remote variant' customizing.

If you have it all, I recommend you to check if an authorization is missing in the target system for the user set in the RFC.
(you can use the t.code SU53).

@StefanRiedel-Seifert
Copy link
Author

StefanRiedel-Seifert commented Dec 11, 2020 via email

@estevao-schultz-neto-SAP
Copy link
Contributor

For me, it does not make sense that the CHECKS have to be in the target system. But...
Our colleague Thomas Fiedler has offered help and we can contact him on this matter. @lucasborin Will you please Lucas?

@estevao-schultz-neto-SAP
Copy link
Contributor

@StefanRiedel-Seifert: Why did you close the issue? Could you reopen as it is not yet solved? We are on it.

@StefanRiedel-Seifert
Copy link
Author

oh, may be a mistake from myside :-(

@StefanRiedel-Seifert
Copy link
Author

... accidentally closed

@estevao-schultz-neto-SAP
Copy link
Contributor

estevao-schultz-neto-SAP commented Dec 14, 2020

We are analyzing this carefully and will reply to you soon.

@mihabosa
Copy link

Is there any update on this issue? We also want to use the code-pal checks via RFC from a central check system.

@lucasborin
Copy link
Member

Unfortunately, code pal only works in the system which has the object under scan as it consumes local tables like TRDIR, TADIR, REPOSRC, etc. These tables are required for code pal specific features like object automatic exemption, object creation date determination, the distinction between productive and test code, etc. Therefore, this feature is not available yet.

To enable it, we have to change these database reads by a function module with RFC enabled.

@lucasborin lucasborin added the feature New feature or refactoring label Mar 30, 2021
@ThomasErgin
Copy link

I want to implement a central ATC server, too and would also love to see the Code Pal RFC enabled. For companies with a big number of development system this feature totally makes sense.

@lucasborin
Copy link
Member

lucasborin commented Dec 7, 2021

Hi colleagues. I created a draft version (2.00.0, #539) that supports the RFC scenario. Feel free to install it in your sandbox system (as it is an alpha/beta version) to test it, and provide your feedback. In short, it needs the authorization to call the function module RFC_READ_TABLE.

@lucasborin lucasborin linked a pull request Dec 8, 2021 that will close this issue
@DerGuteWolf
Copy link

Demanding authorization to call the function module RFC_READ_TABLE is not a so good idea as this opens severe security problems. Couldn't you provide your own FM reading also your tables?

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

Successfully merging a pull request may close this issue.

6 participants