golang

Ansible Роль: SDK языка Go

Тесты Ansible Galaxy Лицензия

Роль для загрузки и установки SDK языка Go.

Требования

  • Ansible Core >= 2.12

  • Линукс-дистрибутив

    • Семейство Debian

      • Debian

        • Buster (10)
        • Bullseye (11)
        • Bookworm (12)
      • Ubuntu

        • Focal (20.04)
        • Jammy (22.04)
    • Семейство RedHat

      • Rocky Linux

        • 9
      • Fedora

        • 35
    • Семейство SUSE

      • openSUSE

        • 15.5
    • Примечание: другие версии могут работать, но не были протестированы.

Переменные роли

Следующие переменные изменят поведение этой роли (значения по умолчанию указаны ниже):

# Версия SDK языка Go
golang_version: '1.22.6'

# Зеркало для загрузки пакета SDK языка Go
golang_mirror: 'https://storage.googleapis.com/golang'

# Основной каталог установки распределения SDK языка Go
golang_install_dir: '/opt/go/{{ golang_version }}'

# Каталог для хранения файлов, загруженных для установки SDK языка Go
golang_download_dir: "{{ x_ansible_download_dir | default(ansible_facts.env.HOME + '/.ansible/tmp/downloads') }}"

# Местоположение для переменной окружения GOPATH
golang_gopath:

Поддерживаемые версии SDK языка Go

Следующие версии SDK языка Go поддерживаются без дополнительной конфигурации (для других версий следуйте инструкциям по продвинутой конфигурации):

  • 1.22.6
  • 1.22.5
  • 1.22.4
  • 1.22.3
  • 1.22.2
  • 1.22.1
  • 1.22.0
  • 1.21.13
  • 1.21.12
  • 1.21.11
  • 1.21.10
  • 1.21.9
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.4
  • 1.21.3
  • 1.21.2
  • 1.21.1
  • 1.21.0
  • 1.20.13
  • 1.20.12
  • 1.20.11
  • 1.20.10
  • 1.20.9
  • 1.20.8
  • 1.20.7
  • 1.20.6
  • 1.20.5
  • 1.20.4
  • 1.20.3
  • 1.20.2
  • 1.20.1
  • 1.20
  • 1.19.12
  • 1.19.11
  • 1.19.10
  • 1.19.9
  • 1.19.8
  • 1.19.7
  • 1.19.6
  • 1.19.5
  • 1.19.4
  • 1.19.3
  • 1.19.2
  • 1.19.1
  • 1.19
  • 1.18.10
  • 1.18.9
  • 1.18.8
  • 1.18.7
  • 1.18.6
  • 1.18.5
  • 1.18.4
  • 1.18.3
  • 1.18.2
  • 1.18.1
  • 1.18
  • 1.17.13
  • 1.17.12
  • 1.17.11
  • 1.17.10
  • 1.17.9
  • 1.17.8
  • 1.17.7
  • 1.17.6
  • 1.17.5
  • 1.17.4
  • 1.17.3
  • 1.17.2
  • 1.17.1
  • 1.17
  • 1.16.15
  • 1.16.14
  • 1.16.13
  • 1.16.12
  • 1.16.11
  • 1.16.10
  • 1.16.9
  • 1.16.8
  • 1.16.7
  • 1.16.6
  • 1.16.5
  • 1.16.4
  • 1.16.3
  • 1.16.2
  • 1.16.1
  • 1.16
  • 1.15.15
  • 1.15.14
  • 1.15.13
  • 1.15.12
  • 1.15.11
  • 1.15.10
  • 1.15.9
  • 1.15.8
  • 1.15.7
  • 1.15.6
  • 1.15.5
  • 1.15.4
  • 1.15.3
  • 1.15.2
  • 1.15.1
  • 1.15
  • 1.14.15
  • 1.14.14
  • 1.14.13
  • 1.14.12
  • 1.14.11
  • 1.14.10
  • 1.14.9
  • 1.14.8
  • 1.14.7
  • 1.14.6
  • 1.14.5
  • 1.14.4
  • 1.14.3
  • 1.14.2
  • 1.14.1
  • 1.14
  • 1.13.15
  • 1.13.14
  • 1.13.13
  • 1.13.12
  • 1.13.11
  • 1.13.10
  • 1.13.9
  • 1.13.8
  • 1.13.7
  • 1.13.6
  • 1.13.5
  • 1.13.4
  • 1.13.3
  • 1.13.2
  • 1.13.1
  • 1.13
  • 1.12.17
  • 1.12.16
  • 1.12.15
  • 1.12.14
  • 1.12.13
  • 1.12.12
  • 1.12.11
  • 1.12.10
  • 1.12.9
  • 1.12.8
  • 1.12.7
  • 1.12.6
  • 1.12.5
  • 1.12.4
  • 1.12.3
  • 1.12.2
  • 1.12.1
  • 1.12
  • 1.11.13
  • 1.11.12
  • 1.11.11
  • 1.11.10
  • 1.11.9
  • 1.11.8
  • 1.11.7
  • 1.11.6
  • 1.11.5
  • 1.11.4
  • 1.11.3
  • 1.11.2
  • 1.11.1
  • 1.11
  • 1.10.8
  • 1.10.7
  • 1.10.6
  • 1.10.5
  • 1.10.4
  • 1.10.3
  • 1.10.2
  • 1.10.1
  • 1.10
  • 1.9.6
  • 1.9.5
  • 1.9.4
  • 1.9.3
  • 1.9.2
  • 1.9.1
  • 1.9
  • 1.8.7
  • 1.8.6
  • 1.8.5
  • 1.8.4
  • 1.8.3
  • 1.8.2
  • 1.8.1
  • 1.8
  • 1.7.4
  • 1.7.3

Продвинутая конфигурация

Следующая переменная роли зависит от версии SDK языка Go; чтобы использовать версию SDK языка Go, которая не преднастроена этой ролью, вы должны настроить переменную ниже:

# SHA256 сумма для пакетной версии (т.е. "go{{ golang_version }}.linux-amd64.tar.gz")
golang_redis_sha256sum: '6e3e9c949ab4695a204f74038717aa7b2689b1be94875899ac1b3fe42800ff82'

Пример плейбука

- hosts: servers
  roles:
     - role: gantsign.golang
       golang_gopath: '$HOME/workspace-go'

Факты роли

Эта роль экспортирует следующие факты Ansible для использования другими ролями:

  • ansible_local.golang.general.version

    • например, 1.7.3
  • ansible_local.golang.general.home

    • например, /opt/golang/1.7.3

Другие роли от GantSign

Вы можете найти больше ролей от GantSign на Ansible Galaxy.

Разработка и тестирование

В этом проекте используются следующие инструменты:

  • Molecule для организации тестовых сценариев
  • Testinfra для проверки изменений на удаленном сервере
  • pytest — фреймворк для тестирования
  • Tox управляет виртуальными окружениями Python для линтинга и тестирования
  • pip-tools для управления зависимостями

Предоставлен контейнер разработки Dev Container для разработки и тестирования этой роли.

Лицензия

MIT

Информация об авторе

Джон Фриман

GantSign Ltd. Компания № 06109112 (зарегистрирована в Англии)

О проекте

Role for installing the Go language SDK.

Установить
ansible-galaxy install gantsign/ansible-role-golang
Лицензия
mit
Загрузки
397563
Владелец