'[?1034hsh-4.2$ Cannot perform start session: EOF
Getting below error while connecting aws ec2 instance through SSM in jenkins.
Starting session with SessionId: [?1034hsh-4.2$ Cannot perform start session: EOF
Command used in jenkins (execute shell):
INSTANCE_ID=aws ec2 describe-instances --filters "Name=tag:t_name,Values=appdev" --region us-east-1 | jq -r .Reservations[].Instances[].InstanceId
echo "INSTANCE_ID: $INSTANCE_ID"
aws ssm start-session --region us-east-1 --target $INSTANCE_ID
Solution 1:[1]
Why do you want to start a session in Jenkins for SSM?
start-session is used to initiate a connection to a target (for example, a managed node) for a Session Manager session.
To work with SSM in Jenkins you can pass the commands directly without the need to create a session using send-command
Example: To untar files in your instance
aws ssm send-command --instance-ids "${INSTANCE_ID}" \
--region us-east-1 --document-name "AWS-RunShellScript" \
--output-s3-bucket-name "$bucketName" --output-s3-key-prefix "$bucketDir" \
--comment "Untar Files" \
--parameters '{"commands":["tar -xvf /tmp/repo.tar -C /tmp" ]}'
You can pass any number of commands using this way.
After each command, you can call a shell function to check the command status and if it fails you can exit your loop
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | Kishore Venkataramanan |