Skip to main content

ABIN é um CLI para interagir com a API do Vault e auxiliar os Desenvolvedores nos projetos da SIMTech

Project description

ABIN

CI PyPI version

Instalação

Utilize o pipx para instalar o abin no seu computador.

sudo apt install pipx
pipx install abin_sim

A versão da aplicação no README será atualizada sempre que um novo build rodar.

Se você estiver rodando no PopOS precisa criar um link simbólico para a aplicação ou adicionar $HOME/.local/bin no path do SO

sudo ln -s $HOME/.local/bin/abin /usr/local/bin/abin

Configuração

Após realizar a instalação do App, será necessário iniciar o arquivo de configuração Para isso execute a instrução abaixo:

abin --configure

A instrução acima criará um arquivo chamado 'settings.toml' em $HOME/abin/ Com o arquivo em mãos, altere o valor de vault_token para o seu token, o valor deverá focar entre " "

vault_token -> Seu token de autenticação no Vault

Para ter acesso seu token basta autenticar no Web UI do Vault. Acesse no seu navegador o endereço https://aspirina.simtech.solutions PS: O acesso devera ser solicitado ao time de SRE da SIMTech

Na tela de login:

  • Mude Method para Username
  • Entre com o seu usuário em Username
  • Entre com a sua senha em Password
  • Clique em More Options
  • Em Mount Path digite simtech
  • Clique em Sign in

Após o login clique no boneco localizao no canto superior direito e, após, clique em Copy Token

Importante: O Token é válido por 30 dias, portanto lembre de renová-lo.

Funções

DESCRITIVO

Uso: abin

Retorna uma breve explicação sobre a funcionalidade do CLI.
Traz exemplos de uso e link para projeto no GitHub

VERSION

Uso: abin --version

Retorna a versão atualmente instalada no SO.
Para atualizá-la:

pipx upgrade abin_sim

CONFIGURE

Uso: abin --configure

Gera o arquivo de configuração da aplicação.

LIST

Uso: abin list

Retorna a árvore de Secrets cadastradas no Path obedecendo a referência abaixp
╭─ Referência ──────────────────╮
│                               │ 
│ Vault Environment:            │
│     ├── (env)-(proj)          │
│     │    ├── (api)            │
│                               │
╰─ Referência ──────────────────╯

GET

Uso: abin get [OPTIONS]                                                                                                                            
                                                                                                                                                  
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *  --app                  TEXT  Nome da aplicação que deseja recuperar os secrets. [default: None] [required]                                        │
│ *  --env                  TEXT  Ambiente da aplicação que deseja recuperar (Envs possíveis: dev, qa, main). [default: None] [required]               │
│ *  --proj                 TEXT  Projeto que deseja conectar para recuperar os secrets (Projs possíveis: sim, charrua) [default: None] [required]     │
│    --file    --no-file          Cria um arquivo para cada path cadastrada no secrets. [default: file]                                                │
│    --help                       Show this message and exit.                                                                                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Examplo:
* Imprime os dados no StdOut (Tela)
    abin get --app api-auth --env dev --proj sim --no-file
* Imprime os dados em arquivo (Com base no arquivo $HOME/abin/settings.toml)
    abin get --app api-auth --env dev --proj sim

UPDATE

Uso: abin update [OPTIONS] 
                                           
╭─ Options─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *  --app         TEXT  Nome da aplicação que deseja recuperar os secrets. [default: None]  [required]                                        │
│ *  --env         TEXT  Ambiente da aplicação que deseja recuperar (Envs possíveis: dev, qa, main). [default: None] [required]                │
│ *  --proj        TEXT  Projeto que deseja conectar para recuperar os secrets (Projs possíveis: sim, charrua) [default: None] [required]      │
│    --secret      TEXT  Secret que será atualizada no Vault (Ex.: env, gcp.json, config.yaml ...) [default: env]                              │
│ *  --file        TEXT  Arquivo com variárias de ambiente [default: None] [required]                                                          │
│    --help              Show this message and exit.                                                                                           │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Eexamplo:
    abin update --app api-auth --env dev --proj sim --file .env  (para atualizar outro secret use --secret NOME)

COMPARE

Uso: abin compare [OPTIONS]

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *  --app                  TEXT  Nome da aplicação que deseja recuperar os secrets. [default: None] [required]                                            │
│ *  --env                  TEXT  Ambiente da aplicação que deseja recuperar (Envs possíveis: dev, qa, main). [default: None] [required]                   │
│ *  --proj                 TEXT  Projeto que deseja conectar para recuperar os secrets (Projs possíveis: sim, charrua) [default: None] [required]         │
│    --help                       Show this message and exit.                                                                                              │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Eexamplo:
    abin compare --app api-auth --env qa,dev --proj sim

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abin_sim-1.2.10.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

abin_sim-1.2.10-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file abin_sim-1.2.10.tar.gz.

File metadata

  • Download URL: abin_sim-1.2.10.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.2.0-1018-azure

File hashes

Hashes for abin_sim-1.2.10.tar.gz
Algorithm Hash digest
SHA256 43253d51cd259179103a2944708427a7c56600c581077fd990b461621e08066d
MD5 3386d28556d9aa38ad50708d5d535cdd
BLAKE2b-256 219e0358f6c95ad6937d59d30237eb8b0f7a1dc9e513785d1ba9ac0008d365f0

See more details on using hashes here.

File details

Details for the file abin_sim-1.2.10-py3-none-any.whl.

File metadata

  • Download URL: abin_sim-1.2.10-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.2.0-1018-azure

File hashes

Hashes for abin_sim-1.2.10-py3-none-any.whl
Algorithm Hash digest
SHA256 ed0889ee9b510cbee8498924635721521261155891df400e25de318b15d99527
MD5 76d09d16a589a1f85680bf8d34c6347e
BLAKE2b-256 aaa389b5b688c26f117930e4db4c61357eb7c20147003e2b90332c4a5dc71af2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page