-
Notifications
You must be signed in to change notification settings - Fork 202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The request must contain the parameter AWSAccessKeyId (Aws::EC2::Errors::MissingParameter) #440
Comments
How are you setting credentials? This might be something as silly/easy as the AWS Access Key ID env variable not being set (if that is the auth mechanism) |
Set with environment variables and properly set in both case the same way. |
The reason I ask is that the request lines seem to hint at that: 3.7 (working), appears to be signing the request properly and passing credentials
3.8 clearly isn't signing the requests
Could we get the |
That why i've opened the issue because I don't get why it's sign in one case and why it's not in the other with same kitchen.yml, same env variable and same version of kitchen and aws gem only ruby and os version changed. Here is my kitchen file: ---
driver:
name: ec2
aws_ssh_key_id: key-chef-ssh
security_group_ids: ["sg-08b19275"]
region: eu-west-1
availability_zone: a
subnet_id: subnet-bd6415e6
instance_type: t2.micro
interface: private
transport:
ssh_key: /home/key-chef-ssh.pem
provisioner:
name: chef_zero
platforms:
- name: centos-7
driver:
tags:
Name: "kitchen-ci-centos7"
- name: centos-6
driver:
tags:
Name: "kitchen-ci-centos6"
- name: ubuntu-14-04
driver:
tags:
Name: "kitchen-ci-ubuntu1404"
image_id: ami-754e4a0c
- name: ubuntu-16-04
driver:
tags:
Name: "kitchen-ci-ubuntu1604"
image_id: ami-f5596e8c
- name: ubuntu-18-04
driver:
tags:
Name: "kitchen-ci-ubuntu1804"
image_id: ami-00035f41c82244dab
- name: debian-8
driver:
tags:
Name: "kitchen-ci-debian8"
- name: debian-9
driver:
tags:
Name: "kitchen-ci-debian9"
suites:
- name: default
run_list:
- 'recipe[postfix]' |
To reproduce the issue you can follow those steps: Working version with alpine 3.7, use the following FROM alpine:3.7
RUN apk update && apk upgrade && apk --update add \
build-base ruby ruby-dev gmp ruby-irb ruby-rake ruby-io-console ruby-bigdecimal ruby-json ruby-bundler \
libstdc++ tzdata bash ca-certificates \
&& echo 'gem: --no-document' > /etc/gemrc
# Add chef and kitchen
RUN gem install json:2.0.4 chef-dk kitchen-docker test-kitchen kitchen-ec2 berkshelf
WORKDIR /mnt
CMD ["bash"]
The not working case (only change in the Docker file the alpine version to 3.8 that will use ruby 2.5 instead of 2.4): FROM alpine:3.8
RUN apk update && apk upgrade && apk --update add \
build-base ruby ruby-dev gmp ruby-irb ruby-rake ruby-io-console ruby-bigdecimal ruby-json ruby-bundler \
libstdc++ tzdata bash ca-certificates \
&& echo 'gem: --no-document' > /etc/gemrc
# Add chef and kitchen
RUN gem install json:2.0.4 chef-dk kitchen-docker test-kitchen kitchen-ec2 berkshelf
WORKDIR /mnt
CMD ["bash"]
|
The only thing that stands out on first pass is the usage of i.e.
I'll attempt to repro this later but my hunch is that it's specific to the Ruby build, a bug in the AWS SDK version, or something silly like a missing |
I fixed that to not use the useless |
Let's confirm that this is still occurring under the latest Kitchen, with the given repro case in the comments. |
Hello,
I've discover an issue on kitchen-ec2 version 2.4.0. My kitchen are run in a container when i'm running
kitchen diagnose
on alpine:3.7, everything is ok.I've moved my container to alpine:3.8 since that change, I'm having the following issue when running
kitchen diagnose
:The difference I've found is the ruby version which 2.4 on alpine 3.7
and 2.5 on alpine 3.8:
I've tried to enable the debug of kitchen but output is the same on both. And also enable aws-sdk the wire trace. And I can see that the request done on aws is not the same.
On version alpine 3.7:
On 3.8:
I don't have any clue if the issue is on kitchen-ec2 side or on aws-sdk ?
The text was updated successfully, but these errors were encountered: