No description
  • Python 97.8%
  • Shell 1.2%
  • Dockerfile 0.7%
  • Makefile 0.3%
Find a file
red-hat-konflux[bot] 2f51ba9257
chore(deps): update konflux references (#420)
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
Co-authored-by: red-hat-konflux[bot] <126015336+red-hat-konflux[bot]@users.noreply.github.com>
2026-04-03 15:24:54 -04:00
.github Update sonar action (#384) 2025-09-23 14:23:35 +01:00
.tekton chore(deps): update konflux references (#420) 2026-04-03 15:24:54 -04:00
CHANGES Release 0.4.36 (#398) 2025-12-02 14:51:51 -05:00
galaxy_importer fix: incorrect constant variable reference in _validate_company (#414) 2026-02-24 11:34:32 -05:00
hooks Added a pre-commit hook and updated process documentation (#80) 2020-07-21 15:19:15 -04:00
scripts Add script to update spdx_licenses.json (#226) 2023-07-11 11:08:29 -04:00
tests Update ansible-lint command to use --format=pep8 instead of -p (#400) 2026-01-08 08:30:03 -05:00
.flake8 parameterize image and default to redhat-user-workloads (#404) 2026-01-15 15:36:59 -05:00
.gitignore Update EDA tox linting (#343) 2025-05-19 19:06:50 +01:00
build_deploy.sh Update build script to use new docker context dir (#142) 2021-10-28 12:19:05 -04:00
CHANGES.rst Upgrade ansible-lint and prepare for Release 0.4.37 (#402) 2026-01-12 06:18:36 -05:00
LICENSE Update documentation, licence, loglevel (#19) 2019-10-15 15:00:04 -04:00
Makefile Add support for extracting docs from EDA plugins (#330) 2025-03-06 19:46:55 +00:00
PROCESS.md Update PROCESS.md release steps, versioning, roadmap (#222) 2023-06-30 10:35:15 -04:00
pyproject.toml Fix latest ruff 0.13 rules (#382) 2025-09-22 11:43:44 +02:00
README.md Upgrade ansible-lint and prepare for Release 0.4.37 (#402) 2026-01-12 06:18:36 -05:00
setup.cfg Upgrade ansible-lint and prepare for Release 0.4.37 (#402) 2026-01-12 06:18:36 -05:00
setup.py setup.py: Allow greater version flexibility (#104) 2020-12-01 10:43:28 -05:00
sonar-project.properties Fix sonarcloud project id (#310) 2024-11-14 15:48:30 +01:00
tox.ini Add support for py313 (#287) 2025-08-05 14:32:24 +01:00

Maintainability Rating Reliability Rating Security Rating Coverage

Ansible Requirements

galaxy-importer requires the following other Ansible projects:

  • ansible-lint up to 26.1.0
  • ansible-core up to 2.16

If you are installing from source, see setup.cfg in the repository for the matching requirements.

Install

From pypi

pip install galaxy-importer

From source

Clone repo and go into project directory

Install into environment the local setup.py including its development dependencies:

pip install -e .[dev]

Run importer

Run parsing/validation standalone to view log output and importer result for a build collection artifact file:

python -m galaxy_importer.main [collection_artifact_file]

Supports legacy roles (note: must be in the parent directory of the legacy role):

python -m galaxy_importer.main --legacy-role [legacy_role_directory] --namespace [namespace]

Supports converting markdown to html:

python -m galaxy_importer.main --markdown [readme_md_directory]

View log output in terminal, and view the importer result in the written file importer_result.json

Structure of Output

  • metadata (all data from MANIFEST.json, set by CollectionLoader._load_collection_manifest())
  • docs_blob (set by CollectionLoader._build_docs_blob())
  • collection_readme
  • documentation_files
  • contents
  • contents
  • requires_ansible
  • patterns

Configuration

An optional ini configuration file is supported, the following locations are checked in this order:

/etc/galaxy-importer/galaxy-importer.cfg
<code_source>/galaxy_importer/galaxy-importer.cfg

You can override the above paths by setting GALAXY_IMPORTER_CONFIG in the environment. For example:

$ export GALAXY_IMPORTER_CONFIG=~/galaxy-importer.cfg

Configuration options and their defaults are defined in DEFAULTS at galaxy_importer/config.py

Example configuration file with subset of config options:

[galaxy-importer]
LOG_LEVEL_MAIN = INFO
RUN_ANSIBLE_TEST = False
ANSIBLE_LOCAL_TMP = '~/.ansible/tmp'
  • ANSIBLE_LOCAL_TMP - Set to any desired local Ansible temp directory. Defaults to ~/.ansible/tmp.

  • ANSIBLE_TEST_LOCAL_IMAGE - Set to True to run ansible-test sandboxed within a container image. Requires installation of either Podman or Docker to run the container. Defaults to False.

  • CHECK_CHANGELOG - Set to False to not check for a CHANGELOG.rst or CHANGELOG.md file under the collection root or docs/ dir, or a changelogs/changelog.(yml/yaml) file. Defaults to True.

  • CHECK_REQUIRED_TAGS - Set to True to check for a set of tags required for Ansible collection certification. Defaults to False.

  • LOCAL_IMAGE_DOCKER - Set to True to run the ansible-test container image via Docker; otherwise, Podman will be used. Defaults to False.

  • LOG_LEVEL_MAIN - Set to the desired log level. Defaults to INFO.

  • OFFLINE_ANSIBLE_LINT - Set to False if you want ansible-lint to check for a new version. Defaults to True.

  • REQUIRE_V1_OR_LATER - Set to True to require a version number 1.0.0 or greater. Defaults to False.

  • RUN_ANSIBLE_DOC - Set to False to skip ansible-doc. Defaults to True.

  • RUN_ANSIBLE_LINT - Set to False to skip running ansible-lint --profile production over the whole collection. Defaults to True.

  • RUN_ANSIBLE_TEST - Set to True to run ansible-test during collection import. Defaults to False.

  • RUN_FLAKE8 - Set to True to run flake8. Defaults to False.

Issues and Process

To file an issue, visit the Automation Hub Jira project

Process details for galaxy-importer: PROCESS.md

Additional Notes

Place .md files in the docs/ dir to have them show up in an imported collection's "Documentation" tab on Galaxy or Automation Hub.