Skip to content

ignores proxy setting from config on startup #88

@FlorianHeigl

Description

@FlorianHeigl

So, for some reason codedeploy-agent doesn't read it's config before making the initial connect.

This is our agent config:

[root@azzzz codedeploy-agent]# cat /etc/codedeploy-agent/conf/codedeployagent.yml 
---
:log_aws_wire: false
:log_dir: '/var/log/aws/codedeploy-agent/'
:pid_dir: '/opt/codedeploy-agent/state/.pid/'
:program_name: codedeploy-agent
:root_dir: '/opt/codedeploy-agent/deployment-root'
:verbose: false
:wait_between_runs: 1
proxy_uri: 'http://172.aa.bb.cc:3128'
:max_revisions: 5

Here's the initial startup log from /var/log/aws/codedeploy-agent/codedeploy-agent.log

2016-11-24 17:05:13 INFO  [codedeploy-agent(3464)]: InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller of master 1008: Received TERM - setting internal shutting down flag and possibly finishing last run
2016-11-24 17:06:12 INFO  [codedeploy-agent(3464)]: [Aws::CodeDeployCommand::Client 0 80.349849 1 retries] poll_host_command(host_identifier:"arn:aws:ec2:eu-central-1:zzzzzz:instance/i-zzzzz") Errno::ENETUNREACH Network is unreachable - connect(2)

2016-11-24 17:06:12 ERROR [codedeploy-agent(3464)]: InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Error during perform: Errno::ENETUNREACH - Network is unreachable - connect(2) - /usr/share/ruby/net/http.rb:878:in `initialize'
/usr/share/ruby/net/http.rb:878:in `open'
/usr/share/ruby/net/http.rb:878:in `block in connect'
/usr/share/ruby/timeout.rb:66:in `timeout'
/usr/share/ruby/net/http.rb:877:in `connect'
/usr/share/ruby/net/http.rb:862:in `do_start'
/usr/share/ruby/net/http.rb:857:in `start'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/net_http/connection_pool.rb:281:in `start_session'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/net_http/connection_pool.rb:93:in `session_for'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/net_http/handler.rb:116:in `session'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/net_http/handler.rb:68:in `transmit'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/net_http/handler.rb:42:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/plugins/content_length.rb:12:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/json/error_handler.rb:8:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/request_signer.rb:84:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/helpful_socket_errors.rb:10:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/retry_errors.rb:87:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/retry_errors.rb:118:in `retry_request'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/retry_errors.rb:101:in `retry_if_possible'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/retry_errors.rb:89:in `call'
/opt/codedeploy-agent/vendor/gems/codedeploy-commands-1.0.0/lib/aws/plugins/deploy_agent_version.rb:28:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/json/handler.rb:11:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/user_agent.rb:12:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/seahorse/client/plugins/endpoint.rb:41:in `call'
/opt/codedeploy-agent/vendor/gems/aws-sdk-core-2.6.11/lib/aws-sdk-core/plugins/param_validator.rb:21:in `call'

After the startup I see successful http 200 states, so later it does respect the proxy, just not went it starts. Thing is, when it starts it needs to find it's instance / iam profile and that seems to be more fragile due to this error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions