Skip to content

Conversation

@e-kayrakli
Copy link
Contributor

This PR improves the server launch scripts in order to be able to run on PBS systems in nightly testing. It includes two changes

  • ARKOUDA_SERVER_LAUNCH_PREFIX environment can be used to "inject" things before ./arkouda_server: this will allow us to use chpl_launchcmd testing script and pass some arguments to it.
  • Fix how -nl is passed: Space-separated things has to be passed as seperate items in the list when constructing the command. chpl_launchcmd is sensitive to how nl argument is used, and was getting tripped up if that argument is not passed properly.

I manually tested this on a PBS system. Next week, I am hoping to wire nightly testing configs and test through that before merging this.

e-kayrakli added a commit to chapel-lang/chapel that referenced this pull request Feb 15, 2025
... and, while there, also improve debugging/maintenance capabilities.
Commits in this PR should be squashed.

- adds `log` function to be able to print things from Arkouda's
`sub_test`
- use `ARKOUDA_SERVER_LAUNCH_PREFIX` to wire in `chpl_launchcmd` in the
server launch command. This will be supported by
Bears-R-Us/arkouda#4088
- Add the following environment variables to disable parts of Arkouda
testing. This has been very valuable during development, where I could
simply make the Jenkins use an existing Arkouda build to reduce the
turnaround time significantly:
  - `CHPL_TEST_ARKOUDA_SKIP_RM_CLONE`
  - `CHPL_TEST_ARKOUDA_SKIP_CHAPEL_PY`
  - `CHPL_TEST_ARKOUDA_SKIP_BUILD`
  - `CHPL_TEST_ARKOUDA_SKIP_MAKE_CHECK`
- `CHPL_TEST_ARKOUDA_SKIP_UNIT_TESTS` (this will be used by the new
performance testing to avoid unit testing in those configs)
- While there, this also adds a `-nobuild` flag to `nightly` to avoid
rebuilding Chapel in each run. Obviously, this is for maintenance only.
 - In total, this PR adds 4 jobs:
   - `util/cron/test-perf.hpe-apollo-hdr.arkouda.bash`
   - `util/cron/test-perf.hpe-apollo-hdr.arkouda.release.bash`
   - `util/cron/test.hpe-apollo-hdr.arkouda.bash`
   - `util/cron/test.hpe-apollo-hdr.arkouda.release.bash`

Corresponding Jenkins config PR:
https://github.hpe.com/hpe/hpc-chapel-ci-config/pull/1361

[Reviewed by @ShreyasKhandekar]
@e-kayrakli e-kayrakli marked this pull request as ready for review February 24, 2025 18:22
@e-kayrakli e-kayrakli requested a review from ajpotts February 24, 2025 18:22
@ajpotts ajpotts enabled auto-merge February 24, 2025 18:23
Copy link
Contributor

@jaketrookman jaketrookman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to be merged once the flake8 issue is fixed

auto-merge was automatically disabled February 24, 2025 19:46

Head branch was pushed to by a user without write access

Signed-off-by: Engin Kayraklioglu <e-kayrakli@users.noreply.github.com>
@ajpotts ajpotts added this pull request to the merge queue Feb 26, 2025
Merged via the queue into Bears-R-Us:master with commit 1a89d73 Feb 26, 2025
26 checks passed
e-kayrakli added a commit to chapel-lang/chapel that referenced this pull request Mar 1, 2025
Bears-R-Us/arkouda#4088 was merged in couple of
days ago. Now we can start testing the `master` Arkouda branch in the
new configs. This PR removes specific fork/branch from testing scripts.

[Trivial, not reviewed]
github-merge-queue bot pushed a commit that referenced this pull request Mar 6, 2025
#4088 added the capability
dump the server's output into a log file during testing. I realized that
you can also do `--logChannel=LogChannel.FILE` to achieve the same thing
through the server itself. That's more maintainable and robust.

This PR reverts that change from the PR above and uses the flag above
instead.

Signed-off-by: Engin Kayraklioglu <e-kayrakli@users.noreply.github.com>
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

Successfully merging this pull request may close these issues.

4 participants