bodsch.awscli

Rola Ansible: awscli

Rola Ansible do konfiguracji narzędzi aws-cli.

Status Workflow na GitHubie Problemy na GitHubie Wydanie na GitHubie (ostatnie według daty) Pobrania Ansible

Jeśli wartość latest jest ustawiona dla awscli_version, rola próbuje zainstalować najnowszą wersję.
Używaj tego ostrożnie, ponieważ mogą wystąpić niezgodności między wersjami!

Pliki binarne są instalowane w /usr/local/bin/aws_${awscli_version} i później linkowane do /usr/local/bin/aws. Powinno to umożliwić relatywnie bezpieczną regresję do starszej wersji.

Archiwum AWSCLI jest przechowywane na kontrolerze Ansible i później kopiowane na system docelowy. Katalog cache można zdefiniować za pomocą zmiennej środowiskowej CUSTOM_LOCAL_TMP_DIRECTORY. Domyślnie jest to ${HOME}/.cache/ansible/awscli. Jeśli ten typ instalacji nie jest pożądany, pobranie może odbyć się bezpośrednio na systemie docelowym. Musisz to jednak jawnie aktywować, ustawiając awscli_direct_download na true.

Wymagania i zależności

Zbiory Ansible

ansible-galaxy collection install bodsch.core
ansible-galaxy collection install bodsch.scm

lub

ansible-galaxy collection install --requirements-file collections.yml

Najnowsza wersja awscli

Obecnie dostępna jest tylko jedna stara wersja (2.0.0).
Jednak aktualne tagi można zweryfikować na GitHubie.

Systemy operacyjne

Testowane na

  • Arch Linux
  • Artix Linux
  • Systemy oparte na Debianie
    • Debian 10 / 11 / 12
    • Ubuntu 20.10 / 22.04

Systemy oparte na RedHat nie są już oficjalnie wspierane! Mogą działać, ale nie muszą.

Użycie

awscli_version: 2.2.33

awscli_download_url: "https://awscli.amazonaws.com/awscli-exe-linux-x86_64{{ '' if awscli_version == 'latest' else '-' + awscli_version }}.zip"
awscli_archiv: "aws-cli{{ '' if awscli_version == 'latest' else '-' + awscli_version }}.zip"

awscli_direct_download: false

awscli_config: "config.j2"
awscli_credentials: "credentials.j2"

awscli_users: {}

Poświadczenia AWS

Obsługuje wiele poświadczeń dla każdego użytkownika.

Każdy użytkownik może mieć więcej niż jeden profil.

Każdy profil, który nie jest default, otrzymuje odpowiedni prefiks profilu.

Poniższy przykład tworzy te pliki konfiguracyjne i poświadczeń:

cat /var/lib/jenkins/.aws/config
[default]
region = eu-central-1
output = json

[profile us-west]
region = us-west-1
output = text
cat /var/lib/jenkins/.aws/credentials
[default]
aws_access_key_id = molecule-aws-access-key-id
aws_secret_access_key = molecule-aws-secret-access-key

[us-west]
aws_access_key_id = molecule-aws-access-key-id_2
aws_secret_access_key = molecule-aws-secret-access-key_2
awscli_users:
  jenkins:
    profiles:
      default:
        region: "eu-central-1"
        output: "json"
        access_key_id: "molecule-aws-access-key-id"
        secret_access_key: "molecule-aws-secret-access-key"
      us-west:
        region: "us-west-1"
        access_key_id: "molecule-aws-access-key-id_2"
        secret_access_key: "molecule-aws-secret-access-key_2"
    home: "/var/lib"
    group: "jenkins"

Jak używać nazwanych profili AWS

Wkład

Proszę przeczytać Wkład

Rozwój, gałęzie (tagi Git)

Gałąź master to mój Koń Roboczy, zawiera "najnowsze, najbardziej aktualne" i może być całkowicie zepsuta!

Jeśli chcesz używać czegoś stabilnego, użyj Wersji Oznaczonej!

Autor

  • Bodo Schulz

Licencja

Apache

DARMOWE OPROGRAMOWANIE, JASNE!

O projekcie

installs, configures aws-cli tools

Zainstaluj
ansible-galaxy install bodsch.awscli
Licencja
apache-2.0
Pobrania
14.1k
Właściciel
ex-developer (c, c++, php), ex-system administrator / engineer, keep-it-simple, monitoring, automation, system architect