github.com/ava-labs/avalanchego@v1.11.11/.github/packer/roles/public-ami/tasks/main.yml (about)

     1  - name: Setup gpg key
     2    apt_key:
     3      url: https://downloads.avax.network/avalanchego.gpg.key
     4      state: present
     5  
     6  - name: Setup avalanchego repo
     7    apt_repository:
     8      repo: deb https://downloads.avax.network/apt jammy main
     9      state: present
    10  
    11  - name: Setup golang repo
    12    apt_repository:
    13      repo: ppa:longsleep/golang-backports 
    14      state: present
    15  
    16  - name: Install go
    17    apt:
    18      name: golang
    19      state: latest
    20  
    21  - name: Update git clone
    22    git:
    23      repo: "{{ repo_url }}"
    24      dest: "{{ repo_folder }}"
    25      version: "{{ tag }}"
    26      update: yes
    27      force: yes
    28  
    29  - name: Setup systemd
    30    template:
    31      src: templates/avalanchego.service.j2
    32      dest: /etc/systemd/system/avalanchego.service
    33      mode: 0755
    34  
    35  - name: Create avalanche user
    36    user:
    37      name: "{{ ava_user }}"
    38      shell: /bin/bash
    39      uid: "{{ ava_uid }}"
    40      group: "{{ ava_group }}"
    41  
    42  - name: Create avalanche config dir
    43    file:
    44      path: /etc/avalanchego
    45      owner: "{{ ava_user }}"
    46      group: "{{ ava_group }}"
    47      state: directory
    48  
    49  - name: Create avalanche log dir
    50    file:
    51      path: "{{ log_dir }}"
    52      owner: "{{ ava_user }}"
    53      group: "{{ ava_group }}"
    54      state: directory
    55  
    56  - name: Create avalanche database dir
    57    file:
    58      path: "{{ db_dir }}"
    59      owner: "{{ ava_user }}"
    60      group: "{{ ava_group }}"
    61      state: directory
    62  
    63  - name: Build avalanchego
    64    command: ./scripts/build.sh
    65    args:
    66      chdir: "{{ repo_folder }}"
    67  
    68  - name: Copy avalanchego binaries to the correct location
    69    command: cp build/avalanchego /usr/local/bin/avalanchego
    70    args:
    71      chdir: "{{ repo_folder }}"
    72  
    73  - name: Configure avalanche 
    74    template:
    75      src: templates/conf.json.j2
    76      dest: /etc/avalanchego/conf.json
    77      mode: 0644
    78  
    79  - name: Enable Avalanche
    80    systemd:
    81      name: avalanchego
    82      enabled: yes