Skip to content

CI/CD

Raw steps : convert to workflow

storage : nas
    nfs share to mounted into docker    

main provisioning repositry - github
ssh config
ssh keys

clore provisioning repo to provisioning server
bastion - provision server
install ansible
run ansible-playbook test ping
run ansible playbook to provision new proxy
    docker
    bpytop
    portainer
    authentic
    trafic

vm provisioning in proxmox

prerequisites:

  • Storage
    • NFS share with credentials (ssh keys)
  • Credentials management ssh

    • Mount nfs share with ssh keys
  • Source code

    • GitHub repository
      • Ansible playbooks

Storage

Credentials Management

compute (proxmox)

  • Download ubuntu 22.04 cloud init

    cloud init

[group1]
server1

[group2]
server2

[group1:vars]
ansible_ssh_user=vagrant
ansible_ssh_common_args='-F ssh1.cfg'

[group2:vars]
ansible_ssh_user=vagrant
ansible_ssh_common_args='-F ssh2.cfg'

$ cat ssh1.cfg

Host server1
     HostName 192.168.1.1
     User someuser
     Port 22
     IdentityFile /path/to/id_rsa

homelab provision vm

Storage

nas.homelab.lan:/volume1/cicd/homelab