2014-07-02 12 views
11

Sto scrivendo uno script di bash che installerà e configurerà automaticamente gli strumenti della CLI di AWS. Sono in grado di installare gli strumenti AWS CLI ma non riesco a configurarlo.Script di Bash per installare gli strumenti della CLI di AWS

Il mio script è qualcosa di simile:

#!/bin/bash 


wget https://s3.amazonaws.com/aws-cli/awscli-bundle.zip 
unzip awscli-bundle.zip 
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws 
./awscli-bundle/install -b ~/bin/aws 
./awscli-bundle/install -h 

aws configure 
AWS Access Key ID [None]: ABCDEFGHIJKLMNOP ## unable to provide this data 
AWS Secret Access Key [None]: xbdwsdADDS/ssfsfa/afzfASADQASAd ## unable to provide this data 
Default region name [None]: us-west-2 ## unable to provide this data 
Default output format [None]: json ## unable to provide this data 

desidero fare la configurazione utilizzando questo script troppo. Vorrei poter fornire queste credenziali tramite script in modo da impedire l'inserimento manuale. Come si può fare?

+0

Se si desidera eseguire ciò nelle istanze avviate, prendere in considerazione l'utilizzo di [IAM Roles per EC2] (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon -ec2.html) invece di incorporare le tue credenziali. L'istanza si occupa di immettere credenziali temporanee e ruotarle, è sufficiente specificare il ruolo IAM quando si avvia l'istanza. Sarà comunque necessario installare gli strumenti effettivi. –

risposta

19

Utilizzare un file di configurazione anziché il comando aws configure. Creare un file denominato ~/.aws/config che assomiglia a questo:

[default] 
aws_access_key_id=AKIAIOSFODNN7EXAMPLE 
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY 
region=us-west-2 
output=json 

Maggiori informazioni in the docs.

+2

Oltre a ciò, è anche possibile impostare le credenziali, la regione e l'output come variabili di ambiente o argomenti cli. Vedere: http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html –

+0

Non riesco a trovare la directory ~/.aws/ –

+1

sarà necessario creare il directory ~/.aws e al suo interno il file 'config' –

0

la pratica migliore è installare il awscli utility da Bash e copiare il file dal proprio percorso specificato di 2 file

senza colpire

#aws configure 

comando non avranno creato questi file, puoi copiare e incollare i file usando lo script bash e ottenere tutta l'esecuzione completata

~/.aws/credintials 
~/.aws/config 

dove credenziali contiene

[default] 
aws_access_key_id=ABCDEFGHIJKLMNOP 
aws_secret_access_key=xbdwsdADDS/ssfsfa/afzfASADQASAd 

e file di configurazione contiene

[default] 
output=json 
region=us-west-2 

Questo vi aiuterà a tenere le chiavi in ​​un posto e si può anche spingere lo stesso per la vostra esecuzione per qualsiasi strumento CMT così come Ansible.

Problemi correlati