Update to 2021-12-01 19:13

This commit is contained in:
Daniel Berteaud
2021-12-01 19:13:34 +01:00
commit 4c4556c660
2153 changed files with 60999 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
---
rust_root_dir: /opt/rust

4
roles/rust/meta/main.yml Normal file
View File

@@ -0,0 +1,4 @@
---
dependencies:
- role: mkdir

View File

@@ -0,0 +1,7 @@
---
- name: Cleanup temp files
file: path={{ item }} state=absent
loop:
- "{{ rust_root_dir }}/tmp/rustup-init"
tags: rust

View File

@@ -0,0 +1,8 @@
---
- name: Create directories
file: path={{ rust_root_dir }}/{{ item }} state=directory
loop:
- tmp
- bin
tags: rust

View File

@@ -0,0 +1,6 @@
---
- name: Check if rust is installed
stat: path={{ rust_root_dir }}/update-hashes/stable-x86_64-unknown-linux-gnu
register: rust_hash
tags: rust

View File

@@ -0,0 +1,43 @@
---
- when: not rust_hash.stat.exists
block:
- name: Download rustup script
get_url:
url: https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init
dest: "{{ rust_root_dir }}/tmp"
mode: 755
tags: rust
- name: Install rust
command: "{{ rust_root_dir }}/tmp/rustup-init -y --no-modify-path"
environment:
- RUSTUP_HOME: "{{ rust_root_dir }}"
- CARGO_HOME: "{{ rust_root_dir }}"
tags: rust
- when: rust_hash.stat.exists and (ansible_date_time.epoch | int - rust_hash.stat.mtime) > (30 * 60 * 60 * 24)
block:
- name: Update rust
command: "{{ rust_root_dir }}/bin/rustup update"
environment:
- RUSTUP_HOME: "{{ rust_root_dir }}"
- CARGO_HOME: "{{ rust_root_dir }}"
tags: rust
- name: Include rust dir in PATH
copy:
content: |
#!/bin/bash
export PATH="{{ rust_root_dir }}/bin:$PATH"
export RUSTUP_HOME={{ rust_root_dir }}
export CARGO_HOME={{ rust_root_dir }}
dest: /etc/profile.d/rust.sh
mode: 755
tags: rust
- name: Install bash completion
shell: "{{ rust_root_dir }}/bin/rustup completions bash > /etc/bash_completion.d/rust"
args:
creates: /etc/bash_completion.d/rust
tags: rust

View File

@@ -0,0 +1,6 @@
---
- include: facts.yml
- include: directories.yml
- include: install.yml
- include: cleanup.yml