diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..fc3c7af --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,4 @@ +--- + +github: [do1jlr] +liberapay: l3d diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..cea62b3 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,14 @@ +--- +# See https://docs.github.com/en/github/administering-a-repository/configuration-options-for-dependency-updates +version: 2 +updates: + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + + - package-ecosystem: "gitsubmodule" + directory: "/" + schedule: + interval: "weekly" diff --git a/.github/workflows/ansible-linting-check.yml b/.github/workflows/ansible-linting-check.yml new file mode 100644 index 0000000..973d554 --- /dev/null +++ b/.github/workflows/ansible-linting-check.yml @@ -0,0 +1,25 @@ +--- +name: Ansible Lint check + +# yamllint disable-line rule:truthy +on: [push, pull_request] + +jobs: + build: + name: Ansible Lint + runs-on: ubuntu-latest + + steps: + - name: Checkout git repo + uses: actions/checkout@v4 + with: + lfs: true + submodules: true + fetch-depth: 0 + + - name: Run ansible-lint + uses: ansible-actions/ansible-lint-action@v1.0.3 + with: + target: "./" + python_dependency: "jmespath" + collections_yml: "requirements.yml" diff --git a/.github/workflows/galaxy.yml b/.github/workflows/galaxy.yml new file mode 100644 index 0000000..63d7e93 --- /dev/null +++ b/.github/workflows/galaxy.yml @@ -0,0 +1,22 @@ +--- +name: Galaxy release + +# yamllint disable-line rule:truthy +on: + release: + types: ['created'] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: 'checkout git repo' + uses: actions/checkout@v4 + with: + lfs: true + submodules: true + + - name: "Publish Ansible" + uses: ansible/ansible-publish-action@v1.0.0 + with: + api_key: "${{ secrets.GALAXY_API_KEY }}" diff --git a/.github/workflows/j2lint-check.yml b/.github/workflows/j2lint-check.yml new file mode 100644 index 0000000..00c7861 --- /dev/null +++ b/.github/workflows/j2lint-check.yml @@ -0,0 +1,22 @@ +--- +name: Jinja2 Linting check + +# yamllint disable-line rule:truthy +on: [push, pull_request] + +jobs: + build: + name: Jinja2 Linting + runs-on: ubuntu-latest + + steps: + - name: Checkout git repo + uses: actions/checkout@v4 + with: + submodules: true + fetch-depth: 0 + + - name: Run j2lint + uses: ansible-actions/j2lint-action@v0.0.1 + with: + target: "./" diff --git a/.github/workflows/yamllint-check.yml b/.github/workflows/yamllint-check.yml new file mode 100644 index 0000000..4dd2d82 --- /dev/null +++ b/.github/workflows/yamllint-check.yml @@ -0,0 +1,22 @@ +--- +name: Yamllint check + +# yamllint disable-line rule:truthy +on: [push, pull_request] + +jobs: + build: + name: Yamllint + runs-on: ubuntu-latest + + steps: + - name: Checkout git repo + uses: actions/checkout@v4 + with: + submodules: true + fetch-depth: 0 + + - name: Run yamllint + uses: ansible-actions/yamllint-action@v0.0.2 + with: + target: "./" diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/CHANGELOG.rst b/CHANGELOG.rst new file mode 100644 index 0000000..e69de29 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..a37705a --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 L3D + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 60a5332..3a96bb8 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,40 @@ -# ansible_collection_wm +[![collection l3d.wm](https://ansible.l3d.space/svg/l3d.wm_ansible-collection_collection.svg)](https://galaxy.ansible.com/ui/repo/published/l3d/wm/) +[![Maintainance](https://ansible.l3d.space/svg/l3d.wm_maintainance_collection.svg)](https://ansible.l3d.space/#l3d.wm) +[![License](https://ansible.l3d.space/svg/l3d.wm_license_collection.svg)](LICENSE) + + Ansible Collection l3d.wm +=============================== Ansible Collection for window manager like i3 and sway + + Ansible Roles: +----------------- ++ l3d.wm.i3 ++ l3d.wm.sway + + +## Using this Collection +You can install the collection using ansible-galaxy by running: +```bash +ansible-galaxy collection install l3d.wm:1.0.0 +``` + +Remember you can to Upgrade to the latest version of the l3d.wm collection using the ``--upgrade`` parameter: +```bash +ansible-galaxy collection install l3d.wm --upgrade +``` + +Or you could clone this collection in your local ansible project for example to ``collections/ansible_collections/l3d/wm/``. +``` +# Clone git Repo to specified path +git clone https://github.com/roles-ansible/ansible_collection_wm.git collections/ansible_collections/l3d/wm/ + +# change directory +cd collections/ansible_collections/l3d/wm/ +``` + +```yaml +--- +collections: + - name: l3d.wm + version: ">=1.0.0" +``` diff --git a/changelog b/changelog new file mode 100644 index 0000000..52e7f38 --- /dev/null +++ b/changelog @@ -0,0 +1,2 @@ +--- +releases: {} diff --git a/galaxy.yml b/galaxy.yml new file mode 100644 index 0000000..497d8c5 --- /dev/null +++ b/galaxy.yml @@ -0,0 +1,68 @@ +--- +### REQUIRED +# The namespace of the collection. This can be a company/brand/organization or product namespace under which all +# content lives. May only contain alphanumeric lowercase characters and underscores. Namespaces cannot start with +# underscores or numbers and cannot contain consecutive underscores +namespace: l3d + +# The name of the collection. Has the same character restrictions as 'namespace' +name: users + +# The version of the collection. Must be compatible with semantic versioning +version: 1.0.0 + +# The path to the Markdown (.md) readme file. This path is relative to the root of the collection +readme: README.md + +# A list of the collection's content authors. Can be just the name or in the format 'Full Name (url) +# @nicks:irc/im.site#channel' +authors: + - L3D + + +### OPTIONAL but strongly recommended +# A short summary description of the collection +description: Ansible Collection for window manager like i3 and sway + +# Either a single license or a list of licenses for content inside of a collection. Ansible Galaxy currently only +# accepts L(SPDX,https://spdx.org/licenses/) licenses. This key is mutually exclusive with 'license_file' +license: + - MIT + +# A list of tags you want to associate with the collection for indexing/searching. A tag name has the same character +# requirements as 'namespace' and 'name' +tags: + - sway + - i3 + - desktop + - window + - wm + - xorg + - wayland + - linux + +# Collections that this collection requires to be installed for it to be usable. The key of the dict is the +# collection label 'namespace.name'. The value is a version range +# L(specifiers,https://python-semanticversion.readthedocs.io/en/latest/#requirement-specification). Multiple version +# range specifiers can be set and are separated by ',' +dependencies: + "community.general": ">=8.3.0" + +# The URL of the originating SCM repository +repository: https://github.com/roles-ansible/ansible_collection_wm.git + +# The URL to the homepage of the collection/project +homepage: https://ansible.l3d.space/ + +# A list of file glob-like patterns used to filter any files or directories that should not be included in the build +# artifact. A pattern is matched from the relative path of the file or directory of the collection directory. This +# uses 'fnmatch' to match the files or directories. Some directories and files like 'galaxy.yml', '*.pyc', '*.retry', +# and '.git' are always filtered. Mutually exclusive with 'manifest' +build_ignore: [] + +# A dict controlling use of manifest directives used in building the collection artifact. The key 'directives' is a +# list of MANIFEST.in style +# L(directives,https://packaging.python.org/en/latest/guides/using-manifest-in/#manifest-in-commands). The key +# 'omit_default_directives' is a boolean that controls whether the default directives are used. Mutually exclusive +# with 'build_ignore' +# manifest: null diff --git a/meta/runtime.yml b/meta/runtime.yml new file mode 100644 index 0000000..1c7d1bb --- /dev/null +++ b/meta/runtime.yml @@ -0,0 +1,2 @@ +--- +requires_ansible: '>=2.15' diff --git a/requirements.yml b/requirements.yml new file mode 100644 index 0000000..010abf3 --- /dev/null +++ b/requirements.yml @@ -0,0 +1,8 @@ +--- +collections: + - name: "community.general" + version: ">=8.3.0" + - name: "ansible.posix" + version: ">=1.5.4" + - name: "community.crypto" + version: ">=2.17.1"