bodsch / ansible-collection-scm

ansible collection for scm tooling
Apache License 2.0
3 stars 6 forks source link

Ansible Collection - bodsch.scm

This collection aims to provide a set of small Ansible modules and helper functions.

GitHub Workflow Status GitHub issues GitHub release (latest by date)

supported operating systems

Contribution

Please read Contribution

Development, Branches (Git Tags)

The master Branch is my Working Horse includes the "latest, hot shit" and can be complete broken!

If you want to use something stable, please use a Tagged Version!


Roles

Role Build State Description
bodsch.scm.forgejo GitHub Workflow Status Ansible role to install and configure forgejo.
bodsch.scm.forgejo_runner GitHub Workflow Status Ansible role to install and configure forgejo-runner

Included content

Modules

Name Description
bodsch.scm.github_checksum read a defined checksumfile and return the checksum for an artefact
bodsch.scm.github_latest detect the latest release or tag from GitHub
bodsch.scm.github_releases Fetches the releases version of a GitHub project and returns the download urls
bodsch.scm.forgejo not used
bodsch.scm.forgejo_auth forgejo admin auth - Modify external auth providers
bodsch.scm.forgejo_cli wrapper to create runner token
bodsch.scm.forgejo_migrate not used
bodsch.scm.forgejo_runner append runner to forgejo
bodsch.scm.forgejo_user create forgejo admin user

Installing this collection

You can install the memsource collection with the Ansible Galaxy CLI:

#> ansible-galaxy collection install bodsch.scm

To install directly from GitHub:

#> ansible-galaxy collection install git@github.com:bodsch/ansible-collection-scm.git

You can also include it in a requirements.yml file and install it with ansible-galaxy collection install -r requirements.yml, using the format:

---
collections:
  - name: bodsch.scm

The python module dependencies are not installed by ansible-galaxy. They can be manually installed using pip:

#> pip install -r requirements.txt

Using this collection

You can either call modules by their Fully Qualified Collection Namespace (FQCN), such as bodsch.scm.github_latest, or you can call modules by their short name if you list the bodsch.scm collection in the playbook's collections keyword:

---
- name: get latest release
  delegate_to: localhost
  become: false
  run_once: true
  bodsch.scm.github_latest:
    project: scm
    repository: alertmanager
    user: "{{ lookup('env', 'GH_USER') | default(omit) }}"
    password: "{{ lookup('env', 'GH_TOKEN') | default(omit) }}"
  register: _latest_release

Contribution

Please read Contribution

Development, Branches (Git Tags)

The master Branch is my Working Horse includes the "latest, hot shit" and can be complete broken!

If you want to use something stable, please use a Tagged Version!

Author

License

Apache

FREE SOFTWARE, HELL YEAH!