Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions .ansible-lint
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
skip_list:
- '204' # Lines should be no longer than 160 chars
- '301' # Commands should not change things if nothing needs doing
- '303' # Using command rather than module
- '306' # Shells that use pipes should set the pipefail option
- '403' # Package installs should not use latest
- '106' # Role name {} does not match ``^[a-z][a-z0-9_]+$`` pattern'
- 'fqcn-builtins' # This rule is implicit by default(ansible-lint 6), We need to skip this.
---
skip_list:
- "204" # Lines should be no longer than 160 chars
- "301" # Commands should not change things if nothing needs doing
- "303" # Using command rather than module
- "306" # Shells that use pipes should set the pipefail option
- "403" # Package installs should not use latest
- "106" # Role name {} does not match ``^[a-z][a-z0-9_]+$`` pattern'
- "fqcn-builtins" # This rule is implicit by default(ansible-lint 6), We need to skip this.
31 changes: 16 additions & 15 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
# These are supported funding model platforms

github: [openwisp]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
polar: # Replace with a single Polar username
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
thanks_dev: # Replace with a single thanks.dev username
custom: ["https://openwisp.org/sponsorship/"]
---
# These are supported funding model platforms

github: [openwisp]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
polar: # Replace with a single Polar username
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
thanks_dev: # Replace with a single thanks.dev username
custom: ["https://openwisp.org/sponsorship/"]
29 changes: 15 additions & 14 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
version: 2
updates:
- package-ecosystem: "pip" # Check for Python package updates
directory: "/" # The root directory where the Ansible role is located
schedule:
interval: "monthly" # Check for updates weekly
commit-message:
prefix: "[deps] "
- package-ecosystem: "github-actions" # Check for GitHub Actions updates
directory: "/" # The root directory where the Ansible role is located
schedule:
interval: "monthly" # Check for updates weekly
commit-message:
prefix: "[ci] "
---
version: 2
updates:
- package-ecosystem: "pip" # Check for Python package updates
directory: "/" # The root directory where the Ansible role is located
schedule:
interval: "monthly" # Check for updates weekly
commit-message:
prefix: "[deps] "
- package-ecosystem: "github-actions" # Check for GitHub Actions updates
directory: "/" # The root directory where the Ansible role is located
schedule:
interval: "monthly" # Check for updates weekly
commit-message:
prefix: "[ci] "
165 changes: 83 additions & 82 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,82 +1,83 @@
---

name: Ansible-OpenWISP2 CI Build

on: # yamllint disable-line rule:truthy
push:
branches:
- master
- dev
- "25.10"
- "24.11"
pull_request:
branches:
- master
- dev
- "25.10"
- "24.11"

jobs:
build:
name: Build ${{ matrix.distro }}
runs-on: ubuntu-24.04

strategy:
fail-fast: false
matrix:
distro:
- ubuntu2204
- ubuntu2404
- debian12
- debian13

steps:
- uses: actions/checkout@v6
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: "3.12"

- name: Install python dependencies
run: |
pip install -U pip wheel setuptools
pip install -r requirements-test.txt

- name: Install Ansible Galaxy dependencies
run: ansible-galaxy collection install "community.general:>=3.6.0"

- name: QA checks
continue-on-error: true
run: |
./run-qa-checks

- name: Tests
run: |
mkdir -p ~/.ansible/roles
ln -s $GITHUB_WORKSPACE ~/.ansible/roles/openwisp.openwisp2
molecule test
env:
ROLE_NAME: openwisp2
PY_COLORS: '1'
ANSIBLE_FORCE_COLOR: '1'
MOLECULE_DISTRO: ${{ matrix.distro }}
ANSIBLE_ROLES_PATH: /home/runner/.cache/molecule/ansible-openwisp2/default/roles:/home/runner/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles

import:
name: Update imports on Ansible Galaxy
runs-on: ubuntu-22.04
container: python:3-slim
needs:
- build

if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
steps:
- name: Install ansible
run: pip install ansible

- name: Update imports on Ansible Galaxy
run: |
ansible-galaxy role import --api-key ${{ secrets.GALAXY_API_KEY }} openwisp ansible-openwisp2
---

name: Ansible-OpenWISP2 CI Build

on: # yamllint disable-line rule:truthy
push:
branches:
- master
- dev
- "25.10"
- "24.11"
pull_request:
branches:
- master
- dev
- "25.10"
- "24.11"

jobs:
build:
name: Build ${{ matrix.distro }}
runs-on: ubuntu-24.04

strategy:
fail-fast: false
matrix:
distro:
- ubuntu2204
- ubuntu2404
- debian12
- debian13

steps:
- uses: actions/checkout@v6
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: "3.12"

- name: Install python dependencies
id: deps
run: |
pip install -U pip wheel setuptools
pip install -r requirements-test.txt

- name: Install Ansible Galaxy dependencies
run: ansible-galaxy collection install "community.general:>=3.6.0"

- name: QA checks
run: |
./run-qa-checks

- name: Tests
if: ${{ !cancelled() && steps.deps.conclusion == 'success' }}
run: |
mkdir -p ~/.ansible/roles
ln -s $GITHUB_WORKSPACE ~/.ansible/roles/openwisp.openwisp2
molecule test
env:
ROLE_NAME: openwisp2
PY_COLORS: "1"
ANSIBLE_FORCE_COLOR: "1"
MOLECULE_DISTRO: ${{ matrix.distro }}
ANSIBLE_ROLES_PATH: /home/runner/.cache/molecule/ansible-openwisp2/default/roles:/home/runner/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles

import:
name: Update imports on Ansible Galaxy
runs-on: ubuntu-22.04
container: python:3-slim
needs:
- build

if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
steps:
- name: Install ansible
run: pip install ansible

- name: Update imports on Ansible Galaxy
run: |
ansible-galaxy role import --api-key ${{ secrets.GALAXY_API_KEY }} openwisp ansible-openwisp2
43 changes: 36 additions & 7 deletions .yamllint.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,36 @@
---

extends: default
rules:
line-length:
max: 162
level: warning
---
extends: default

rules:
line-length:
max: 162
level: warning

truthy:
level: warning

empty-values:
forbid-in-block-mappings: true

comments:
min-spaces-from-content: 1

comments-indentation: false

braces:
max-spaces-inside: 1

octal-values:
forbid-implicit-octal: true
forbid-explicit-octal: true

ignore: |
.venv
venv
env
myenv
*.py
__pycache__
.tox
.git
.github
40 changes: 20 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# ansible-openwisp2

[![Ansible-OpenWISP2 CI Build](https://github.com/openwisp/ansible-openwisp2/actions/workflows/ci.yml/badge.svg)](https://github.com/openwisp/ansible-openwisp2/actions/workflows/ci.yml)
[![Galaxy](http://img.shields.io/badge/galaxy-openwisp.openwisp2-blue.svg?style=flat-square)](https://galaxy.ansible.com/ui/standalone/roles/openwisp/openwisp2/)
[![Chat](https://img.shields.io/gitter/room/nwjs/nw.js.svg)](https://gitter.im/openwisp/general)

Ansible role that installs the OpenWISP Server Application.

Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (24/22 LTS)**.

**Recommended minimum ansible core version**: 2.13.

## Documentation

- [Usage documentation](https://openwisp.io/docs/stable/ansible/)
- [Developer documentation](https://openwisp.io/docs/stable/ansible/developer/installation.html)

## Support

See [OpenWISP Support Channels](http://openwisp.org/support.html).
# ansible-openwisp2
[![Ansible-OpenWISP2 CI Build](https://github.com/openwisp/ansible-openwisp2/actions/workflows/ci.yml/badge.svg)](https://github.com/openwisp/ansible-openwisp2/actions/workflows/ci.yml)
[![Galaxy](http://img.shields.io/badge/galaxy-openwisp.openwisp2-blue.svg?style=flat-square)](https://galaxy.ansible.com/ui/standalone/roles/openwisp/openwisp2/)
[![Chat](https://img.shields.io/gitter/room/nwjs/nw.js.svg)](https://gitter.im/openwisp/general)
Ansible role that installs the OpenWISP Server Application.
Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (24/22 LTS)**.
**Recommended minimum ansible core version**: 2.13.
## Documentation
- [Usage documentation](https://openwisp.io/docs/stable/ansible/)
- [Developer documentation](https://openwisp.io/docs/stable/ansible/developer/installation.html)
## Support
See [OpenWISP Support Channels](http://openwisp.org/support.html).
Loading
Loading