config/roles/dev/tasks/truffle.yml

56 lines
1.6 KiB
YAML

- name: Creating truffle dir
ansible.builtin.file:
path: "{{ ansible_env.HOME }}/truffle"
state: directory
mode: a
# install tools
- name: Installing openjdk
become: true
ansible.builtin.dnf5:
name:
- java-latest-openjdk
- maven
state: latest
- name: Creating graalvm dir
ansible.builtin.file:
path: "{{ ansible_env.HOME }}/truffle/graalvm-23"
state: directory
mode: a
- name: Installing graalvm 23
ansible.builtin.unarchive:
remote_src: true
src: "https://download.oracle.com/graalvm/23/latest/graalvm-jdk-23_linux-x64_bin.tar.gz"
dest: "{{ ansible_env.HOME }}/truffle/graalvm-23"
mode: a
keep_newer: true
extra_opts: [--strip-components=1]
- name: Select graalvm as java
become: true
community.general.alternatives:
name: java
link: /usr/bin/java
path: "{{ ansible_env.HOME }}/truffle/graalvm-23/bin/java"
- name: Installing Intellij IDEA
ansible.builtin.include_role:
name: gantsign.intellij
# examples
- name: Clone simple language example
ansible.builtin.git:
repo: "https://github.com/graalvm/simplelanguage"
dest: "{{ ansible_env.HOME }}/truffle/simplelanguage"
version: master
- name: Clone truffle usage tutorial
ansible.builtin.git:
repo: "https://github.com/skinny85/graalvm-truffle-tutorial"
dest: "{{ ansible_env.HOME }}/truffle/graalvm-truffle-tutorial"
version: master
- name: Clone mumbler language example
ansible.builtin.git:
repo: "https://github.com/cesquivias/mumbler"
dest: "{{ ansible_env.HOME }}/truffle/mumbler"
version: master