Terraform unable to ssh to Google Cloud instance remote-exec ssh, no common authentication method

I need to fetch token from one of my ansible host running on google-cloud. I wrote Terraform remote exec script to make ssh connection and execute bash command to fetch the result. I see Terraform is not able to make ssh connection to the remote host. I'm passing my username and ssh-key path to terraform which otherwise works if I directly login to the same host

I enabled terraform-debug logs to see what is happening and I see the client and server are not offering common method ( public-key) which is showing when I directly login from terminal.

Terraform debug-logs

2021-06-17T10:20:22.376-0700 [DEBUG] plugin.terraform: file-provisioner (internal) 
2021/06/17 10:20:22 [WARN] retryable error: SSH authentication failed (username@an.si.ble.ip:22): ssh: handshake failed: ssh: no common algorithm for key exchange; 

client offered: [curve25519-sha256@libssh.org ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha1], server offered: [diffie-hellman-group-exchange-sha256]

Direct ssh terminal logging

debug3: receive packet: type 51
debug1: Authentications that can continue: publickey
debug3: start over, passed a different list publickey
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /Users/username/.ssh/id_rsa RSA SHA256:shaID1234shaId1234shaId explicit agent
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 60
debug1: Server accepts key: /Users/username/.ssh/id_rsa RSA SHA256:shaID1234shaId1234shaId explicit agent
debug3: sign_and_send_pubkey: RSA SHA256:shaID1234shaId1234shaId
debug3: sign_and_send_pubkey: signing using rsa-sha2-512
debug3: send packet: type 50
debug3: receive packet: type 52
debug1: Authentication succeeded (publickey).
Authenticated to gcp-ansible-vm ([]:22).