All Projects → cimon-io → ansible-role-asdf

cimon-io / ansible-role-asdf

Licence: other
No description or website provided.

Programming Languages

Jinja
831 projects

Projects that are alternatives of or similar to ansible-role-asdf

UBUNTU20-CIS
Ansible role for Ubuntu 2004 CIS Baseline
Stars: ✭ 136 (+202.22%)
Mutual labels:  ansible-role
ansible-role-cardano-node
Ansible role for the provisioning of Shelly Cardano binaries from source.
Stars: ✭ 20 (-55.56%)
Mutual labels:  ansible-role
ansible-role-systemd-service
No description or website provided.
Stars: ✭ 37 (-17.78%)
Mutual labels:  ansible-role
kafka role
Ansible role to install Apache Kafka
Stars: ✭ 18 (-60%)
Mutual labels:  ansible-role
RHEL8-STIG
Ansible role for Red Hat 8 STIG Baseline
Stars: ✭ 73 (+62.22%)
Mutual labels:  ansible-role
PrometheusWithGrafana
Setup Prometheus with Grafana dashboard using Ansible
Stars: ✭ 50 (+11.11%)
Mutual labels:  ansible-role
Ansible Playbook Grapher
A command line tool to create a graph representing your Ansible playbook tasks and roles
Stars: ✭ 234 (+420%)
Mutual labels:  ansible-role
ansible-role-harden-linux
Ansible role for hardening Linux
Stars: ✭ 99 (+120%)
Mutual labels:  ansible-role
ansible-role-github-users
Ansible Role - GitHub Users
Stars: ✭ 49 (+8.89%)
Mutual labels:  ansible-role
ansible-backup
Ansible daily backup role
Stars: ✭ 25 (-44.44%)
Mutual labels:  ansible-role
ansible-role-virtualbox
Ansible Role - Installs headless Virtualbox and phpVirtualbox for remote access through Web GUI
Stars: ✭ 14 (-68.89%)
Mutual labels:  ansible-role
ansible-cloudflared
Install cloudflared and systemd service for DNS-Over-HTTPS
Stars: ✭ 18 (-60%)
Mutual labels:  ansible-role
consul role
Ansible role to install Consul (cluster of) server/agent
Stars: ✭ 14 (-68.89%)
Mutual labels:  ansible-role
ansible-role-tailscale
Ansible role to install and configure a Tailscale node.
Stars: ✭ 189 (+320%)
Mutual labels:  ansible-role
monit
Ansible role that configures monit. Will also setup baseline monitoring of SSH, NTP, and Cron.
Stars: ✭ 37 (-17.78%)
Mutual labels:  ansible-role
Rvm1 Ansible
The official ansible RVM role to install and manage your Ruby versions.
Stars: ✭ 246 (+446.67%)
Mutual labels:  ansible-role
ansible-resolv
Ansible role to configure /etc/resolv.conf
Stars: ✭ 44 (-2.22%)
Mutual labels:  ansible-role
ansible-qemu-kvm
Ansible role to provision KVM/QEMU virtual machines
Stars: ✭ 38 (-15.56%)
Mutual labels:  ansible-role
ansible-role-aptly
Install aptly debian respository manager and enable the REST API
Stars: ✭ 37 (-17.78%)
Mutual labels:  ansible-role
ansible-role-auditbeat
Ansible role to install auditbeat for security monitoring. (Ruleset included)
Stars: ✭ 15 (-66.67%)
Mutual labels:  ansible-role

Build Status

Ansible ASDF role

An Ansible Role that installs asdf version manager with plugins.

Requirements

None

Role Variables

Available variables are listed below, along with default values (see defaults/main.yml). The variable asdf_plugins specifies a list of plugins to install:

asdf_plugins: []

Each plugin can be given in the following format:

asdf_plugins:
  - name: "erlang"    # a plugin name
    repository: ""    # a plugin repository, optional
    versions:         # a list of versions to install
      - 18.3
      - 20.1
    global: 20.1      # set as a global version, optional

The variable asdf_user sets a user for which the role is installed:

asdf_user: "deploy"

By default the role installs asdf and its plugins in the ~/.asdf for this user. This behaviour can be changed by setting asdf_dir. This is useful in situations where multiple users need access to installed plugins and tools (e.g. a deploy user, the app user, and possibly developer users).

asdf_dir: "/opt/asdf-vm"

The variable asdf_legacy_version_file specifies if plugins which support this feature should read the version files used by other version managers (e.g. .ruby-version in the case of Ruby's rbenv).

asdf_legacy_version_file: "yes"

The variable asdf_plugin_dependencies sets packages which are needed for plugins (see defaults/main.yml):

asdf_plugin_dependencies: []

The variable asdf_version sets the git tag of asdf:

asdf_version: v0.9.0

Dependencies

None

Example Playbook

Playbook example is given below:

- hosts: web
  roles:
  - role: ansible-role-asdf
    asdf_plugins:
    - name: "erlang"
      versions: ["18.3", "20.1"]
      global: "20.1"
    - name: "elixir"
      versions: "1.3.1"

A more complex example for CentOS is:

- name: install asdf
  hosts: '*'
  become: true
  vars:
    asdf_version: v0.6.2
    asdf_user: ci
    asdf_plugins:
      - name: erlang
      - name: elixir
      - name: nodejs
        versions: ["8.11.3"]
        global: "8.11.3"
  roles:
    - asdf

Installing asdf into a shared directory accessible to the developers group:

- name: install asdf
  hosts: '*'
  become: true
  vars:
    asdf_user: deploy
    asdf_group: developers
    asdf_dir: /opt/asdf-vm
    asdf_plugins:
      - name: erlang
      - name: elixir
      - name: nodejs
        versions: ["8.11.3"]
        global: "8.11.3"
  roles:
    - asdf

License

Licensed under the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].