{"id":13942271,"url":"https://github.com/ansible/team-devtools","last_synced_at":"2026-04-02T21:38:28.342Z","repository":{"id":37957739,"uuid":"403259140","full_name":"ansible/team-devtools","owner":"ansible","description":"Shared practices, workflows and decisions impacting Ansible devtools projects","archived":false,"fork":false,"pushed_at":"2025-01-23T15:26:26.000Z","size":385,"stargazers_count":19,"open_issues_count":13,"forks_count":13,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-01-23T16:31:27.275Z","etag":null,"topics":["ansible-devtools","hacktoberfest"],"latest_commit_sha":null,"homepage":"https://ansible.readthedocs.io/projects/team-devtools/","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ansible.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-05T08:50:52.000Z","updated_at":"2025-01-23T15:26:30.000Z","dependencies_parsed_at":"2023-02-13T03:20:20.362Z","dependency_job_id":"92904cfb-ccf5-4bca-8cd8-7b76c09b6c49","html_url":"https://github.com/ansible/team-devtools","commit_stats":{"total_commits":176,"total_committers":18,"mean_commits":9.777777777777779,"dds":0.5,"last_synced_commit":"560ddd16b148e4eff436a9e7db67451dba573941"},"previous_names":["ansible/team-devtools"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible%2Fteam-devtools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible%2Fteam-devtools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible%2Fteam-devtools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansible%2Fteam-devtools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ansible","download_url":"https://codeload.github.com/ansible/team-devtools/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237163129,"owners_count":19265216,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible-devtools","hacktoberfest"],"created_at":"2024-08-08T02:01:47.205Z","updated_at":"2025-10-19T16:30:19.619Z","avatar_url":"https://github.com/ansible.png","language":"Dockerfile","funding_links":[],"categories":["Dockerfile"],"sub_categories":[],"readme":"---\nhide:\n  - toc\n---\n\n# devtools\n\nThis repository is used to share practices, workflows and decisions affecting projects maintained by Ansible DevTools team.\n\n## Python DevTools project dependencies\n\nIt should be noted that our vscode extension would either depend on `ansible-dev-tools` python package or directly use our execution environments.\n\n```mermaid\n%%{init: {'theme':'neutral', 'themeVariables': { 'edgeLabelBackground': 'transparent'}}}%%\ngraph LR\n\n  lint(ansible-lint):::pyclass\n  compat(ansible-compat):::pyclass\n  navigator(ansible-navigator):::pyclass\n  adt(ansible-dev-tools):::pyclass;\n  ade(ansible-dev-environment):::pyclass\n  creator(ansible-creator):::pyclass;\n  pytest-ansible(pytest-ansible):::pyclass\n  tox-ansible(tox-ansible):::pyclass\n  molecule(molecule):::pyclass\n  community.molecule(community.molecule):::collectionclass\n  builder(ansible-builder):::pyclass\n  runner(ansible-runner):::pyclass\n  image(community-ansible-dev-tools-image):::containerclass\n  sign(ansible-sign):::pyclass\n\n  classDef tsclass fill:#f90,stroke:#f90,color:#333\n  classDef containerclass fill:#060,stroke:#060,color:#fff\n  classDef collectionclass fill:#5bbdbf,stroke-width:0px\n  classDef pyclass fill:#09f5,stroke:#09f0,color:#fff\n  style external color:#0FF5,fill:#fff0,stroke:#0FF5\n  linkStyle default stroke:grey,text-decoration:none\n\nsubgraph external\n  builder\n  runner\n  sign\nend\n\n  adt ==\u003e lint\n  adt ==\u003e navigator\n  adt ==\u003e molecule\n  adt ==\u003e ade\n  adt ==\u003e creator\n  adt ==\u003e sign\n\n  lint ==\u003e compat\n  compat ==. test .==\u003e community.molecule\n  molecule ==\u003e compat\n  molecule ==. test .==\u003e community.molecule:::collectionclass\n\n  navigator ==.==\u003e lint\n  navigator ==.==\u003e image\n  navigator ==\u003e runner\n  navigator ==..==\u003e builder\n\n  adt ==\u003e ade;\n  adt ==\u003e creator\n  adt ==\u003e pytest-ansible\n  adt ==\u003e tox-ansible;\n\n  ade ==\u003e builder;\n\n  click adt \"https://github.com/ansible/ansible-dev-tools\"\n  click ade \"https://github.com/ansible/ansible-dev-environment\"\n  click runner \"https://github.com/ansible/ansible-runner\"\n  click builder \"https://github.com/ansible/ansible-builder\"\n  click community.molecule \"https://github.com/ansible-collections/community.molecule\"\n  click molecule href \"https://github.com/ansible/molecule\"\n  click image href \"#container-image\"\n  click ws \"https://github.com/ansible/ansible-workspace-env-reference-image\"\n  click lint href \"https://github.com/ansible/ansible-lint\"\n  click compat href \"https://github.com/ansible/ansible-compat\"\n  click navigator href \"https://github.com/ansible/ansible-navigator\"\n  click creator href \"https://github.com/ansible/ansible-creator\"\n  click tox-ansible href \"https://github.com/ansible/tox-ansible\"\n  click pytest-ansible href \"https://github.com/ansible/pytest-ansible\"\n\n  linkStyle 0,1,2,3,4,5,6,7,8,9 color:darkcyan\n\n```\n\n## TypeScript repositories\n\nclassDef tsclass fill:#f90,stroke:#f90,color:#333;\nclassDef containerclass fill:#060,stroke:#060,color:#fff;\nclassDef thirdpartyclass fill:#9f6,stroke:#9f6,color:#333;\n\n```mermaid\n\ngraph TB;\n\n  ansible-backstage-plugins:::tsclass;\n  vscode-ansible:::tsclass == external ==\u003e vscode-yaml;\n  vscode-yaml:::tsclass;\n\n click ansible-backstage-plugins \"https://github.com/ansible/ansible-backstage-plugins\"\n click ansible-dev-environment \"https://github.com/ansible/ansible-dev-environment\"\n click community.molecule \"https://github.com/ansible-collections/community.molecule\"\n click vscode-ansible href \"https://github.com/ansible/vscode-ansible\"\n click vscode-yaml href \"https://github.com/redhat-developer/vscode-yaml\"\n```\n\n## Container Images\n\n`community-ansible-dev-tools-image` **execution environment** is a development\n**container image** that contains most of the most important tools used in the\ndevelopment and testing of collections. Still, while we bundle several\ncollections in it, you need to be warned that **we might remove any included\ncollection without notice** if that prevents us from\nbuilding the container.\n\nBelow you can see the list of collections are currently included in the\ncontainer images but this list is subject to change, even on a minor release.\nIf a collections fails to install or causes installation failures, we will\nrelease the container without it.\n\n- ansible.posix\n- ansible.windows\n- awx.awx\n- containers.podman\n- kubernetes.core\n- redhatinsights.insights\n- theforeman.foreman\n\nSome common command line **tools** are also included in order to help developers:\n\n- git\n- podman\n- tar\n- zsh (default shell)\n\n```mermaid\ngraph TB;\n\nee(\"community-ansible-dev-tools-image\u003cbr/\u003e\u003ci style=\"color: #0FF5\"\u003efedora-minimal based container\u003c/i\u003e\")\nadt(ansible-dev-tools)\ndevspaces(\"ansible-devspaces\u003cbr/\u003e\u003ci style=\"color: #0FF5\"\u003eubi8 based container\u003c/i\u003e\")\nadt(ansible-dev-tools)\n\nbuild --\u003e ee;\nbuild --\u003e devspaces;\n\nsubgraph build\n  collections\n  adt\n  tools\nend\n\nclick adt \"https://github.com/ansible/ansible-dev-tools\"\nclick ee \"https://github.com/ansible/ansible-dev-tools/pkgs/container/community-ansible-dev-tools\"\nclick devspaces \"https://github.com/ansible/ansible-dev-tools/pkgs/container/ansible-devspaces\"\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansible%2Fteam-devtools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fansible%2Fteam-devtools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansible%2Fteam-devtools/lists"}