rundeck-plugins / rundeck-ec2-nodes-plugin

Get resource node data from Amazon EC2
86 stars 45 forks source link

Changed mappingparam username.default but default still set #88

Open Marcus-D opened 6 years ago

Marcus-D commented 6 years ago

I am getting an authentication error. The reason is because the username is still the old username of AWS: ec2-user. I changed it in the dfaultMapping.properties in the Rundeck-ec2-node-plugin directory.

Error Authentication failure connecting to node: "aws-demo". Could not authenticate.Authentication failure connecting to node: "aws-demo". Could not authenticate.

Debugging mode:

185.16.152 [workflow] Begin execution: node-first
  preparing for sequential execution on 1 nodes
  Executing command on node: aws-demo, NodeEntryImpl{tags=[running, ec2], attributes={osFamily=unix, osArch=x86_64, description=EC2 node instance, osName=Linux, privateIpAddress=172.31.31.145, tags=ec2, sshport=22, nodename=aws-demo, editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, hostname=ec2-18-216-147-4.us-east-2.compute.amazonaws.com, instanceId=i-0a00c6bf80eecfd2e, privateDnsName=ip-172-31-31-145.us-east-2.compute.internal, state=running, username=ec2-user}, project='null'}
  Start EngineWorkflowExecutor
  Building initial state and rules...
  Update conditional state: {before.step.1=true, after.step.1=false}
  start conditions for step [1]: []
  Create rule engine with rules: RuleEngine{ruleSet=[Rule: Conditions([(step.any.flowcontrol.halt == 'true')]) => DataState{state={workflow.done=true}}, Rule: Conditions([]) => DataState{state={step.1.start=true}}, Rule: Conditions([(workflow.keepgoing == 'false'), (step.any.state.failed == 'true')]) => DataState{state={workflow.done=true}}]}
  Create workflow engine with state: StateLogger{state=DataState{state={option.EmailAddress=reallyhard@gmail.com, job.url=http://35.185.16.152:4440/project/VirtualEnvironmentAutomator/execution/follow/76, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, job.id=a571899c-0dd8-4fa6-8e21-03faa58572f6, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-172-31-31-145.us-east-2.compute.internal, after.step.1=false, node.hostname=ec2-18-216-147-4.us-east-2.compute.amazonaws.com, node.os-family=unix, job.user.name=admin, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=172.31.31.145, node.username=ec2-user, job.name=Setup cloudflare accounts, option.EmployeeOrGuest=Guest, job.successOnEmptyNodeFilter=true, node.sshport=22, job.executionType=user, job.filter=name: aws-demo, node.state=running, job.wasRetry=false, job.project=VirtualEnvironmentAutomator, before.step.1=true, job.username=admin, node.os-arch=x86_64, node.instanceId=i-0a00c6bf80eecfd2e, job.retryAttempt=0, node.os-version=, workflow.keepgoing=false, job.execid=76, node.name=aws-demo, job.serverUrl=http://35.185.16.152:4440/, job.threadcount=1}}}
  Begin: Workflow begin
  WillProcessStateChange: saw state changes: {workflow.state=started}
  Update conditional state: {workflow.state=started}
  Update conditional state: {step.1.start=true}
  DidProcessStateChange: applied state changes and rules (changed? true): StateLogger{state=DataState{state={option.EmailAddress=reallyhard@gmail.com, job.url=http://35.185.16.152:4440/project/VirtualEnvironmentAutomator/execution/follow/76, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, job.id=a571899c-0dd8-4fa6-8e21-03faa58572f6, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-172-31-31-145.us-east-2.compute.internal, after.step.1=false, workflow.state=started, node.hostname=ec2-18-216-147-4.us-east-2.compute.amazonaws.com, node.os-family=unix, job.user.name=admin, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=172.31.31.145, node.username=ec2-user, job.name=Setup cloudflare accounts, option.EmployeeOrGuest=Guest, job.successOnEmptyNodeFilter=true, node.sshport=22, job.executionType=user, job.filter=name: aws-demo, node.state=running, job.wasRetry=false, job.project=VirtualEnvironmentAutomator, before.step.1=true, step.1.start=true, job.username=admin, node.os-arch=x86_64, node.instanceId=i-0a00c6bf80eecfd2e, job.retryAttempt=0, node.os-version=, workflow.keepgoing=false, job.execid=76, node.name=aws-demo, job.serverUrl=http://35.185.16.152:4440/, job.threadcount=1}}}
  WillRunOperation: operation starting: Step{stepNum=1, label='CreateSeafileAccount'}
  LoopProgress: Pending(1) => run(1), skip(0), remain(0)
  [workflow] Begin step: 1,NodeDispatch
  1: Workflow step executing: ScriptFileItem{label='CreateSeafileAccount', script=[789 chars]}
  preparing for sequential execution on 1 nodes
  Executing command on node: aws-demo, NodeEntryImpl{tags=[running, ec2], attributes={osFamily=unix, osArch=x86_64, description=EC2 node instance, osName=Linux, privateIpAddress=172.31.31.145, tags=ec2, sshport=22, nodename=aws-demo, editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, hostname=ec2-18-216-147-4.us-east-2.compute.amazonaws.com, instanceId=i-0a00c6bf80eecfd2e, privateDnsName=ip-172-31-31-145.us-east-2.compute.internal, state=running, username=ec2-user}, project='null'}
aws-demo [workflow] beginExecuteNodeStep(aws-demo): NodeDispatch: ScriptFileItem{label='CreateSeafileAccount', script=[789 chars]}
  Using ssh key storage path: keys/temp-key.pem
  copying file: '/var/lib/rundeck/var/tmp/dispatch2067510411748157282.tmp' to: 'aws-demo:/tmp/1-76-aws-demo-dispatch-script.tmp.sh'
  Using stored private key data.
  Set timeout to 0
  Connecting to ec2-18-216-147-4.us-east-2.compute.amazonaws.com:22
  Connecting to ec2-18-216-147-4.us-east-2.compute.amazonaws.com port 22
  Connection established
  Remote version string: SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.4
  Local version string: SSH-2.0-JSCH-0.1.54
  CheckCiphers: aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc,3des-ctr,arcfour,arcfour128,arcfour256
  CheckKexes: diffie-hellman-group14-sha1,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521
  CheckSignatures: ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
  SSH_MSG_KEXINIT sent
  SSH_MSG_KEXINIT received
  kex: server: curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
  kex: server: ssh-rsa,rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519
  kex: server: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
  kex: server: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
  kex: server: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
  kex: server: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
  kex: server: none,zlib@openssh.com
  kex: server: none,zlib@openssh.com
  kex: server:
  kex: server:
  kex: client: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1
  kex: client: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
  kex: client: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-ctr,aes192-cbc,aes256-ctr,aes256-cbc
  kex: client: aes128-ctr,aes128-cbc,3des-ctr,3des-cbc,blowfish-cbc,aes192-ctr,aes192-cbc,aes256-ctr,aes256-cbc
  kex: client: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha1-96,hmac-md5-96
  kex: client: hmac-md5,hmac-sha1,hmac-sha2-256,hmac-sha1-96,hmac-md5-96
  kex: client: none
  kex: client: none
  kex: client:
  kex: client:
  kex: server->client aes128-ctr hmac-sha1 none
  kex: client->server aes128-ctr hmac-sha1 none
  SSH_MSG_KEX_ECDH_INIT sent
  expecting SSH_MSG_KEX_ECDH_REPLY
  ssh_rsa_verify: signature true
  Permanently added 'ec2-18-216-147-4.us-east-2.compute.amazonaws.com' (RSA) to the list of known hosts.
  SSH_MSG_NEWKEYS sent
  SSH_MSG_NEWKEYS received
  SSH_MSG_SERVICE_REQUEST sent
  SSH_MSG_SERVICE_ACCEPT received
  Authentications that can continue: publickey,password,keyboard-interactive
  Next authentication method: publickey
  Disconnecting from ec2-18-216-147-4.us-east-2.compute.amazonaws.com port 22
  Authentication failure connecting to node: "aws-demo". Could not authenticate.
  [workflow] finishExecuteNodeStep(aws-demo): NodeDispatch: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.
35.185.16.152 Failed dispatching to node aws-demo: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.
  Failed dispatching to node aws-demo: com.dtolabs.rundeck.core.execution.workflow.steps.node.NodeStepException: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate. at com.dtolabs.rundeck.core.execution.workflow.steps.node.impl.DefaultScriptFileNodeStepUtils.executeScriptFile(DefaultScriptFileNodeStepUtils.java:123) at com.dtolabs.rundeck.core.execution.workflow.steps.node.impl.ScriptFileNodeStepExecutor.executeNodeStep(ScriptFileNodeStepExecutor.java:64) at com.dtolabs.rundeck.core.execution.ExecutionServiceImpl.executeNodeStep(ExecutionServiceImpl.java:145) at com.dtolabs.rundeck.core.execution.dispatch.SequentialNodeDispatcher.dispatch(SequentialNodeDispatcher.java:130) at com.dtolabs.rundeck.core.execution.dispatch.SequentialNodeDispatcher.dispatch(SequentialNodeDispatcher.java:61) at com.dtolabs.rundeck.core.execution.ExecutionServiceImpl.dispatchToNodesWith(ExecutionServiceImpl.java:201) at com.dtolabs.rundeck.core.execution.ExecutionServiceImpl.dispatchToNodes(ExecutionServiceImpl.java:172) at com.dtolabs.rundeck.core.execution.workflow.steps.NodeDispatchStepExecutor.executeWorkflowStep(NodeDispatchStepExecutor.java:65) at com.dtolabs.rundeck.core.execution.ExecutionServiceImpl.executeStep(ExecutionServiceImpl.java:97) at com.dtolabs.rundeck.core.execution.workflow.BaseWorkflowExecutor.executeWFItem(BaseWorkflowExecutor.java:291) at com.dtolabs.rundeck.core.execution.workflow.BaseWorkflowExecutor.executeWorkflowStep(BaseWorkflowExecutor.java:687) at com.dtolabs.rundeck.core.execution.workflow.engine.StepCallable.apply(StepCallable.java:71) at com.dtolabs.rundeck.core.execution.workflow.engine.StepOperation.apply(StepOperation.java:73) at com.dtolabs.rundeck.core.execution.workflow.engine.StepOperation.apply(StepOperation.java:31) at com.dtolabs.rundeck.core.rules.WorkflowEngineOperationsProcessor.lambda$processRunnableOperations$27(WorkflowEngineOperationsProcessor.java:224) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: com.dtolabs.rundeck.core.execution.service.FileCopierException: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate. at com.dtolabs.rundeck.core.execution.impl.jsch.JschScpFileCopier.handleBuildException(JschScpFileCopier.java:276) at com.dtolabs.rundeck.core.execution.impl.jsch.JschScpFileCopier.copyFile(JschScpFileCopier.java:184) at com.dtolabs.rundeck.core.execution.impl.jsch.JschScpFileCopier.copyFile(JschScpFileCopier.java:301) at com.dtolabs.rundeck.core.execution.ExecutionServiceImpl.fileCopyFile(ExecutionServiceImpl.java:258) at com.dtolabs.rundeck.core.execution.workflow.steps.node.impl.DefaultScriptFileNodeStepUtils.executeScriptFile(DefaultScriptFileNodeStepUtils.java:108) ... 18 more Caused by: com.jcraft.jsch.JSchException: Auth fail at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:245) at com.dtolabs.rundeck.core.execution.impl.jsch.JschScpFileCopier.copyFile(JschScpFileCopier.java:182) ... 21 more Caused by: com.jcraft.jsch.JSchException: Auth fail at com.jcraft.jsch.Session.connect(Session.java:519) at com.jcraft.jsch.Session.connect(Session.java:183) at com.dtolabs.rundeck.core.tasks.net.SSHTaskBuilder.openSession(SSHTaskBuilder.java:174) at com.dtolabs.rundeck.core.tasks.net.ExtScp.openSession(ExtScp.java:71) at org.apache.tools.ant.taskdefs.optional.ssh.Scp.upload(Scp.java:324) at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:226) ... 22 more
  1: Workflow step finished, result: Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]
  [workflow] Finish step: 1,NodeDispatch
  OperationSuccess: operation succeeded: StepSuccess{stepNum=1, stepResultCapture=StepResultCapture{stepResult=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.], stepSuccess=false, statusString='null', controlBehavior=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.], resultData=MultiDataContextImpl(map={}, base=null)}, newState=DataState{state={step.1.result.failedNodes=aws-demo, step.label.CreateSeafileAccount.result.failedNodes=aws-demo, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true, step.label.CreateSeafileAccount.completed=true, step.label.CreateSeafileAccount.state=failure}}}
  WillProcessStateChange: saw state changes: {step.1.result.failedNodes=aws-demo, step.label.CreateSeafileAccount.result.failedNodes=aws-demo, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true, step.label.CreateSeafileAccount.completed=true, step.label.CreateSeafileAccount.state=failure}
  Update conditional state: {step.1.result.failedNodes=aws-demo, step.label.CreateSeafileAccount.result.failedNodes=aws-demo, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true, step.label.CreateSeafileAccount.completed=true, step.label.CreateSeafileAccount.state=failure}
  Update conditional state: {workflow.done=true, step.1.start=true}
  DidProcessStateChange: applied state changes and rules (changed? true): StateLogger{state=DataState{state={option.EmailAddress=reallyhard@gmail.com, job.url=http://35.185.16.152:4440/project/VirtualEnvironmentAutomator/execution/follow/76, node.editUrl=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId}, workflow.done=true, job.id=a571899c-0dd8-4fa6-8e21-03faa58572f6, step.any.state.failed=true, job.loglevel=DEBUG, node.os-name=Linux, node.privateDnsName=ip-172-31-31-145.us-east-2.compute.internal, after.step.1=true, workflow.state=started, node.hostname=ec2-18-216-147-4.us-east-2.compute.amazonaws.com, step.label.CreateSeafileAccount.state=failure, node.os-family=unix, job.user.name=admin, step.1.result.failedNodes=aws-demo, step.label.CreateSeafileAccount.result.failedNodes=aws-demo, node.tags=running,ec2, node.description=EC2 node instance, node.privateIpAddress=172.31.31.145, node.username=ec2-user, job.name=Setup cloudflare accounts, option.EmployeeOrGuest=Guest, step.1.state=failure, job.successOnEmptyNodeFilter=true, node.sshport=22, job.executionType=user, job.filter=name: aws-demo, step.1.completed=true, node.state=running, job.wasRetry=false, job.project=VirtualEnvironmentAutomator, before.step.1=false, step.1.start=true, job.username=admin, node.os-arch=x86_64, node.instanceId=i-0a00c6bf80eecfd2e, job.retryAttempt=0, node.os-version=, workflow.keepgoing=false, job.execid=76, node.name=aws-demo, job.serverUrl=http://35.185.16.152:4440/, job.threadcount=1, step.label.CreateSeafileAccount.completed=true}}}
  WorkflowEndState: Workflow end state reached.
  WillShutdown: Workflow engine shutting down
  Complete: Workflow complete: [Step{stepNum=1, label='CreateSeafileAccount'}: StepSuccess{stepNum=1, stepResultCapture=StepResultCapture{stepResult=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.], stepSuccess=false, statusString='null', controlBehavior=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.], resultData=MultiDataContextImpl(map={}, base=null)}, newState=DataState{state={step.1.result.failedNodes=aws-demo, step.label.CreateSeafileAccount.result.failedNodes=aws-demo, step.1.completed=true, step.any.state.failed=true, before.step.1=false, step.1.state=failure, after.step.1=true, step.label.CreateSeafileAccount.completed=true, step.label.CreateSeafileAccount.state=failure}}}]
  [workflow] Finish execution: node-first: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, Node failures: {aws-demo=[AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, status: failed]
  [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, Node failures: {aws-demo=[AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, status: failed]
  Execution failed: 76 in project VirtualEnvironmentAutomator: [Workflow result: , step failures: {1=Dispatch failed on 1 nodes: [aws-demo: AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, Node failures: {aws-demo=[AuthenticationFailure: [jsch-scp] Failed copying the file: Authentication failure connecting to node: "aws-demo". Could not authenticate.]}, status: failed]

Any thoughts or opinions on how to configure this file or searching for a different file will be greatly appreciated.

gschueler commented 6 years ago

can you include your mapping definitions, as well as the node definitions that are produced by the plugin?

what rundeck version are you using? are you using the "asynchronous nodes cache" for the project, and what is the asynch seting for the ec2 plugin?

Marcus-D commented 6 years ago

I am using the rundeck version: 2.10.4-1. I am not using asynchronous node caching. Should I?

Mapping properties editUrl.default=https://console.aws.amazon.com/ec2/home#Instances:search=${node.instanceId} hostname.selector=privateIpAddress sshport.default=22 sshport.selector=tags/ssh_config_Port ssh-keypath.default=/home/marcus/.ssh/temp-key.pem;username.default=ubuntu instanceId.selector=instanceId nodename.selector=tags/Name,instanceId osArch.selector=architecture osFamily.default=unix osFamily.selector=platform osName.default=Linux osName.selector=platform privateDnsName.selector=privateDnsName privateIpAddress.selector=privateIpAddress attributepublicIpAddress.selector=publicIpAddress attribute.pulbicDnsName.selector=publicDnsName state.selector=state.name tag.pending.selector=state.name=pending tag.running.selector=state.name=running tag.shutting-down.selector=state.name=shutting-down tag.stopped.selector=state.name=stopped tag.stopping.selector=state.name=stopping tag.terminated.selector=state.name=terminated tags.default=ec2 tags.selector=tags/Rundeck-Tags username.default=ubuntu username.selector=tags/Rundeck-User

Node resources: resources.source.2.config.endpoint=ec2.us-east-2.amazonaws.com project.jobs.gui.groupExpandLevel=1 project.ssh-authentication=privateKey resources.source.1.config.generateFileAutomatically=true project.ansible-ssh-auth-type=privateKey resources.source.2.config.accessKey= project.ssh-key-storage-path=keys/ service.FileCopier.default.provider=jsch-scp resources.source.2.config.runningOnly=true ansible-ssh-password-storage-path=keys/awsPass/ansible project.nodeCache.delay=30 project.nodeCache.enabled=true project.ssh-password-storage-path=keys/awsPass/ansible resources.source.2.config.httpProxyPort=80 project.disable.executions=false project.ssh-command-timeout=0 resources.source.2.config.secretKey= resources.source.2.config.refreshInterval=30 ansible-ssh-auth-type=privateKey project.description= ansible-ssh-user=ubuntu resources.source.1.config.writeable=false resources.source.1.config.includeServerNode=true service.NodeExecutor.default.provider=jsch-ssh resources.source.1.config.requireFileExists=false project.ansible-ssh-user=ubuntu project.name=VirtualEnvironmentAutomator project.disable.schedule=false project.ssh-connect-timeout=0 ansible-ssh-key-storage-path=keys/temp-key.pem resources.source.2.config.useDefaultMapping=true resources.source.1.type=file project.ansible-executable=$RDECK_BASE/libext/master.zip resources.source.1.config.file=/var/rundeck/projects/VirtualEnvironmentAutomator/etc/resources.xml resources.source.2.type=aws-ec2

I have set the mapping for asynch in the file... I am aware that you can more mapping with the ansible attributes.

lakkireddy-tr commented 6 years ago

Hi Someone, How to configure AWS EC2 instances as nodes in Rundeck ? Could you please help me with the step by steps & share me if any video exact if exists ... Thanks in advance.