mirror of
https://gitea.fenix-dev.com/fenix-gitea-admin/iac-ansible-private.git
synced 2026-03-22 04:19:48 +00:00
Compare commits
13 Commits
077ac6f39b
...
f34763271e
| Author | SHA1 | Date | |
|---|---|---|---|
| f34763271e | |||
| 1456906d65 | |||
| 87e269c4b0 | |||
| b172e24a0e | |||
| c850375dd4 | |||
| 9e7f5be196 | |||
| e64863f887 | |||
| c0a8b0b00a | |||
| 2b060b27f0 | |||
| 895dacd28d | |||
| d5ed666c77 | |||
| 6b864989f5 | |||
| b4b99298e7 |
@ -35,6 +35,7 @@ jobs:
|
||||
bw login --apikey
|
||||
echo "session"
|
||||
BW_SESSION=$(bw unlock "$BW_PASSWORD" --raw)
|
||||
echo "BW_SESSION=$BW_SESSION" >> $GITEA_ENV
|
||||
|
||||
|
||||
- name: Cloning ansible repository
|
||||
@ -55,4 +56,6 @@ jobs:
|
||||
- name: Run Ansible Playbook
|
||||
working-directory: ansible/iac
|
||||
run: |
|
||||
ansible-playbook -i inventory.ini playbook.yml
|
||||
ansible-playbook -i inventory.ini playbook.yml
|
||||
env:
|
||||
BW_SESSION: ${{ env.BW_SESSION }}
|
||||
@ -3,6 +3,7 @@
|
||||
become: yes
|
||||
roles:
|
||||
- common
|
||||
- vaultwarden
|
||||
- kubernetes
|
||||
- kube-master
|
||||
- stolon
|
||||
@ -12,5 +13,6 @@
|
||||
become: yes
|
||||
roles:
|
||||
- common
|
||||
- vaultwarden
|
||||
- kubernetes
|
||||
- kube-node
|
||||
|
||||
@ -21,6 +21,18 @@
|
||||
shell: ls -l /tmp/stolon/kubernetes-files/files
|
||||
register: resultado_ls
|
||||
|
||||
- name: Obter várias notas do Bitwarden
|
||||
shell: |
|
||||
export BW_SESSION={{ lookup('env', 'BW_SESSION') }}
|
||||
bw get item "{{ item.id }}" --session $BW_SESSION | jq -r '.notes' > {{ item.dest }}
|
||||
loop:
|
||||
- { id: "iac.ansible.dockersecrets", dest: "/tmp/stolon/kubernetes-files/files/docker-secrets.yaml" }
|
||||
- { id: "iac.ansible.stolon.repl.secret", dest: "/tmp/stolon/kubernetes-files/files/stolon-repl-secret.yaml" }
|
||||
- { id: "iac.ansible.stolon.keeper.secret", dest: "/tmp/stolon/kubernetes-files/files/stolon-secret.yaml" }
|
||||
args:
|
||||
executable: /bin/bash
|
||||
|
||||
|
||||
- name: Mostrar resultado do ls
|
||||
debug:
|
||||
var: resultado_ls.stdout_lines
|
||||
|
||||
65
roles/vaultwarden/tasks/main.yml
Normal file
65
roles/vaultwarden/tasks/main.yml
Normal file
@ -0,0 +1,65 @@
|
||||
- name: Atualizar pacotes e instalar dependências básicas
|
||||
become: true
|
||||
apt:
|
||||
name:
|
||||
- curl
|
||||
- git
|
||||
- unzip
|
||||
- jq
|
||||
- gnupg
|
||||
- ca-certificates
|
||||
state: present
|
||||
update_cache: true
|
||||
|
||||
- name: Adicionar repositório NodeSource para Node.js 20
|
||||
become: true
|
||||
shell: curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
|
||||
args:
|
||||
executable: /bin/bash
|
||||
|
||||
- name: Instalar Node.js 20
|
||||
become: true
|
||||
apt:
|
||||
name: nodejs
|
||||
state: present
|
||||
update_cache: true
|
||||
|
||||
- name: Verificar versão do Node.js
|
||||
command: node -v
|
||||
register: node_version
|
||||
changed_when: false
|
||||
|
||||
- name: Verificar versão do npm
|
||||
command: npm -v
|
||||
register: npm_version
|
||||
changed_when: false
|
||||
|
||||
- name: Instalar Bitwarden CLI via npm
|
||||
become: true
|
||||
shell: npm install -g @bitwarden/cli
|
||||
args:
|
||||
executable: /bin/bash
|
||||
|
||||
- name: Verificar instalação do Bitwarden CLI
|
||||
command: bw --version
|
||||
register: bw_version
|
||||
failed_when: bw_version.rc != 0
|
||||
|
||||
- name: Fazer login no Bitwarden
|
||||
shell: |
|
||||
echo "config"
|
||||
echo "VAULTWARDEN_LINK: {{ VAULTWARDEN_LINK }}"
|
||||
bw config server {{ VAULTWARDEN_LINK }}
|
||||
echo "login"
|
||||
bw login --apikey
|
||||
args:
|
||||
executable: /bin/bash
|
||||
register: bw_login
|
||||
|
||||
- name: Desbloquear cofre e guardar sessão
|
||||
shell: bw unlock --password {{ bw_password }} --raw
|
||||
register: bw_session
|
||||
|
||||
- name: Exportar sessão para ambiente local
|
||||
shell: echo "export BW_SESSION={{ bw_session.stdout }}" >> /etc/profile.d/bw-session.sh
|
||||
become: true
|
||||
4
roles/vaultwarden/vars/main.yml
Normal file
4
roles/vaultwarden/vars/main.yml
Normal file
@ -0,0 +1,4 @@
|
||||
bw_password: "{{ lookup('env', 'BW_PASSWORD') }}"
|
||||
VAULTWARDEN_LINK: "{{ lookup('env', 'VAULTWARDEN_LINK') }}"
|
||||
BW_CLIENTID: "{{ lookup('env', 'BW_CLIENTID') }}"
|
||||
BW_CLIENTSECRET : "{{ lookup('env', 'BW_CLIENTSECRET') }}"
|
||||
Reference in New Issue
Block a user