#17 Split up SSH setup steps

Better resolution for profiling the problematic "Derive host IPs" step
This commit is contained in:
Joey Hafner 2024-10-25 21:07:41 -07:00
parent b980d5c563
commit ad62383af9
No known key found for this signature in database

View File

@ -29,12 +29,16 @@ jobs:
extraPullNames: nix-community extraPullNames: nix-community
- name: Set up deploy-rs - name: Set up deploy-rs
run: nix build -o deploy github:serokell/deploy-rs#defaultPackage.x86_64-linux run: nix build -o deploy github:serokell/deploy-rs#defaultPackage.x86_64-linux
- name: Set up SSH - name: Set up SSH key
run: | run: |
echo -e "${{ secrets.RUNNER_SSH_PRIVATEKEY }}" > /tmp/key echo -e "${{ secrets.RUNNER_SSH_PRIVATEKEY }}" > /tmp/key
chmod 600 /tmp/key chmod 600 /tmp/key
- name: Derive host IPs
run: |
nix eval --json .#deploy.nodes --apply 'builtins.attrValues' |\ nix eval --json .#deploy.nodes --apply 'builtins.attrValues' |\
jq -r '.[].hostname' | xargs echo > /tmp/hostlist jq -r '.[].hostname' | xargs echo > /tmp/hostlist
- name: Add host keys to known_hosts
run: |
mkdir -p ~/.ssh && touch ~/.ssh/known_hosts && chmod 600 ~/.ssh/known_hosts mkdir -p ~/.ssh && touch ~/.ssh/known_hosts && chmod 600 ~/.ssh/known_hosts
for host in $(cat /tmp/hostlist); do for host in $(cat /tmp/hostlist); do
ssh-keyscan -t ed25519 $host >> ~/.ssh/known_hosts ssh-keyscan -t ed25519 $host >> ~/.ssh/known_hosts