Embora a AWS CLI seja um ótimo recurso para gerenciar seus serviços com tecnologia AWS, é difícil lembrar o uso de:
SAWS
visa turbinar a AWS CLI com recursos focados em:
Nos bastidores, SAWS
é desenvolvido com a AWS CLI e oferece suporte aos mesmos comandos e estrutura de comando .
Uso de SAWS
e AWS CLI
:
aws [parameters] [options]
Recursos SAWS
:
SAWS
está disponível para Mac, Linux, Unix e Windows.
Você pode controlar qual tema carregar para realce de sintaxe atualizando seu arquivo ~/.sawsrc:
# Visual theme. Possible values: manni, igor, xcode, vim, autumn, vs, rrt,
# native, perldoc, borland, tango, emacs, friendly, monokai, paraiso-dark,
# colorful, murphy, bw, pastie, paraiso-light, trac, default, fruity
theme = vim
SAWS
fornece preenchimento automático inteligente enquanto você digita. Inserir o seguinte comando listará interativamente e preencherá automaticamente todos os subcomandos específicos apenas para ec2
:
aws ec2
Além dos comandos, subcomandos e opções padrão fornecidos pela AWS CLI, SAWS
oferece suporte ao preenchimento automático de seus recursos da AWS. Atualmente, nomes de bucket, IDs de instância e tags de instância estão incluídos, com suporte adicional para mais recursos em desenvolvimento.
Opção para s3api
:
--bucket
Uso de amostra:
aws s3api get-bucket-acl --bucket
Sintaxe para s3
:
s3://
Uso de amostra:
aws s3 ls s3://
Nota: O exemplo abaixo demonstra o uso do preenchimento de recurso difuso:
Opção para ec2
:
--instance-ids
Uso de amostra:
aws ec2 describe-instances --instance-ids
aws ec2 ls --instance-ids
Nota: O comando ls
demonstra o uso de atalhos personalizáveis:
Opção para ec2
:
--ec2-tag-key
--ec2-tag-value
Uso de amostra:
aws ec2 ls --ec2-tag-key
aws ec2 ls --ec2-tag-value
As tags suportam curingas com o caractere *
.
Nota: ls
, --ec2-tag-value
e --ec2-tag-key
demonstram o uso de atalhos personalizáveis:
Sinta-se à vontade para enviar um problema ou solicitação pull se desejar suporte para recursos adicionais.
O arquivo ~/.saws.shortcuts contém atalhos que você pode modificar. Ele vem pré-preenchido com vários atalhos úteis prontos para uso. Você pode combinar atalhos com preenchimento difuso para obter ainda menos pressionamentos de tecla. Abaixo estão alguns exemplos.
Liste todas as instâncias do EC2:
aws ec2 ls
Liste todas as instâncias do EC2 em execução:
aws ec2 ls --ec2-state running # fuzzy shortcut: aws ecstate
Liste todas as instâncias do EC2 com uma tag correspondente (suporta curingas *
):
aws ec2 ls --ec2-tag-key # fuzzy shortcut: aws ectagk
aws ec2 ls --ec2-tag-value # fuzzy shortcut: aws ectagv
Liste a instância do EC2 com o ID correspondente:
aws ec2 ls --instance-ids # fuzzy shortcut: aws eclsi
Liste todas as tabelas do DynamoDB:
aws dynamodb ls # fuzzy shortcut: aws dls
Liste todos os clusters EMR:
aws emr ls # fuzzy shortcut: aws emls
Adicione/remova/modifique atalhos em seu arquivo ~/.saws.shortcuts para atender às suas necessidades.
Sinta-se à vontade para enviar:
Para alternar a conclusão difusa de recursos e atalhos da AWS, use a tecla F3
.
Exemplos de atalhos difusos para iniciar e parar instâncias do EC2:
aws ecstop
aws ecstart
Observação: atualmente, a conclusão difusa funciona apenas com recursos e atalhos da AWS.
SAWS
oferece suporte a sugestões automáticas no estilo Fish. Use a tecla right arrow
para completar uma sugestão.
SAWS
permite que você execute comandos shell a partir do prompt saws>
.
SAWS
monitora os comandos que você insere e os armazena em ~/.saws-history
. Use as teclas de seta para cima e para baixo para percorrer o histórico de comandos.
SAWS
suporta help
de linha de comando contextual e docs
contextuais da web.
O comando help
é desenvolvido pela AWS CLI e gera ajuda na linha de comando.
Uso:
aws help
Às vezes, você não tem certeza de qual combinação específica de comando/subcomando/opção precisa usar. Nesses casos, navegar por várias combinações com a linha de comando de help
é complicado em comparação com navegar nos documentos on-line da AWS CLI por meio de um navegador da web.
SAWS
oferece suporte a documentos contextuais da web com o comando docs
ou a tecla F9
. SAWS
exibirá os documentos da web específicos para o comando e subcomando inserido atualmente.
Uso:
aws docs
SAWS
oferece suporte a diversas opções da barra de ferramentas:
F2
alterna o realce da sintaxe de saídaF3
alterna a conclusão difusa de recursos e atalhos da AWSF4
alterna a conclusão de atalhosF5
atualiza recursos para preenchimento automáticoF9
exibe os documentos contextuais da webF10
ou control d
sai SAWS
SAWS
foi testado no Windows 7 e no Windows 10.
No Windows, o arquivo .sawsrc pode ser encontrado em %userprofile%
. Por exemplo:
C:Usersdmartin.sawsrc
Embora você possa usar o prompt de comando padrão do Windows, provavelmente terá uma experiência melhor com cmder ou conemu.
SAWS
está hospedado no PyPI. O comando a seguir instalará SAWS
junto com dependências como o AWS CLI:
$ pip install saws
Você também pode instalar o SAWS
mais recente da fonte GitHub, que pode conter alterações ainda não enviadas ao PyPI:
$ pip install git+https://github.com/donnemartin/saws.git
Se você não estiver instalando em um virtualenv, execute com sudo
:
$ sudo pip install saws
Depois de instalado, inicie SAWS
:
$ saws
É recomendado que você instale pacotes Python em um virtualenv para evitar possíveis problemas com dependências ou permissões.
Para visualizar as instruções de instalação SAWS
virtualenv
e Docker, clique aqui.
Há um problema conhecido com a Apple e suas dependências de pacote python incluídas (mais informações em pypa/pip#3165). Estamos investigando maneiras de corrigir esse problema, mas enquanto isso, para instalar serras, você pode executar:
$ sudo pip install saws --upgrade --ignore-installed six
Configure suas credenciais com a AWS CLI:
$ aws configure
Se desejar usar um perfil nomeado específico com SAWS
, execute os seguintes comandos no OS X, Linux ou Unix:
$ export AWS_DEFAULT_PROFILE=user1
$ saws
Ou como uma linha:
$ AWS_DEFAULT_PROFILE=user1 saws
Os usuários do Windows podem executar os seguintes comandos:
> set AWS_DEFAULT_PROFILE=user1
> saws
As opções de linha de comando para iniciar SAWS
com um perfil específico estão em desenvolvimento. Para obter mais detalhes sobre como instalar e configurar a AWS CLI, consulte a documentação a seguir.
Testes leves indicam que SAWS
também parece ser compatível com Python 3.5.
Pypy3 não é compatível devido à falta de suporte do boto.
Se você estiver interessado em contribuir com SAWS
, execute os seguintes comandos:
$ git clone https://github.com/donnemartin/saws.git
$ pip install -e .
$ pip install -r requirements-dev.txt
$ saws
Detalhes de integração contínua estão disponíveis no Travis CI.
Detalhes de gerenciamento de dependências estão disponíveis no Gemnasium.
Execute testes de unidade em seu ambiente Python ativo:
$ python tests/run_tests.py
Execute testes de unidade com tox em vários ambientes Python:
$ tox
A documentação do código-fonte está disponível em Readthedocs.org.
Execute o seguinte para criar os documentos:
$ scripts/update_docs.sh
Contribuições são bem-vindas!
Revise as Diretrizes de Contribuição para obter detalhes sobre como:
SAWS
nos bastidoresSAWS
SAWS
e por algumas funções utilitárias úteis Sinta-se à vontade para entrar em contato comigo para discutir quaisquer questões, perguntas ou comentários.
Estou fornecendo código e recursos neste repositório para você sob uma licença de código aberto. Como este é meu repositório pessoal, a licença que você recebe para meu código e recursos é minha e não de meu empregador (Facebook).
Copyright 2015 Donne Martin
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.