Skip to content

ci: DH-19408: PNAP Integration#417

Merged
stanbrub merged 54 commits intodeephaven:mainfrom
stanbrub:pnap-integration
Feb 25, 2026
Merged

ci: DH-19408: PNAP Integration#417
stanbrub merged 54 commits intodeephaven:mainfrom
stanbrub:pnap-integration

Conversation

@stanbrub
Copy link
Collaborator

@stanbrub stanbrub commented Feb 4, 2026

Wrote an integration with Phoenix NAP (our new bare metal provider).

  • Used the PNAP ReST API (Tried terraform, open tofu, and cloud init and could not get working even with support help)
  • We now run as a user instead of root
  • Upgraded to using Ubuntu 24.04 from 22.04
  • Most changes have to do with the change in providers, but some are because of Ubuntu 24.04
  • We now have two wait states to check after deploy
    • Wait for the server to be up and ssh accessible
    • Wait for APT to be unlocked (done updating) after first login
  • We now turn off all auto-updaters for both auto-provisioned and always-on servers
  • We now turn off ASLR in an attempt to minimize benchmark run variability
  • Purging expired servers is now a function performed by us (Equinix had a way to set expiration on server create)
    • We expire ephemeral servers every 24 hours that have been alive at least 24 hours
    • Given that this only affects auto-provisioned servers, and those servers are used about 10% of the time compared to the nightly always-on server of 9hrs, and the rate at which Github Actions outages would affect cleanup (always()) routines was ~27 incidents last year, the probability of the purge-expired function having an impact is 0.28%. (Gotta love Copilot)
    • It's still necessary to have the fallback
  • Updated the secrets document (The public one is here, and the actual keys are in the private vault)

@stanbrub stanbrub requested a review from Copilot February 5, 2026 18:54
@stanbrub stanbrub changed the title ci: DH-19408: Pnap Integration ci: DH-19408: PNAP Integration Feb 5, 2026
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 22 out of 22 changed files in this pull request and generated 20 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@stanbrub stanbrub requested a review from cpwright February 6, 2026 00:05
Comment on lines +102 to +104
IP_ADDRESS=$(jq -r '.publicIpAddresses[0]' <<< "${RESPONSE}")
DEVICE_ID=$(jq -r '.id' <<< "${RESPONSE}")
echo "Got Address ${IP_ADDRESS} and Device Id ${DEVICE_ID}"
Copy link

Choose a reason for hiding this comment

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

A test -z does seem like a reasonable safety check here.

@stanbrub stanbrub merged commit 4024928 into deephaven:main Feb 25, 2026
3 checks passed
@stanbrub stanbrub deleted the pnap-integration branch February 25, 2026 17:43
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.

3 participants