# vim: set filetype=yaml.ansible : --- - name: Configure go for install when: - "'go' not in __configured" block: - name: Configure go install method when: - go_install_method is undefined ansible.builtin.set_fact: go_install_method: "{% if install_method in go_install_methods %}{{ install_method }}{% else %}{{ go_install_methods[0] }}{% endif %}" - name: Configure go system installation when: - go_install_method == 'system' block: - name: Set go pkgname ansible.builtin.set_fact: go_pkgname: "{{ go_pkgname[ansible_os_family] }}" - name: Set go pkgname for FreeBSD when: - ansible_os_family == 'FreeBSD' ansible.builtin.set_fact: go_pkgname: "{{ go_pkgname[go_bsd_version] | default(go_pkgname['default']) }}" - name: Configure go archive installation when: - go_install_method == 'archive' block: - name: Configure go ansible.builtin.set_fact: go_system: "{{ ansible_system | lower }}" go_arch: "{{ go_archive_archmap[ansible_architecture] }}" - name: Set archive name ansible.builtin.set_fact: go_archive_file: "go{{ go_archive_version }}.{{ go_system }}-{{ go_arch }}.tar.gz" - name: Set go archive url and path ansible.builtin.set_fact: go_archive_url: "{{ go_archive_url_base }}/{{ go_archive_file }}" go_extract_path: "{{ path_archive }}/go{{ go_archive_version }}" - name: Finalize go archive install ansible.builtin.set_fact: go_archive_install: extract_to: "{{ go_extract_path }}" url: "{{ go_archive_url }}" name: "{{ go_archive_file }}" checksum: "{{ go_archive_sums[go_archive_version][ansible_system][go_arch] }}" links: - from: "{{ go_extract_path }}/go" to: "{{ path_go }}" force: true __add_to_path: "{{ __add_to_path + [path_go ~ '/bin'] }}" __var_to_env: "{{ __var_to_env | combine( { 'GOROOT': path_go } ) }}" - name: Queue go install block: - name: Go system package install when: - go_install_method == 'system' ansible.builtin.set_fact: pkg_sys: "{{ pkg_sys + [go_pkgname] }}" - name: Install via archive when: - go_install_method == 'archive' block: - name: Add go archive extract install ansible.builtin.set_fact: pkg_archive: "{{ pkg_archive + [go_archive_install] }}" - name: Complete go archive install configuration ansible.builtin.set_fact: __configured: "{{ __configured | combine( { 'go': true } ) }}"