diff --git a/bitwarden.yml b/bitwarden.yml new file mode 100644 index 0000000..4dc816c --- /dev/null +++ b/bitwarden.yml @@ -0,0 +1,8 @@ +--- +- name: install bw-cli + become: yes + become_user: root + become_method: sudo + command: npm install -g @bitwarden/cli + args: + creates: /usr/local/bin/bw diff --git a/chezmoi.yml b/chezmoi.yml new file mode 100644 index 0000000..446e9e0 --- /dev/null +++ b/chezmoi.yml @@ -0,0 +1,5 @@ +--- +- name: install chezmoi + shell: mkdir -p ~/.local/bin && sh -c "$(curl -fsLS git.io/chezmoi)" && mv ~/bin/chezmoi ~/.local/bin/ + args: + creates: "{{ ansible_env.HOME }}/.local/bin/chezmoi" diff --git a/cloud-tools.yml b/cloud-tools.yml new file mode 100644 index 0000000..7af0227 --- /dev/null +++ b/cloud-tools.yml @@ -0,0 +1,93 @@ +--- +- name: create bin directory + command: mkdir -p ~/.local/bin + args: + creates: "{{ ansible_env.HOME }}/.local/bin/" + +- name: install sops freebsd + become: yes + become_user: root + become_method: sudo + when: ansible_facts['system']|lower == 'freebsd' + community.general.pkgng: + name: sops + state: present + +- name: install sops linux + command: curl -Lo ~/.local/bin/sops https://github.com/mozilla/sops/releases/download/v3.7.1/sops-v3.7.1.linux + when: ansible_facts['system']|lower == 'linux' + args: + creates: "{{ ansible_env.HOME }}/.local/bin/sops" + +- name: install helm freebsd + become: yes + become_user: root + become_method: sudo + when: ansible_facts['system']|lower == 'freebsd' + community.general.pkgng: + name: helm + state: present + +- name: install latest helm linux + shell: cd /tmp && curl -Lo helm.tar.gz https://get.helm.sh/helm-$(curl -L https://api.github.com/repos/helm/helm/releases/latest | jq -r '.tag_name')-linux-amd64.tar.gz && tar xvzf helm.tar.gz && install -m 755 linux-amd64/helm ~/.local/bin/helm && rm -rf helm.tar.gz linux-amd64 + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/helm" + +- name: install kubectl freebsd + become: yes + become_user: root + become_method: sudo + when: ansible_facts['system']|lower == 'freebsd' + community.general.pkgng: + name: kubectl + state: present + +- name: install latest kubectl linux + shell: curl -Lo ~/.local/bin/kubectl "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" && chmod 755 ~/.local/bin/kubectl + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/kubectl" + +- name: install kops freebsd + become: yes + become_user: root + become_method: sudo + when: ansible_facts['system']|lower == 'freebsd' + community.general.pkgng: + name: kops + state: present + +- name: install latest kops linux + shell: curl -Lo ~/.local/bin/kops $(curl -L https://api.github.com/repos/kubernetes/kops/releases/latest | jq -r '.assets[] | select(.name == "kops-linux-amd64") | .browser_download_url') && chmod 755 ~/.local/bin/kops + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/kops" + +- name: install k9s-HEAD freebsd + when: ansible_facts['system']|lower == 'freebsd' + shell: cd ~/dev && git clone https://github.com/derailed/k9s.git k9s && cd k9s && gmake build && install -m 755 ./execs/k9s ~/.local/bin/k9s && cd .. && rm -rf k9s + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/k9s" + +- name: install newest k9s linux + when: ansible_facts['system']|lower == 'linux' + shell: curl -Lo ~/.local/bin/k9s $(curl -L https://api.github.com/repos/derailed/k9s/releases/latest | jq -r '.assets[] | select(.name == "k9s_Linux_x86_64.tar.gz") | .browser_download_url') && chmod 755 ~/.local/bin/k9s + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/k9s" + +- name: install stern-HEAD freebsd + when: ansible_facts['system']|lower == 'freebsd' + shell: go get github.com/wercker/stern && go build github.com/wercker/stern && go install github.com/wercker/stern + args: + creates: "{{ ansible_env.HOME }}/go/bin/stern" + +- name: install newest stern linux + when: ansible_facts['system']|lower == 'linux' + shell: curl -Lo ~/.local/bin/stern $(curl -L https://api.github.com/repos/wercker/stern/releases/latest | jq -r '.assets[] | select(.name == "stern_linux_amd64") | .browser_download_url') && chmod 755 ~/.local/bin/stern + args: + warn: False + creates: "{{ ansible_env.HOME }}/.local/bin/stern" + diff --git a/dnf.yml b/dnf.yml index 2673a72..4b67360 100644 --- a/dnf.yml +++ b/dnf.yml @@ -4,5 +4,5 @@ become_user: root become_method: sudo dnf: - name: jq,vim,emacs,curl,htop,tmux,git,sqlite,sqlite-devel,make,automake,gcc,gcc-c++,kernel-devel,llvm,cmake,awscli,skopeo,ShellCheck,libtool,alien,fakeroot,openssl-devel,zlib-devel,flex,bison,uuid-devel,libtirpc-devel,libaio-devel,elfutils-libelf-devel,libffi-devel,libudev-devel,libblkid-devel,libuuid-devel,podman,libvirt-daemon-kvm,qemu-kvm,most,fzf,nodejs,npm,golang,llvm10,clang + name: jq,vim,emacs,curl,htop,tmux,git,sqlite,sqlite-devel,make,automake,gcc,gcc-c++,kernel-devel,llvm,cmake,awscli,skopeo,ShellCheck,libtool,alien,fakeroot,openssl-devel,zlib-devel,flex,bison,uuid-devel,libtirpc-devel,libaio-devel,elfutils-libelf-devel,libffi-devel,libudev-devel,libblkid-devel,libuuid-devel,podman,libvirt-daemon-kvm,qemu-kvm,most,fzf,nodejs,npm,llvm10,clang state: present diff --git a/go.yml b/go.yml new file mode 100644 index 0000000..70d4774 --- /dev/null +++ b/go.yml @@ -0,0 +1,34 @@ +--- +- name: install go freebsd + become: yes + become_user: root + become_method: sudo + when: ansible_facts['system']|lower == 'freebsd' + community.general.pkgng: + name: go + state: present + +- name: install golang fedora + become: yes + become_user: root + become_method: sudo + when: ansible_facts['os_family']|lower == 'fedora' + dnf: + name: golang + state: present + +- name: configure GOPATH / GOBIN + file: + state: directory + path: "{{ ansible_env.HOME }}/go/bin" + mode: "0700" + +- name: install judo + command: go get github.com/rollcat/judo + args: + creates: "{{ ansible_env.HOME }}/go/bin/judo" + +- name: install shfmt + shell: GO111MODULE=on go get mvdan.cc/sh/v3/cmd/shfmt + args: + creates: "{{ ansible_env.HOME }}/go/bin/shfmt" diff --git a/localdev.yml b/localdev.yml index e65affe..33c4764 100644 --- a/localdev.yml +++ b/localdev.yml @@ -24,3 +24,15 @@ - name: Configure gnome settings import_tasks: gnome.yml + + - name: Install bitwarden cli + import_tasks: bitwarden.yml + + - name: Install chezmoi + import_tasks: chezmoi.yml + + - name: Install and configure golang + import_tasks: go.yml + + - name: Install cloud tools + import_tasks: cloud-tools.yml diff --git a/pkg.yml b/pkg.yml index 472c398..dc3906a 100644 --- a/pkg.yml +++ b/pkg.yml @@ -4,7 +4,7 @@ become_user: root become_method: sudo community.general.pkgng: - name: libtool,autogen,libuv,gettext,autoconf,automake,gmake,coreutils,bash,tmux,git,most,node,npm,go,cmake,llvm10 + name: libtool,autogen,libuv,gettext,autoconf,automake,gmake,coreutils,bash,tmux,git,most,node,npm,cmake,llvm10 state: present - name: install desktop pkg applications