Testing: boilerplate - ansible/community GitHub Wiki

We're working on enabling one new test for ansible. In order to get there, we have to make many files pass the tests first. This page tracks the progress towards the tests passing. We're using it to coordinate effort so that we don't duplicate effort.

The files needing changing

When you take one of these, please put your github and irc nick by the directory that you're working on so other people know to coordinate with you if they're going to work on one. You can also talk to abadger1999 on IRC.

Ordered by approximate work, lowest to highest

  • network/ios
  • network/eos
  • network/netvisor
  • network/aos
  • network/vyos
  • network/panos
  • network/avi
  • cloud/cloudstack
  • contrib [Not a priority: these will transition to inventory plugins over time]
  • cloud/ovirt
  • network/cloudengine
  • network/nxos
  • cloud/amazon
  • module_utils

What work needs doing

boilerplate

We have an existing boilerplate test that makes sure we have from __future__ import absolute_import, division, print_function are in every file. These help with python3 compatibility. This test did not include modules and module_utils due to most futures needing python-2.6 or greater. Now that we've dropped compat for 2.4 and 2.5, we want to change the modules and module_utils and enable the boilerplate for them.

We're also changing the GPL header from the verbose, multiline format to a one-line format as part of this. Although this is optional in the guidelines, it makes a lot of sense for modules and module_utils as it reduces that size of files that have to be shipped across the network to the managed hosts.

The test for this lives in test/sanity/code-smell/boilerplate.sh

How to do the work

Ask abadger1999 for more information in the #ansible-community IRC channel.

Addendum

2018-10-17

  • Only boilerplate still needs to be fixed

2017-08-03

  • There are now two test scripts, one for each of the cleanups. Remove ported modules the scripts.

2017-08-02

  • Addition to the boilerplate changes: If there's no existing copyright header, add # Copyright: Ansible Project
  • Use this page to track work and have latest updates to how we're working on these problems.