{"id":17124169,"url":"https://github.com/kmpm/ansible-collection-incus","last_synced_at":"2025-04-13T06:09:36.986Z","repository":{"id":224729553,"uuid":"763998703","full_name":"kmpm/ansible-collection-incus","owner":"kmpm","description":"Collection of Ansible plugins for dealing with Incus from Linuxcontainers","archived":false,"fork":false,"pushed_at":"2024-12-02T17:58:32.000Z","size":119,"stargazers_count":16,"open_issues_count":2,"forks_count":7,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-13T06:09:24.274Z","etag":null,"topics":["ansible","incus"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kmpm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-27T09:49:18.000Z","updated_at":"2025-04-09T07:20:38.000Z","dependencies_parsed_at":"2024-03-17T11:25:56.564Z","dependency_job_id":"35ffe70a-979a-42e6-9006-731107f1ab9b","html_url":"https://github.com/kmpm/ansible-collection-incus","commit_stats":null,"previous_names":["kmpm/ansible-collection-linuxcontainers","kmpm/ansible-collection-incus"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmpm%2Fansible-collection-incus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmpm%2Fansible-collection-incus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmpm%2Fansible-collection-incus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kmpm%2Fansible-collection-incus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kmpm","download_url":"https://codeload.github.com/kmpm/ansible-collection-incus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670434,"owners_count":21142904,"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","incus"],"created_at":"2024-10-14T18:42:01.936Z","updated_at":"2025-04-13T06:09:36.963Z","avatar_url":"https://github.com/kmpm.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ansible Collection - kmpm.incus\n\nThis repository contains the `kmpm.incus` collection.\nThis is a collection of ansible modules and such that enables creation of for example\nincus instances.\n\nThe goal for this collection is to eventually be incorporated\ninto Ansibles community.general collection.\n\nThe connection module for incus is already included in the\n`community.general.incus` and is not included here.\n\n## Disclaimer\n\nIt is very much a Work In Progress and contains bugs, missing features etc.\nIt might destroy everything on your machine (unlikely) and delete everyting\nin incus (somewhat likely). It will eventually be strict about semver versioning\nbut for now, every change could be a breaking one.\n\nMy available time to work on this project will be limited but I will gladly accept\npull requests that I find reasonable.\n\n## Tested with Ansible\n\nThis collection is currently only tested with core-2.16 and python 3.11.\nIt might be extended to support older versions but currently there are only some\npython \u003e3.7 code used.\n\n## External requirements\n\nAll modules depend on a locally installed and configured `incus`CLI.\nThat same incus CLI must have [PR 581](https://github.com/lxc/incus/pull/581) included.\nThis means `incus \u003e 0.6.0`.\n\n## Using this collection\n\nThe collection is not yet published in Ansible Galaxy but can be installed with\n`ansible-galaxy` and using the [git repository](https://github.com/kmpm/ansible-collection-incus).\n\n```shell\nansible-galaxy collection install git+https://github.com/kmpm/ansible-collection-incus.git\n```\n\n### Modules\n\n```yaml\n- hosts: localhost\n  connection: local\n  - tasks:\n    - name: create a network\n      incus_network:\n        name: make_me_some_network\n        type: bridge\n        config:\n            ipv4.address: \"192.168.42.0/24\"\n            ipv4.dhcp: \"false\"\n            ipv6.address: \"none\"\n\n    - name: get some info about networks\n      incus_network_info:\n        name: mynetwork # optional name if you want just one network\n        project: default # optional \n        # target: sometarget # defaults to empty\n      register: netinfo\n\n    - name: create a instance\n      incus_instance:\n        name: mycontainer\n        source: # No default for source. You will need what you need.\n            type: image\n            alias: debian/12/cloud\n            server: \"https://images.linuxcontainers.org\"\n            protocol: simplestreams\n            mode: pull\n            allow_inconsistent: false\n\n    - name: delete instance\n      incus_instance:\n        name: mycontainer\n        state: absent\n\n    - name: delete network\n      incus_network:\n        name: mynetwork\n        state: absent\n```\n\n### Inventory\n\nWIP: There is an inventory module but it has limited documentation and not \neverything planed is complete or implemented.\n\nGet the existing help with `ansible-doc -t inventory kmpm.incus.incus`\n\nTo use create a file that ends with `incus.yml` or `incus.yaml`\n\n```yaml\n---\nplugin: kmpm.incus.incus\n\n```\n\nTest with `ansible-inventory -i \u003cyourfile\u003e --list`\n\n## License\n\nGPL-3.0-or-later\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkmpm%2Fansible-collection-incus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkmpm%2Fansible-collection-incus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkmpm%2Fansible-collection-incus/lists"}