Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/den-is/ansible-collection-tools
Minimalistic tools collection
https://github.com/den-is/ansible-collection-tools
ansible
Last synced: about 1 month ago
JSON representation
Minimalistic tools collection
- Host: GitHub
- URL: https://github.com/den-is/ansible-collection-tools
- Owner: den-is
- License: mit
- Created: 2024-06-02T10:10:20.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-09-18T07:34:17.000Z (3 months ago)
- Last Synced: 2024-09-18T10:06:46.369Z (3 months ago)
- Topics: ansible
- Language: Jinja
- Homepage: https://galaxy.ansible.com/ui/repo/published/den_is/tools/
- Size: 189 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# den_is.tools - Ansible collection
Minimalistic ansbile collection.
This Ansible collection automates the installation of various tools, services and environments.
- It includes tools that typically require manual installation or OS-native package repositories have outdated versions.
- This collection is particularly useful for Linux hosts, which often lack these tools or have outdated versions.Roles in this collection are extremely minimalistic and at some places ugly.
It may lack some features compared to more comprehensive roles/collections.- Linux hosts are the primary target for this collection, followed by macOS.
- Windows is mostly unsupported.Contributions are welcome.
## Available tools
```sh
├── age
├── awscli
├── bat
├── croc
├── direnv
├── eza
├── fd
├── fzf
├── git_delta
├── haproxy
├── iaac
│ ├── atlantis
│ ├── opentofu
│ ├── packer
│ ├── terraform
│ ├── terragrunt
│ └── terragrunt-atlantis-config
├── k8s
│ ├── flux
│ ├── helm
│ ├── helmfile
│ ├── k3d
│ ├── k9s
│ ├── kind
│ ├── kubecolor
│ ├── kubectl
│ ├── kubectx
│ ├── kubefwd
│ ├── kubeps1
│ ├── kubie
│ ├── kustomize
│ ├── stern
│ └── talosctl
├── minio
├── ohmyzsh
├── pyenv
├── rclone
├── restic
├── ripgrep
├── sops
├── yq
└── zoxide
```## Installation
```sh
# Installing from galaxy
ansible-galaxy collection install den_is.tools# Local dev installation
# By default installs into ~/.ansible/collections/ansible_collections/den_is/tools
ansible-galaxy collection install ~/projects/ansible_collections/den_is/tools
ansible-galaxy collection install ~/projects/ansible_collections/den_is/tools --upgradeansible-galaxy collection build
ansible-galaxy collection install den_is-tools-0.0.1.tar.gz -p ./collectionsansible-galaxy collection install git+https://github.com/den-is/ansible-collection-tools.git
```## Usage
- Install collection using one of the methods listed above or in [Ansible Collections](https://docs.ansible.com/ansible/latest/collections_guide/collections_installing.html) doc
- Create playbook
```yaml
---
- name: Install common tools
hosts: all
become: false
environment:
PATH: "/home/den/.local/bin:{{ ansible_env.PATH }}"
vars:
# set top-level playbook variables
terragrunt_v: v0.58.12
terragrunt_bin_dst: ~/.local/bintasks:
- name: Install terragrunt in user's home
ansible.builtin.import_role:
name: den_is.tools.iaac.terragrunt
tags: tg- name: Install OpenTofu in user's home
ansible.builtin.import_role:
name: den_is.tools.iaac.opentofu
vars:
# set role import variables
opentofu_v: v1.7.1
opentofu_bin_dst: ~/.local/bin
tags: tofu- name: Install helm globally using role defaults
ansible.builtin.import_role:
name: den_is.tools.k8s.helm
become: true
tags: helm
```
- Run ansible-playbook providing hosts inventory using one of the many methods:
```sh
ansible-playbook -i ',' common-tools-setup.yaml
```