community.general.sorcery (3.8.10) — module

Package manager for Source Mage GNU/Linux

Authors: Vlad Glagolev (@vaygr)

Install collection

Install with ansible-galaxy collection install community.general:==3.8.10


Add to requirements.yml

  collections:
    - name: community.general
      version: 3.8.10

Description

Manages "spells" on Source Mage GNU/Linux using I(sorcery) toolchain


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spell foo is installed
  community.general.sorcery:
    spell: foo
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spells foo, bar and baz are removed
  community.general.sorcery:
    spell: foo,bar,baz
    state: absent
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spell foo with dependencies bar and baz is installed
  community.general.sorcery:
    spell: foo
    depends: bar,baz
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spell foo with bar and without baz dependencies is installed
  community.general.sorcery:
    spell: foo
    depends: +bar,-baz
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spell foo with libressl (providing SSL) dependency is installed
  community.general.sorcery:
    spell: foo
    depends: libressl(SSL)
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Make sure spells with/without required dependencies (if any) are installed
  community.general.sorcery:
    name: "{{ item.spell }}"
    depends: "{{ item.depends | default(None) }}"
    state: present
  loop:
    - { spell: 'vifm', depends: '+file,-gtk+2' }
    - { spell: 'fwknop', depends: 'gpgme' }
    - { spell: 'pv,tnftp,tor' }
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install the latest version of spell foo using regular glossary
  community.general.sorcery:
    name: foo
    state: latest
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Rebuild spell foo
  community.general.sorcery:
    spell: foo
    state: rebuild
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Rebuild the whole system, but update Sorcery and Codex first
  community.general.sorcery:
    spell: '*'
    state: rebuild
    update: yes
    update_cache: yes
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Refresh the grimoire collection if it is 1 day old using native sorcerous alias
  community.general.sorcery:
    update_codex: yes
    cache_valid_time: 86400
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Update only Sorcery itself
  community.general.sorcery:
    update: yes

Inputs

    
name:
    aliases:
    - spell
    description:
    - Name of the spell
    - multiple names can be given, separated by commas
    - special value '*' in conjunction with states C(latest) or C(rebuild) will update
      or rebuild the whole system respectively
    elements: str
    type: list

state:
    choices:
    - present
    - latest
    - absent
    - cast
    - dispelled
    - rebuild
    default: present
    description:
    - Whether to cast, dispel or rebuild a package
    - state C(cast) is an equivalent of C(present), not C(latest)
    - state C(latest) always triggers C(update_cache=yes)
    - state C(rebuild) implies cast of all specified spells, not only those existed before
    type: str

update:
    default: false
    description:
    - Whether or not to update sorcery scripts at the very first stage
    type: bool

depends:
    description:
    - Comma-separated list of _optional_ dependencies to build a spell (or make sure it
      is built) with; use +/- in front of dependency to turn it on/off ('+' is optional
      though)
    - this option is ignored if C(name) parameter is equal to '*' or contains more than
      one spell
    - providers must be supplied in the form recognized by Sorcery, e.g. 'openssl(SSL)'
    type: str

update_cache:
    aliases:
    - update_codex
    default: false
    description:
    - Whether or not to update grimoire collection before casting spells
    type: bool

cache_valid_time:
    description:
    - Time in seconds to invalidate grimoire collection on update
    - especially useful for SCM and rsync grimoires
    - makes sense only in pair with C(update_cache)
    type: int