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

nimi-bot logs aren't world-viewable #1196

Closed
marcoskirsch opened this issue Jan 14, 2020 · 7 comments
Closed

nimi-bot logs aren't world-viewable #1196

marcoskirsch opened this issue Jan 14, 2020 · 7 comments

Comments

@marcoskirsch
Copy link
Member

Our nimi-bot system that runs system tests automatically sits inside NI's network. That means that in a PR you can see the pass/fail result of the tests, but if you click on the link in order to debug what failed, it will be unreachable unless you have access to the company's network.

This is counter to the open source nature of the nimi-python project that makes contributions from non NI employees a lot more challenging.

@marcoskirsch
Copy link
Member Author

Fortunately, we've designed nimi-bot to use only simulated hardware, so while we need the drivres to be installed, we don't need physical NI hardware to be present.

  • One option would be to exposing the Jenkins port to the outside world. There are security implications to this.
  • Another option would be to host the machine outside of the network using some cloud provider. There are ongoing costs to doing so and somebody would need to administer patches in a regular basis.
  • There might be some other solution in which the test results get uploaded to some world-accessible server. This increases overall complexity but might be doable.

@marcoskirsch
Copy link
Member Author

In the meantime, contributors can run system tests on a local system that has the NI driver runtimes installed:

python3 -m tox -e py36-system_tests

Note the precise invokation may vary based on which version of Python you're using, and we have a change queued up that may change the above yet a bit more.

@SukruthGrandhiNI
Copy link
Contributor

Fortunately, we've designed nimi-bot to use only simulated hardware, so while we need the drivres to be installed, we don't need physical NI hardware to be present.

  • One option would be to exposing the Jenkins port to the outside world. There are security implications to this.
  • Another option would be to host the machine outside of the network using some cloud provider. There are ongoing costs to doing so and somebody would need to administer patches in a regular basis.
  • There might be some other solution in which the test results get uploaded to some world-accessible server. This increases overall complexity but might be doable.

Now moved Jenkins based agents to Azure agents, though we moved to Azure agents security implications remains same.
Unless we move agents to cloud(Non NI network domain) logs are not accessible for external contributors.

@marcoskirsch
Copy link
Member Author

@SukruthGrandhiNI we thought using the AW-hosted VMs + GitHub actions for nimibot would address this. However, it doesn't seem to work.

Can you take a look?

@marcoskirsch marcoskirsch reopened this Apr 14, 2022
@sukruthG
Copy link

sukruthG commented Apr 18, 2022

@marcoskirsch, I could see GitHub action logs when I logged in as external contributor.

image

This comment is made using external contributor credentials.

@sukruthG
Copy link

@marcoskirsch
@sbethur is also able to see the logs when he logged in as external contributor.

@marcoskirsch
Copy link
Member Author

Ok, closing. Thanks for confirming.

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

No branches or pull requests

3 participants