Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump Ansible version_tested_max to 2.5.3 #981

Merged
merged 4 commits into from
May 20, 2018
Merged

Bump Ansible version_tested_max to 2.5.3 #981

merged 4 commits into from
May 20, 2018

Conversation

fullyint
Copy link
Contributor

Jinja2 test format

Converts Jinja2 tests from filter format to var is testname format (porting guide).

Erroneous warnings in Ansible 2.5.0

Encourages users on Ansible 2.5.0 to upgrade to avoid erroneous warnings fixed in ansible/ansible#37538. After extensive investigation I found only one hack to prevent the warning in 2.5.0 but it seemed slightly risky (modified remote_user and become_pass entries in MAGIC_VARIABLE_MAPPING processed in clean_facts). I chose instead the conservative approach of printing encouragement to upgrade. An example of what users would see:

PLAY [Ensure necessary variables are defined] ***********************************
 [WARNING]: You Ansible version is 2.5.0. Consider upgrading your Ansible version to
avoid erroneous warnings such as `Removed restricted key from module data...`

PLAY [Test Connection and Determine Remote User] ********************************
...

TASK [connection : Check whether Ansible can connect as root] *******************
ok: [138.68.203.29 -> localhost]
...

TASK [connection : Set remote user for each host] *******************************
 [WARNING]: Removed restricted key from module data: ansible_user = admin
...

Release version number format

Uses the release version number format 2.5.1 instead of 2.5.1.0 in vagrant.default.yml and lib/trellis/plugins/vars/version.py because 2.5.1 is the format of __version__. Vagrant's ansible_local fails to find a version 2.5.1.0 to install, but succeeds with 2.5.1.

Deprecation warnings for include

As a side note, Ansible 2.5.0 and 2.5.1 no longer print [DEPRECATION WARNING]: The use of 'include' for tasks has been deprecated (see #943). I haven't looked into it.

@runofthemill
Copy link
Contributor

What do you think about making 2.5.1 the minimum requirement for the 1.0.0 milestone?

@fullyint fullyint changed the title Bump Ansible version_tested_max to 2.5.1 Bump Ansible version_tested_max to 2.5.2 May 3, 2018
@fullyint
Copy link
Contributor Author

fullyint commented May 3, 2018

I added a commit to cover Ansible 2.5.2. Its release was fast-tracked (changelog). It works fine.

@runofthemill I suppose making 2.5.x the minimum requirement would avoid this PR's detection and warning about 2.5.0. I haven't thought through other benefits. I imagine you have some in mind.

I've become wary of bumping the minimum Ansible requirement unless absolutely necessary because of complicating things for users with multiple Trellis projects on multiple Ansible versions (examples: one, two).

@runofthemill
Copy link
Contributor

@fullyint I've had that issue too, working on an older project that needed Ansible 2.3.x, and it was definitely a complication, so I see your reservations there.

Honestly I think it's just a good opportunity to get ahead of some issues that would require a minor version release that anyone with multiple Trellis projects will have to deal with eventually. If Trellis is going to follow sem-ver once it hits 1.0.0 (see #634) in my mind it makes sense to deal with sooner rather than later, to be able to take advantage of all the work that's gone into improving functionality & bug fixes in Ansible.

On the other hand, it'd probably be easy to do down the line too as a minor release, so take the above as me just thinking aloud :)

@fullyint fullyint changed the title Bump Ansible version_tested_max to 2.5.2 Bump Ansible version_tested_max to 2.5.3 May 19, 2018
@fullyint
Copy link
Contributor Author

I added a commit to cover Ansible 2.5.3. It works fine.

Convert Jinja2 tests from filter format to `var is testname` format.
Encourage users on Ansible 2.5.0 to upgrade to avoid erroneous warnings
fixed in ansible/ansible 37538
@fullyint fullyint merged commit 30ae7fe into master May 20, 2018
@fullyint fullyint deleted the ansible-2.5 branch May 20, 2018 19:01
greatislander pushed a commit to pressbooks/trellis that referenced this pull request Jun 7, 2018
* Add xdebug.remote_autostart to simplify xdebug sessions

* Update logrotate doc URL [ci skip]

* Update WP-CLI to 1.5.1.

* Update changelog. [ci skip]

* Update geerlingguy.composer 1.6.1->1.7.0 (roots#983)

Update from `1.6.1` -> `1.7.0` which addresses roots#943 ([DEPRECATION WARNING]: The use of 'include' for tasks has been deprecated.)

* Update geerlingguy.ntp 1.5.2->1.6.0 (roots#984)

Avoids deprecation warnings introduced in Ansible 2.4:
"The use of 'include' for tasks has been deprecated."

* Enable nginx to start on boot (roots#980)

* update changelog

* 'yarn run' -> 'yarn' [ci skip]

* Issue warning for all Ubuntu releases that are not Xenial (roots#986)

* Clarify that changelog entry indicates Trellis version (roots#987)

* Validate python version on control machine (roots#988)

* Common: Install `git` instead of `git-core`

Because `git-core` is now a dummy package of `git`.

See: http://git.661346.n2.nabble.com/git-core-vs-git-package-on-ubuntu-tp7576083p7576085.html

* Add CSP frame-ancestors, make X-Frame-Options conditional (roots#977)

The X-Frame-Options header has been obsoleted by the frame-ancestors
directive. Retain the X-Frame-Options header for older browsers.

Return empty X-Frame-Options header for WordPress Customizer content
to prevent the conflict that SAMEORIGIN would have with the ALLOW-FROM
option that WordPress adds on its own (Safari browser).
Discussion in https://core.trac.wordpress.org/ticket/40020

* Improve failed_when rule for Wordpress Installed check (roots#991)

In rare cases the wp_installed registered var may be missing the
stderr attribute, so add a default to avoid related error.

The `wp core  is-installed` command return code is 1 if WP is simply
not installed. However, in rare cases the command may return some
other return code indicative of true failure, so fail if rc > 1.

* deploy.sh: Return non-zero exit code when misuse (roots#990)

- Exit with `127` when not enough arguments
- Exit with `1` when hosts file not exist

See: http://www.tldp.org/LDP/abs/html/exitcodes.html

* Skip Acme Challenge failure message for non-failed sites (roots#993)

* Bump Ansible version_tested_max to 2.5.3 (roots#981)

* Bump Ansible version_tested_max to 2.5.3

Convert Jinja2 tests from filter format to `var is testname` format.
Encourage users on Ansible 2.5.0 to upgrade to avoid erroneous warnings
fixed in ansible/ansible 37538

* Add option to enable FastCGI background updates (roots#962)

Enabled by default

* Add quotes to nginx_cache_background_update value "on"

Quotes prevent Ansible from interpolating the variable value as True.
True is an invalid value for fastcgi_cache_background_update and would
would make Nginx unable to reload.

* Verify `wp-cli.phar` checksum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants