From c5763b72bcf1a57c4e27d0a4cc5eea8b3c575a3f Mon Sep 17 00:00:00 2001 From: Matt Mullen Date: Tue, 5 Nov 2024 13:40:26 -0500 Subject: [PATCH] docs and galaxy publish workflow --- .github/workflows/release.yaml | 57 ++++++++++++++++ .gitignore | 1 + README.md | 31 ++++++++- docs/conf copy.py | 45 ------------- docs/conf.py | 2 + docs/docsite/config.yml | 2 + docs/docsite/extra-docs.yml | 5 ++ docs/docsite/rst/installation.rst | 29 ++++++++ docs/docsite/rst/setup.rst | 11 +++ docs/rst/changelog.rst | 63 ++++++++++++++++++ docs/rst/docsite/installation.rst | 29 ++++++++ docs/rst/docsite/setup.rst | 11 +++ docs/rst/index.rst | 24 +++++-- docs/rst/sfos_admin_settings_module.rst | 5 +- docs/rst/sfos_atp_module.rst | 5 +- docs/rst/sfos_backup_module.rst | 5 +- .../rst/sfos_device_access_profile_module.rst | 5 +- docs/rst/sfos_dns_module.rst | 5 +- docs/rst/sfos_firewall_rule_module.rst | 5 +- docs/rst/sfos_fqdn_host_module.rst | 5 +- docs/rst/sfos_fqdn_hostgroup_module.rst | 5 +- docs/rst/sfos_ip_host_module.rst | 5 +- docs/rst/sfos_ip_hostgroup_module.rst | 5 +- docs/rst/sfos_ips_module.rst | 7 +- docs/rst/sfos_malware_protection_module.rst | 5 +- .../rst/sfos_service_acl_exception_module.rst | 5 +- docs/rst/sfos_service_module.rst | 5 +- docs/rst/sfos_servicegroup_module.rst | 5 +- docs/rst/sfos_snmp_agent_module.rst | 5 +- docs/rst/sfos_snmp_user_module.rst | 5 +- docs/rst/sfos_syslog_module.rst | 7 +- docs/rst/sfos_time_module.rst | 5 +- docs/rst/sfos_user_module.rst | 5 +- docs/rst/sfos_xmlapi_module.rst | 5 +- docs/rst/sfos_zone_module.rst | 5 +- docs/static/images/setup.jpg | Bin 0 -> 104353 bytes galaxy.yml | 8 +-- 37 files changed, 287 insertions(+), 145 deletions(-) create mode 100644 .github/workflows/release.yaml delete mode 100644 docs/conf copy.py create mode 100644 docs/docsite/config.yml create mode 100644 docs/docsite/extra-docs.yml create mode 100644 docs/docsite/rst/installation.rst create mode 100644 docs/docsite/rst/setup.rst create mode 100644 docs/rst/changelog.rst create mode 100644 docs/rst/docsite/installation.rst create mode 100644 docs/rst/docsite/setup.rst create mode 100644 docs/static/images/setup.jpg diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 0000000..674bcb2 --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,57 @@ +name: Publish Ansible Collection + +on: + push: + tags: + - 'v*.*.*' # Trigger on version tags like x.x.x + +jobs: + build-and-publish: + runs-on: ubuntu-latest + + steps: + # Checkout the repository + - name: Check out the repository + uses: actions/checkout@v3 + + # Set up Python environment + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.x' + + # Install ansible-core + - name: Install Ansible + run: | + python -m pip install --upgrade pip + pip install ansible-core + + # Build the collection + - name: Build Ansible Collection + run: | + ansible-galaxy collection build + # Capture the built file name + id: build + + # Capture the tar.gz filename from the build output + - name: Get tar.gz filename + shell: bash + run: | + COLLECTION_FILE=$(ls *.tar.gz) + echo "COLLECTION_FILE=${COLLECTION_FILE}" >> $GITHUB_ENV + + # Upload the collection file to the release + - name: Upload Release Asset + uses: actions/upload-release-asset@v1 + with: + upload_url: "${{ github.event.release.upload_url }}" + asset_path: "${{ env.COLLECTION_FILE }}" + asset_name: "${{ env.COLLECTION_FILE }}" + asset_content_type: application/gzip + + # Publish the collection to Ansible Galaxy + - name: Publish to Ansible Galaxy + env: + GALAXY_TOKEN: ${{ secrets.GALAXY_TOKEN }} + run: | + ansible-galaxy collection publish "${{ env.COLLECTION_FILE }}" --api-key $GALAXY_TOKEN diff --git a/.gitignore b/.gitignore index f9c2f56..5680451 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ inventory.yml tests/output/ tests/integration/inventory changelogs/.plugin-cache.yaml +*.tar.gz diff --git a/README.md b/README.md index 55ab207..9a01aca 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,32 @@ # Ansible Collection - sophos.sophos_firewall +This collection provides modules for working with Sophos Firewall running SFOS 18.0+. The modules leverage the [sophosfirewall-python](https://sophosfirewall-python.readthedocs.io) SDK to perform operations on the firewall using the embedded [XML API](https://docs.sophos.com/nsg/sophos-firewall/21.0/API/index.html). + +For installation and usage details, please see the [Documentation](https://sophosfirewall-ansible.readthedocs.io) + + +## Contributing +This is an open source project and we welcome contributions from the community. To get started, fork this repository and perform development in the fork. The following guidelines should be followed: + +- This project uses [Semantic Versioning](https://semver.org) +- When adding new modules, increment the `MINOR` version +- When making bug fixes, increment the `PATCH` version +- When adding new modules, configure the `version_added` field to the new version the module will be added to +- Update the `version` field in `galaxy.yml` to the new version +- In the `changelogs/fragments` directory, add a file named `x.y.z.yaml` where x.y.z indicates the version +- The file should have at a minimum, a `release_summary` field for example: +```yaml +release_summary: | + This release introduces new modules for working with the X feature on Sophos Firewall +``` +- Github Actions will take care of updating the documentation and changelog automatically upon PR merge + +### Tests +When adding a new module, integration tests should be written and stored under the `tests/integration` directory. Each module should have a directory in the `targets` folder, and a `main.yml` file implementing the test cases. Tests can be run against a physical or virtual Sophos Firewall appliance. To run these tests against your own firewall, a file `integration_config.yml` must be created in the `tests` directory. An file `integration.yml.template` file is provided as an example. The variables in the example file should be replaced with the actual values, and the file renamed to `integration.yml`. Once these steps are complete, tests for a specific module can be run using `ansible-test integration [module_name]`: + +```bash +ansible-test integration sfos_syslog -v +``` + + + -Documentation for the collection. diff --git a/docs/conf copy.py b/docs/conf copy.py deleted file mode 100644 index 4fc1b95..0000000 --- a/docs/conf copy.py +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (c) Ansible Project -# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) -# SPDX-License-Identifier: GPL-3.0-or-later - -# Created with antsibull-docs 2.14.0 - -# This file only contains a selection of the most common options. For a full list see the -# documentation: -# http://www.sphinx-doc.org/en/master/config - -project = 'Sophos Firewall' -copyright = 'Sophos, Ltd.' - -title = 'Sophos Firewall Ansible Collection' -html_short_title = 'Sophos Firewall Ansible Collection' - -extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx_antsibull_ext'] - -pygments_style = 'ansible' - -highlight_language = 'YAML+Jinja' - -html_theme = 'sphinx_ansible_theme' -html_show_sphinx = False - -display_version = False - -html_use_smartypants = True -html_use_modindex = False -html_use_index = False -html_copy_source = False - -# See https://www.sphinx-doc.org/en/master/usage/extensions/intersphinx.html#confval-intersphinx_mapping for the syntax -intersphinx_mapping = { - 'python': ('https://docs.python.org/2/', (None, '../python2.inv')), - 'python3': ('https://docs.python.org/3/', (None, '../python3.inv')), - 'jinja2': ('http://jinja.palletsprojects.com/', (None, '../jinja2.inv')), - 'ansible_devel': ('https://docs.ansible.com/ansible/devel/', (None, '../ansible_devel.inv')), - # If you want references to resolve to a released Ansible version (say, `5`), uncomment and replace X by this version: - # 'ansibleX': ('https://docs.ansible.com/ansible/X/', (None, '../ansibleX.inv')), -} - -default_role = 'any' - -nitpicky = True diff --git a/docs/conf.py b/docs/conf.py index 4fc1b95..e4c3f19 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -30,6 +30,8 @@ html_use_index = False html_copy_source = False +html_static_path = ['static'] + # See https://www.sphinx-doc.org/en/master/usage/extensions/intersphinx.html#confval-intersphinx_mapping for the syntax intersphinx_mapping = { 'python': ('https://docs.python.org/2/', (None, '../python2.inv')), diff --git a/docs/docsite/config.yml b/docs/docsite/config.yml new file mode 100644 index 0000000..fcdb4e0 --- /dev/null +++ b/docs/docsite/config.yml @@ -0,0 +1,2 @@ +changelog: + write_changelog: true \ No newline at end of file diff --git a/docs/docsite/extra-docs.yml b/docs/docsite/extra-docs.yml new file mode 100644 index 0000000..9af08f2 --- /dev/null +++ b/docs/docsite/extra-docs.yml @@ -0,0 +1,5 @@ +sections: + - title: Installation and Setup + toctree: + - installation + - setup \ No newline at end of file diff --git a/docs/docsite/rst/installation.rst b/docs/docsite/rst/installation.rst new file mode 100644 index 0000000..ffa1535 --- /dev/null +++ b/docs/docsite/rst/installation.rst @@ -0,0 +1,29 @@ +.. _ansible_collections.sophos.sophos_firewall.docsite.installation: + +Installation +============ + +Prerequisites +------------- +The following must be installed prior to installing the module: + +* Python 3.11+ +* Ansible 2.16+ +* sophosfirewall-python 0.1.56+ + +The sophosfirewall-python module can be installed with ``pip``: + +.. code-block:: bash + + $ pip install sophosfirewall-python + +Install +------- +The Sophos Firewall Ansible Collection can be installed using the ``ansible-galaxy`` command-line utility: + +.. code-block:: bash + + $ ansible-galaxy collection install sophos.sophos_firewall + + + diff --git a/docs/docsite/rst/setup.rst b/docs/docsite/rst/setup.rst new file mode 100644 index 0000000..27508d6 --- /dev/null +++ b/docs/docsite/rst/setup.rst @@ -0,0 +1,11 @@ +.. _ansible_collections.sophos.sophos_firewall.docsite.setup: + +Setup +===== +Prior to using the Ansible modules, the firewall must be set up to allow access to the API +from the IP address of the system running Ansible. + +In the firewall dashboard, navigate to **Backup & firmware** and click on the **API** tab. +Check the box to enable API Configuration, and add the Ansible controller to the Allowed IP address field. + +.. image:: ../../_static/images/setup.jpg diff --git a/docs/rst/changelog.rst b/docs/rst/changelog.rst new file mode 100644 index 0000000..d1543d0 --- /dev/null +++ b/docs/rst/changelog.rst @@ -0,0 +1,63 @@ +===================================== +Sophos.Sophos\_Firewall Release Notes +===================================== + +.. contents:: Topics + +v1.2.0 +====== + +Release Summary +--------------- + +This release adds modules for working with IPS and Syslog settings + +New Modules +----------- + +- sophos.sophos_firewall.sfos_ips - Manage IPS protection (Protect > Intrusion Protection > IPS policies). +- sophos.sophos_firewall.sfos_syslog - Manage Syslog servers (Configure > System services > Log settings). + +v1.1.0 +====== + +Release Summary +--------------- + +This release contains new modules for working with the SNMP agent and SNMPv3 users on Sophos Firewall + +New Modules +----------- + +- sophos.sophos_firewall.sfos_snmp_agent - Manage SNMP Agent (System > Administration > SNMP). +- sophos.sophos_firewall.sfos_snmp_user - Manage SNMPv3 User (System > Administration > SNMP). + +v1.0.0 +====== + +Release Summary +--------------- + +This is the first proper release of the ``sophos.sophos_firewall`` collection. + +New Modules +----------- + +- sophos.sophos_firewall.sfos_admin_settings - Manage Admin and user settings (System > Administration). +- sophos.sophos_firewall.sfos_atp - Manage Active Threat Protection (Protect > Active threat response > Sophos X-Ops threat feeds). +- sophos.sophos_firewall.sfos_backup - Manage Backup settings (System > Backup & firmware). +- sophos.sophos_firewall.sfos_device_access_profile - Manage Device Access Profiles (System > Profiles > Device Access). +- sophos.sophos_firewall.sfos_dns - Manage DNS settings (Configure > Network > DNS). +- sophos.sophos_firewall.sfos_firewall_rule - Manage Firewall Rules (Protect > Rules & policies). +- sophos.sophos_firewall.sfos_fqdn_host - Manage FQDN hosts (System > Hosts & services > FQDN host). +- sophos.sophos_firewall.sfos_fqdn_hostgroup - Manage FQDN Host Groups (System > Hosts & services > FQDN host group). +- sophos.sophos_firewall.sfos_ip_host - Manage IP Host (System > Hosts & services > IP host). +- sophos.sophos_firewall.sfos_ip_hostgroup - Manage IP Hostgroup (System > Hosts & services > IP host group). +- sophos.sophos_firewall.sfos_malware_protection - Manage Malware Protection (Configure > System services > Malware protection). +- sophos.sophos_firewall.sfos_service - Manage Service (System > Hosts and services > Services). +- sophos.sophos_firewall.sfos_service_acl_exception - Manage Local Service Exception ACL Rules (System > Administration > Device Access). +- sophos.sophos_firewall.sfos_servicegroup - Manage Service Group (System > Hosts and services > Service Group). +- sophos.sophos_firewall.sfos_time - Manage Date and Time settings (System > Administration > Time). +- sophos.sophos_firewall.sfos_user - Manage Users (Configure > Authentication > Users). +- sophos.sophos_firewall.sfos_xmlapi - Use the XML API to get, create, update, or delete settings on Sophos Firewall. +- sophos.sophos_firewall.sfos_zone - Manage Zones (Configure > Network > Zones). diff --git a/docs/rst/docsite/installation.rst b/docs/rst/docsite/installation.rst new file mode 100644 index 0000000..ffa1535 --- /dev/null +++ b/docs/rst/docsite/installation.rst @@ -0,0 +1,29 @@ +.. _ansible_collections.sophos.sophos_firewall.docsite.installation: + +Installation +============ + +Prerequisites +------------- +The following must be installed prior to installing the module: + +* Python 3.11+ +* Ansible 2.16+ +* sophosfirewall-python 0.1.56+ + +The sophosfirewall-python module can be installed with ``pip``: + +.. code-block:: bash + + $ pip install sophosfirewall-python + +Install +------- +The Sophos Firewall Ansible Collection can be installed using the ``ansible-galaxy`` command-line utility: + +.. code-block:: bash + + $ ansible-galaxy collection install sophos.sophos_firewall + + + diff --git a/docs/rst/docsite/setup.rst b/docs/rst/docsite/setup.rst new file mode 100644 index 0000000..27508d6 --- /dev/null +++ b/docs/rst/docsite/setup.rst @@ -0,0 +1,11 @@ +.. _ansible_collections.sophos.sophos_firewall.docsite.setup: + +Setup +===== +Prior to using the Ansible modules, the firewall must be set up to allow access to the API +from the IP address of the system running Ansible. + +In the firewall dashboard, navigate to **Backup & firmware** and click on the **API** tab. +Check the box to enable API Configuration, and add the Ansible controller to the Allowed IP address field. + +.. image:: ../../_static/images/setup.jpg diff --git a/docs/rst/index.rst b/docs/rst/index.rst index aaf611d..57cb5f3 100644 --- a/docs/rst/index.rst +++ b/docs/rst/index.rst @@ -7,7 +7,7 @@ Sophos.Sophos_Firewall ====================== -Collection version 1.0.0 +Collection version 1.2.0 .. contents:: :local: @@ -16,7 +16,7 @@ Collection version 1.0.0 Description ----------- -This Ansible collection contains modules for working with Sophos Firewall \ +This Ansible collection contains modules for working with Sophos Firewall (https://www.sophos.com/en-us/products/next-gen-firewall) **Author:** @@ -31,9 +31,6 @@ This Ansible collection contains modules for working with Sophos Firewall \`_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -1529,9 +1529,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_atp_module.rst b/docs/rst/sfos_atp_module.rst index 6bd9fa2..cd6c485 100644 --- a/docs/rst/sfos_atp_module.rst +++ b/docs/rst/sfos_atp_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_atp module -- Manage Active Threat Protection (Prote .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -563,9 +563,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_backup_module.rst b/docs/rst/sfos_backup_module.rst index 89c1a1f..b385554 100644 --- a/docs/rst/sfos_backup_module.rst +++ b/docs/rst/sfos_backup_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_backup module -- Manage Backup settings (System \> B .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -908,9 +908,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_device_access_profile_module.rst b/docs/rst/sfos_device_access_profile_module.rst index a75204d..6ac092a 100644 --- a/docs/rst/sfos_device_access_profile_module.rst +++ b/docs/rst/sfos_device_access_profile_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_device_access_profile module -- Manage Device Access .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -3013,9 +3013,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_dns_module.rst b/docs/rst/sfos_dns_module.rst index ce6e65d..7557db4 100644 --- a/docs/rst/sfos_dns_module.rst +++ b/docs/rst/sfos_dns_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_dns module -- Manage DNS settings (Configure \> Netw .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -898,9 +898,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_firewall_rule_module.rst b/docs/rst/sfos_firewall_rule_module.rst index 9adb3fc..0e0c002 100644 --- a/docs/rst/sfos_firewall_rule_module.rst +++ b/docs/rst/sfos_firewall_rule_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_firewall_rule module -- Manage Firewall Rules (Prote .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -922,9 +922,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_fqdn_host_module.rst b/docs/rst/sfos_fqdn_host_module.rst index c5cd183..92f95df 100644 --- a/docs/rst/sfos_fqdn_host_module.rst +++ b/docs/rst/sfos_fqdn_host_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_fqdn_host module -- Manage FQDN hosts (System \> Hos .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -589,9 +589,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_fqdn_hostgroup_module.rst b/docs/rst/sfos_fqdn_hostgroup_module.rst index 5e52ae6..8f5c477 100644 --- a/docs/rst/sfos_fqdn_hostgroup_module.rst +++ b/docs/rst/sfos_fqdn_hostgroup_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_fqdn_hostgroup module -- Manage FQDN Host Groups (Sy .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -603,9 +603,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_ip_host_module.rst b/docs/rst/sfos_ip_host_module.rst index 98b8cf1..7e3296e 100644 --- a/docs/rst/sfos_ip_host_module.rst +++ b/docs/rst/sfos_ip_host_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_ip_host module -- Manage IP Host (System \> Hosts & .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -703,9 +703,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_ip_hostgroup_module.rst b/docs/rst/sfos_ip_hostgroup_module.rst index 581a1e2..bbd719b 100644 --- a/docs/rst/sfos_ip_hostgroup_module.rst +++ b/docs/rst/sfos_ip_hostgroup_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_ip_hostgroup module -- Manage IP Hostgroup (System \ .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -603,9 +603,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_ips_module.rst b/docs/rst/sfos_ips_module.rst index 3636870..8a338e9 100644 --- a/docs/rst/sfos_ips_module.rst +++ b/docs/rst/sfos_ips_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_ips module -- Manage IPS protection (Protect \> Intr .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -37,7 +37,7 @@ sophos.sophos_firewall.sfos_ips module -- Manage IPS protection (Protect \> Intr .. rst-class:: ansible-version-added -New in sophos.sophos\_firewall 1.0.0 +New in sophos.sophos\_firewall 1.2.0 .. contents:: :local: @@ -477,9 +477,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_malware_protection_module.rst b/docs/rst/sfos_malware_protection_module.rst index 38d2b06..89cf118 100644 --- a/docs/rst/sfos_malware_protection_module.rst +++ b/docs/rst/sfos_malware_protection_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_malware_protection module -- Manage Malware Protecti .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -477,9 +477,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_service_acl_exception_module.rst b/docs/rst/sfos_service_acl_exception_module.rst index 91d9f54..5978a7b 100644 --- a/docs/rst/sfos_service_acl_exception_module.rst +++ b/docs/rst/sfos_service_acl_exception_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_service_acl_exception module -- Manage Local Service .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -779,9 +779,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_service_module.rst b/docs/rst/sfos_service_module.rst index 1a2b581..3623076 100644 --- a/docs/rst/sfos_service_module.rst +++ b/docs/rst/sfos_service_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_service module -- Manage Service (System \> Hosts an .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -847,9 +847,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_servicegroup_module.rst b/docs/rst/sfos_servicegroup_module.rst index 993a5d8..bd94e30 100644 --- a/docs/rst/sfos_servicegroup_module.rst +++ b/docs/rst/sfos_servicegroup_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_servicegroup module -- Manage Service Group (System .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -560,9 +560,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_snmp_agent_module.rst b/docs/rst/sfos_snmp_agent_module.rst index 30159a8..2afffd0 100644 --- a/docs/rst/sfos_snmp_agent_module.rst +++ b/docs/rst/sfos_snmp_agent_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_snmp_agent module -- Manage SNMP Agent (System \> Ad .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -617,9 +617,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_snmp_user_module.rst b/docs/rst/sfos_snmp_user_module.rst index 5f31a40..918e962 100644 --- a/docs/rst/sfos_snmp_user_module.rst +++ b/docs/rst/sfos_snmp_user_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_snmp_user module -- Manage SNMPv3 User (System \> Ad .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -780,9 +780,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_syslog_module.rst b/docs/rst/sfos_syslog_module.rst index 7c97e44..34934dc 100644 --- a/docs/rst/sfos_syslog_module.rst +++ b/docs/rst/sfos_syslog_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_syslog module -- Manage Syslog servers (Configure \> .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -37,7 +37,7 @@ sophos.sophos_firewall.sfos_syslog module -- Manage Syslog servers (Configure \> .. rst-class:: ansible-version-added -New in sophos.sophos\_firewall 1.0.0 +New in sophos.sophos\_firewall 1.2.0 .. contents:: :local: @@ -3749,9 +3749,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_time_module.rst b/docs/rst/sfos_time_module.rst index 605c73b..c2f1ccb 100644 --- a/docs/rst/sfos_time_module.rst +++ b/docs/rst/sfos_time_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_time module -- Manage Date and Time settings (System .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -789,9 +789,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_user_module.rst b/docs/rst/sfos_user_module.rst index a4d418d..61fdaf1 100644 --- a/docs/rst/sfos_user_module.rst +++ b/docs/rst/sfos_user_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_user module -- Manage Users (Configure \> Authentica .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -1272,9 +1272,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_xmlapi_module.rst b/docs/rst/sfos_xmlapi_module.rst index 552a394..5ba8f27 100644 --- a/docs/rst/sfos_xmlapi_module.rst +++ b/docs/rst/sfos_xmlapi_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_xmlapi module -- Use the XML API to get, create, upd .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -689,9 +689,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/rst/sfos_zone_module.rst b/docs/rst/sfos_zone_module.rst index 34e272e..a27a394 100644 --- a/docs/rst/sfos_zone_module.rst +++ b/docs/rst/sfos_zone_module.rst @@ -22,7 +22,7 @@ sophos.sophos_firewall.sfos_zone module -- Manage Zones (Configure \> Network \> .. Collection note .. note:: - This module is part of the `sophos.sophos_firewall collection `_ (version 1.0.0). + This module is part of the `sophos.sophos_firewall collection `_ (version 1.2.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. @@ -1368,9 +1368,6 @@ Collection links - title: "Issue Tracker" url: "https://github.com/sophos/sophosfirewall-ansible/issues" external: true - - title: "Homepage" - url: "http://example.com" - external: true - title: "Repository (Sources)" url: "https://github.com/sophos/sophosfirewall-ansible" external: true diff --git a/docs/static/images/setup.jpg b/docs/static/images/setup.jpg new file mode 100644 index 0000000000000000000000000000000000000000..694f07cfe712b4eec9b48afec3afaf1967e158c9 GIT binary patch literal 104353 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 +description: This Ansible collection contains modules for working with Sophos Firewall (https://www.sophos.com/en-us/products/next-gen-firewall) # 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' @@ -46,10 +46,10 @@ dependencies: {} repository: https://github.com/sophos/sophosfirewall-ansible # The URL to any online docs -documentation: http://docs.example.com +documentation: https://sophosfirewall-ansible.readthedocs.io # The URL to the homepage of the collection/project -homepage: http://example.com +homepage: https://sophosfirewall-ansible.readthedocs.io # The URL to the collection issue tracker issues: https://github.com/sophos/sophosfirewall-ansible/issues