test2
All checks were successful
Run Ansible / install_ansible (push) Successful in 48s

This commit is contained in:
master of disaster
2025-12-10 23:36:44 +01:00
parent ca5fcc77ea
commit b4107fb224

View File

@@ -0,0 +1,78 @@
name: Run Ansible
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
# Ermöglicht manuellen Start des Workflows über die GitHub UI
workflow_dispatch:
jobs:
install_ansible:
runs-on: ubuntu-latest
steps:
# - name: Konfiguriere SSH-Schlüssel in den Runner laden
# uses: webfactory/ssh-agent@v0.9.0
# with:
# ssh-private-key: ${{ secrets.SSHKEY }}
# - name: Deaktiviere StrictHostKeyChecking für Gitea Host
# run: |
# # Ersetze DEIN_GITEA_HOST durch den Hostnamen deines Gitea-Servers
# DEIN_GITEA_HOST="gitea.mod.home"
#
# # Erstelle oder editiere die globale SSH-Konfiguration
# mkdir -p ~/.ssh
# echo "Host $DEIN_GITEA_HOST" >> ~/.ssh/config
# echo " StrictHostKeyChecking no" >> ~/.ssh/config
# echo " UserKnownHostsFile /dev/null" >> ~/.ssh/config
#
# # Optional: Gib die Konfiguration aus, um sie zu prüfen
# cat ~/.ssh/config
- name: Setup SSH for submodules
run: |
echo "Key length: ${#SSH_PRIVATE_KEY}"
mkdir -p $HOME/.ssh
echo "$SSH_PRIVATE_KEY" | base64 -d > $HOME/.ssh/id_ed25519
chmod 600 $HOME/.ssh/id_ed25519
ls -laR
# ssh-keyscan -t rsa -p 2222 gitlab.mod.home > $HOME/.ssh/known_hosts
echo "Host *" >> ~/.ssh/config
echo " StrictHostKeyChecking no" >> ~/.ssh/config
echo " UserKnownHostsFile /dev/null" >> ~/.ssh/config
env:
SSH_PRIVATE_KEY: ${{ secrets.SSHKEY_B64 }}
- name: Checkout Repository
uses: actions/checkout@v4
submodules: recursive
fetch-depth: 0
# Python 3 installieren, was für pip und Ansible notwendig ist
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x' # Wählt die neueste Python 3 Version
# Abhängigkeiten aktualisieren und Ansible über pip installieren
- name: Install Ansible via pip
run: |
python -m pip install --upgrade pip
pip install ansible
# vault file anlegen
- name: create vault file
run: echo "${{ secrets.ANSIBLE_VAULT_KEY }}" > .vault_pass.txt
# - name: Manuelles Submodule Update
# run: |
# git submodule init
# # Hier wird der SSH-Fehler wahrscheinlich auftreten
# git submodule update --recursive --init --force
# # Optional: Version prüfen, um die erfolgreiche Installation zu bestätigen
- name: Verify Ansible Installation
run: ansible --version
- name: Validate Ansible inventory
run: |
SUBMODULE_FOLDER="inventory"
ansible-inventory --graph
- name: list inventory directory
run: ls -R .