The role deploys the repository files needed to access the products distributed by UMD, currently supported for Scientific Linux 6 and CentOS7. This role optionally deploys the Interoperable Global Trust Federation (IGTF) repository file.
Information on available UMD release is available on the EGI repository.
If you wish to use this role, install the role from Ansible Galaxy:
# Install ansible module from Ansible Galaxy
$ ansible-galaxy install egi-foundation.umd
This role requires Ansible 2.0 or higher. The only dependency is EPEL, included in the metadata file.
Brief description of the variables used in the role:
release
(int) UMD release version (no default)- e.g.,
release: 4
- e.g.,
enable_candidate_repo: false
: Enable the candidate repository, commonly used in the release candidate (defaults tofalse
)- e.g.,
enable_candidate_repo: false
- e.g.,
enable_testing_repo: false
: Enables the testing repository (defaults to 'false')- e.g.,
enable_testing_repo: false
- e.g.,
enable_untested_repo: false
: Enables the untested repository (defaults to 'false')ca_verification: false
: Enables the IGTF repository for trusted CAs (defaults tofalse
)ca_version: 1
: CA version (defaults to '1', only ifca_verification: true
)ca_branch: production
: CA branch (defaults to 'production', only ifca_verification: true
)ca_verification: true
: CA servers (defaults to 'repository.egi.eu', only ifca_verification: true
)- e.g.,
ca_server: repository.egi.eu
- e.g.,
crl_deploy: false
: Installs 'fetch-crl' package if enabled (defaults tofalse
)- e.g., :
crl_deploy: false
- e.g., :
A previous dependency on
geerlingguy.repo-epel
has
been removed. EPEL is now taken care of in this role directly.
This role can be used in several scenarios, depending on your environment. These are some examples of how to use this role.
- hosts: all
roles:
- { role: ansible-umd, release: 4 }
- hosts: all
roles:
- { role: ansible-umd, release: 4, ca_verification: true, crl_deploy: true }
- hosts: all
roles:
- { role: ansible-umd, release: 4, enable_candidate_repo: true }
Prepare a virtual env for testing using molecule, as documented in the EGI Ansible style guide.
# Create a folder for virtual environments
$ mkdir -p ~/.virtualenvs
# Create a python3 virtualenv
$ python3 -m venv ~/.virtualenvs/molecule
# Activate virtual env
$ source ~/.virtualenvs/ui-deployment/bin/activate
# Install dependencies
$ pip install -r requirements.txt
Run molecule
# Lint
$ molecule lint
# Run the complete test suite
$ molecule test
- Prepare a changelog from the last version, including contributors' names
- Prepare a PR with
- Updating version and changelog in
CHANGELOG
- Updating version and changelog in
- Once the PR has been merged, publish a new release using GitHub web interface
- Suffix the tag name to be created with
v
, likev1.0.0
- Packages will be built using GitHub Actions and attached to the release page
- Suffix the tag name to be created with
Apache 2.0
Original author Pablo Orviz.
For contributions see AUTHORS.md.