fixing variable usage and deploying to headless machine

This commit is contained in:
Kyle Isom 2023-04-11 20:19:58 +00:00
parent ce4d2b94a2
commit dacef969e9
6 changed files with 73 additions and 15 deletions

View File

@ -3,13 +3,14 @@ L := "$(shell hostname -s)"
C := -c local
K := -K
P := site.yml
V := -vvv
all: deploy
check:
ansible-playbook -i $I -l $L $C $K --syntax-check $P
ansible-playbook -i $I -l $L $C $K --syntax-check $V $P
deploy:
ansible-playbook -i $I -l $L $C $K $P
ansible-playbook -i $I -l $L $C $K $V $P
.PHONY: all check deploy

View File

@ -2,4 +2,8 @@
petrichor
[worklaptop]
kisom-x1
kisom-x1
[build]
orion

View File

@ -25,3 +25,12 @@
- tree
- unzip
- zsh
- name: set up tools specifically for headless systems
when: headless
become: true
ansible.builtin.apt: name={{ item }} state=present
with_items:
- emacs-nox
- vim-nox

View File

@ -1,2 +1,6 @@
go_version: 1.20.3
bazelisk_version: 1.16.0
dev_embedded: False
dev_full: False
dev_rust: False
dev_virt: False

View File

@ -9,7 +9,6 @@
- cloc
- cmake
- devscripts
- erlang
- gcc
- golang-google-genproto-dev
- golang-goprotobuf-dev
@ -28,6 +27,20 @@
- zlib1g
- zlib1g-dev
- name: install dev tools with guis
when: not headless
become: true
ansible.builtin.apt: name={{ item }} state=present
with_items:
- erlang
- name: install headless dev tools
when: headless
become: true
ansible.builtin.apt: name={{ item }} state=present
with_items:
- erlang-nox
## golang
- name: install godeb
become: true
@ -108,15 +121,21 @@
- qemu-system-arm
- qemu-system
- qemu-system-x86
- qemu-system-gui
- qemu-user-static
- sbuild-qemu
- seabios
- u-boot-qemu
- virt-manager
- virt-top
notify: "restart docker service"
- name: install container and virtualisation GUIs
when: (dev_virt or dev_full) and not headless
become: true
ansible.builtin.apt: name={{ item }} state=present
with_items:
- qemu-system-gui
- virt-manager
- name: Ensure kvm group exists
when: dev_virt or dev_full
become: true
@ -158,10 +177,15 @@
- gcc-avr
- libstdc++-arm-none-eabi-newlib
- picocom
- name: install embedded dev guis
when: (dev_virt or dev_full) and not headless
become: true
ansible.builtin.apt: name={{ item }} state=present
with_items:
- pulseview
- sigrok
## documentation stuff
- name: install documentation tooling
become: true
@ -176,7 +200,7 @@
## vscode
- name: add VS Code repo key
when: dev_full
when: dev_full and not headless
become: true
ansible.builtin.apt_key:
url: https://packages.microsoft.com/keys/microsoft.asc
@ -184,7 +208,7 @@
validate_certs: yes
- name: add VS Code repo
when: dev_full
when: dev_full and not headless
become: true
ansible.builtin.apt_repository:
repo: deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main
@ -192,20 +216,20 @@
validate_certs: yes
- name: install VS Code
when: dev_full
when: dev_full and not headless
become: true
ansible.builtin.apt: name=code state=present
## rust
- name: check if cargo is installed
when: dev_full
when: dev_rust or dev_full
shell: command -v cargo
register: cargo_exists
ignore_errors: yes
- name: Download Installer
when: dev_full and cargo_exists is failed
when: (dev_rust or dev_full) and (cargo_exists is failed)
get_url:
url: https://sh.rustup.rs
dest: /tmp/sh.rustup.rs
@ -213,7 +237,7 @@
force: 'yes'
- name: install rust/cargo
when: dev_full and cargo_exists is failed
when: (dev_rust or dev_full) and (cargo_exists is failed)
shell: /tmp/sh.rustup.rs -y

View File

@ -9,7 +9,8 @@
- heavy
vars:
laptop_user: kyle
dev_full: true
headless: False
dev_full: True
- hosts: worklaptop
roles:
@ -21,4 +22,19 @@
- heavy
vars:
laptop_user: k.isom
dev_virt: true
headless: False
dev_virt: True
- hosts: build
roles:
- base
- dotfiles
- development
- server
- tailscale
vars:
laptop_user: kyle
headless: True
dev_virt: True
dev_embedded: True
dev_rust: True