Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/39services/ansible_role_rust

Ansible Role to install Rustup and versions of Rust
https://github.com/39services/ansible_role_rust

Last synced: 8 days ago
JSON representation

Ansible Role to install Rustup and versions of Rust

Awesome Lists containing this project

README

        

Ansible Role Rust
=========

[![Molecule Test](https://github.com/diademiemi/ansible_role_rust/actions/workflows/molecule.yml/badge.svg)](https://github.com/diademiemi/ansible_role_rust/actions/workflows/molecule.yml)

This is an Ansible role to install and configure Rust.

This role can install Rust using system packages or rustup.

When running on an unsupported platform, rustup is used, no guarantees are made that this will work.

Requirements
------------
These platforms are supported:
- Ubuntu 20.04
- Ubuntu 22.04
- Debian 11
- Debian 12
- EL 8 (Tested on Rocky Linux 8)
- EL 9 (Tested on Rocky Linux 9)
- Fedora 40
- openSUSE Leap 15.5

Role Variables
--------------

Variable | Default | Description
--- | --- | ---
`rust_use_rustup` | `true` | Whether to use rustup to install Rust\
`rust_rustup_ensure_wget` | `true` | Whether to try to install wget if it is not installed. Requires a become password.
`rust_rustup_toolchains` | `["stable"]` | List of rustup toolchains to install
`rust_rustup_default_toolchain` | `{{ rust_rustup_toolchains[0] }}` | The default rustup toolchain
`rust_rustup_update` | `false` | Whether to update toolchains after installation
`rust_rustup_user` | `{{ ansible_user_id }}` | The user to install rustup for

Dependencies
------------

None

Example Playbook
----------------

```yaml
- role: "diademiemi.rust"
tags: ['diademiemi', 'rust', 'setup'] ```

```

License
-------

MIT

Author Information
------------------

- diademiemi (@diademiemi)

Role Testing
------------

This repository comes with Molecule that run in Podman on the supported platforms.
Install Molecule by running

```bash
pip3 install -r requirements.txt
```

Run the tests with

```bash
molecule test
```

These tests are automatically ran by GitHub Actions on push. If the tests are successful, the role is automatically published to Ansible Galaxy.