Update docs (#283)

This commit is contained in:
Alessandro Fael Garcia 2020-07-10 17:55:01 +02:00 committed by GitHub
parent 857ba8c899
commit 968bf3e10c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 91 additions and 64 deletions

View File

@ -1,10 +1,10 @@
### Proposed changes ### Proposed changes
Describe the use case and detail of the change. If this PR addresses an issue on GitHub, make sure to include a link to that issue here in this description (not in the title of the PR). Describe the use case and detail of the change. If this PR addresses an issue on GitHub, make sure to include a link to that issue using one of the [supported keywords](https://docs.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue) here in this description (not in the title of the PR).
### Checklist ### Checklist
Before creating a PR, run through this checklist and mark each as complete. Before creating a PR, run through this checklist and mark each as complete.
- [ ] I have read the [CONTRIBUTING](https://github.com/nginxinc/ansible-role-nginx/blob/master/CONTRIBUTING.md) document - [ ] I have read the [CONTRIBUTING](https://github.com/nginxinc/ansible-role-nginx/blob/master/CONTRIBUTING.md) document
- [ ] If necessary, I have added Molecule tests that prove my fix is effective or that my feature works - [ ] If necessary, I have added Molecule tests that prove my fix is effective or that my feature works
- [ ] I have checked that all unit tests pass after adding my changes - [ ] I have checked that all Molecule tests pass after adding my changes
- [ ] If required, I have updated necessary documentation (`defaults/main/` and `README.md`) - [ ] I have updated any necessary documentation (`defaults/main/*.yml`, `README.md` and `CHANGELOG.md`)

View File

@ -1,28 +1,60 @@
# Changelog # Changelog
## 0.14.0 ## 0.15.0 (Unreleased)
BREAKING CHANGES:
* The Debian and Ubuntu repositories have slightly changed. You may run into some duplication issues when running the role on a preexisting target that already has had NGINX installed using the role. To fix this, manually remove the old repository source.
* If you use `custom_options` you will now need to manually end each directive with a semicolon.
FEATURES:
* Add support to configure logrotate
* Add support for Ubuntu Focal
* Add support to configure SELinux
ENHANCEMENTS:
* Use `include_tasks` instead of `import_tasks` when possible to speed up the role's execution time
* Improve configuration templating capabilities:
* Add support for unix upstreams
* Add PID templating option
* Add support for down parameter in upstreams
* Add option for custom error pages
BUG FIXES:
* `nginx_debug_output` would sometimes fail if the NGINX had not been automatically started by the system upon installation
* If `http_demo_conf` was undefined the web server template interpolation would fail
## 0.14.0 (April 22, 2020)
This is a relatively minor release, but it includes a potential breaking change (hence the version bump). The one major new feature is the ability to install/build NGINX Open Source from source. This is a relatively minor release, but it includes a potential breaking change (hence the version bump). The one major new feature is the ability to install/build NGINX Open Source from source.
Features: BREAKING CHANGES:
* The NGINX Controller agent can no longer be installed using this role. Please use the Ansible collection linked in the README.
FEATURES:
* Install/build NGINX from source options now available * Install/build NGINX from source options now available
* Implement NGINX http sub module templating * Implement NGINX http sub module templating
* NGINX config is now correctly validated each run * NGINX config is now correctly validated each run
* SSL Private Key data is hidden when running the role with the --diff flag * SSL Private Key data is hidden when running the role with the --diff flag
Bug fixes: BUG FIXES:
* The role should no longer sporadically cause apt update to fail in amd64 systems when installing NGINX from an official repository * The role should no longer sporadically cause apt update to fail in amd64 systems when installing NGINX from an official repository
* Modules should now correctly install when using a specific NGINX Plus version * Modules should now correctly install when using a specific NGINX Plus version
Breaking changes: ## 0.13.0 (December 13, 2019)
* The NGINX Controller agent can no longer be installed using this role. Please use the Ansible collection linked in the README BREAKING CHANGES:
## 0.13.0 * The new listen templating options are not backwards with the previous listen templating options. Check the `README` or `molecule/template_module/playbook.yml` for examples on how to use the new listen template.
* BSD and Linux NGINX installation tasks have undergone some major changes. As such, you may have to update your playbooks accordingly.
Features: FEATURES:
* Improve NGINX http templating: * Improve NGINX http templating:
* Multiple server support in HTTP contexts * Multiple server support in HTTP contexts
@ -42,20 +74,15 @@ Features:
* Support for updating or removing NGINX from your system * Support for updating or removing NGINX from your system
* Implemented tags to support running specific tasks instead of the whole role * Implemented tags to support running specific tasks instead of the whole role
Bug fixes: BUG FIXES:
* Module installation when using NGINX Plus has been fixed * Module installation when using NGINX Plus has been fixed
* Websockets templating has been reenabled after being accidentally deleted * Websockets templating has been reenabled after being accidentally deleted
* When deleting your NGINX Plus license from the system, the NGINX Plus repository will also be deleted to prevent issues further down the line if you run a repository update since there will not be a license anymore to authenticate into the NGINX Plus repository. * When deleting your NGINX Plus license from the system, the NGINX Plus repository will also be deleted to prevent issues further down the line if you run a repository update since there will not be a license anymore to authenticate into the NGINX Plus repository.
Breaking changes: ## 0.12.0 (May 22, 2019)
* The new listen templating options are not backwards with the previous listen templating options. Check the `README` or `molecule/template_module/playbook.yml` for examples on how to use the new listen template. FEATURES:
* BSD and Linux NGINX installation tasks have undergone some major changes. As such, you may have to update your playbooks accordingly.
## 0.12.0
Features:
* Improve NGINX http templating - following parameters are now supported: * Improve NGINX http templating - following parameters are now supported:
* Websockets * Websockets
@ -68,13 +95,13 @@ Features:
* Add basic NGINX stream templating * Add basic NGINX stream templating
* Add support for RHEL 8 and Alpine Linux * Add support for RHEL 8 and Alpine Linux
Bug fixes: BUG FIXES:
* Fix module installation tasks * Fix module installation tasks
## 0.11.0 ## 0.11.0 (Januray 14, 2019)
Features: FEATURES:
* Allow setting a custom apt and rpm signing key host * Allow setting a custom apt and rpm signing key host
* Add support for enabling an http to https redirects * Add support for enabling an http to https redirects
@ -85,110 +112,110 @@ Features:
* Improve SSL defaults * Improve SSL defaults
* Allow setting http or https server locations in proxy_pass * Allow setting http or https server locations in proxy_pass
Bug fixes: BUG FIXES:
* Ignore undefined values for autoindex and health check * Ignore undefined values for autoindex and health check
* Clarify that the redirect variable refers to a http to https redirect * Clarify that the redirect variable refers to a http to https redirect
## 0.10.1 ## 0.10.1 (November 26, 2018)
Bug fixes: BUG FIXES:
* Fix HTML template to use correct variable name * Fix HTML template to use correct variable name
## 0.10.0 ## 0.10.0 (November 26, 2018)
Features: FEATURES:
* Improve templating support for health checks, multiple location blocks, and auto indexing * Improve templating support for health checks, multiple location blocks, and auto indexing
Bug fixes: BUG FIXES:
* Fetching the NGINX signing key is now more reliable * Fetching the NGINX signing key is now more reliable
* Fixed HTML templating * Fixed HTML templating
## 0.9.0 ## 0.9.0 (October 18, 2018)
Features: FEATURES:
* Refactor NGINX templating and file uploading * Refactor NGINX templating and file uploading
* Add ability to upload and template HTML files * Add ability to upload and template HTML files
* Add ability to upload SSL keys and certificates * Add ability to upload SSL keys and certificates
## 0.8.0 ## 0.8.0 (September 17, 2018)
Features: FEATURES:
* Add ability to install NGINX Plus Controller agent * Add ability to install NGINX Plus Controller agent
* Refactor installation of NGINX Amplify agent * Refactor installation of NGINX Amplify agent
* Rename variables to be prefixed with `nginx_` * Rename variables to be prefixed with `nginx_`
Bug fixes: BUG FIXES:
* Correct spelling of name in `tasks/prerequisites/setup-debian.yml` * Correct spelling of name in `tasks/prerequisites/setup-debian.yml`
## 0.7.1 ## 0.7.1 (August 21, 2018)
Features: FEATURES:
* Add enabled parameter to NGINX and NGINX Unit handlers * Add enabled parameter to NGINX and NGINX Unit handlers
## 0.7.0 ## 0.7.0 (August 4, 2018)
Features: FEATURES:
* Add Amazon Linux 2 support for NGINX Plus * Add Amazon Linux 2 support for NGINX Plus
* Add ability to delete NGINX Plus license after installation * Add ability to delete NGINX Plus license after installation
Bug fixes: BUG FIXES:
* GeoIP module can now be properly installed * GeoIP module can now be properly installed
* Module installation will no longer fail if only one module is specified * Module installation will no longer fail if only one module is specified
## 0.6.0 ## 0.6.0 (July 19, 2018)
Features: FEATURES:
* Improve NGINX Unit related documentation * Improve NGINX Unit related documentation
* Add FreeBSD and Amazon Linux 2 support for NGINX Unit * Add FreeBSD and Amazon Linux 2 support for NGINX Unit
* Allow users to install NGINX Unit without having to also install NGINX * Allow users to install NGINX Unit without having to also install NGINX
## 0.5.0 ## 0.5.0 (June 28, 2018)
Features: FEATURES:
* Add support for NGINX Unit * Add support for NGINX Unit
## 0.4.0 ## 0.4.0 (May 25, 2018)
Features: FEATURES:
* Implement support for FreeBSD * Implement support for FreeBSD
* Allow users to select the default NGINX repository * Allow users to select the default NGINX repository
## 0.3.0 ## 0.3.0 (April 19, 2018)
New features: FEATURES:
* Improve Travis CI testing strategy * Improve Travis CI testing strategy
Bug fixes: BUG FIXES:
* Fix templating and push tasks * Fix templating and push tasks
## 0.2.0 ## 0.2.0 (April 12, 2018)
New features: FEATURES:
* Add support for all first party NGINX modules * Add support for all first party NGINX modules
Bug fixes: BUG FIXES:
* Role should now work correctly in distros with old versions of Python * Role should now work correctly in distros with old versions of Python
* Rest API configuration will now only be created when rest_api_enable is set to true (an empty file would be created in previous versions if rest_api_enable was set to false) * Rest API configuration will now only be created when rest_api_enable is set to true (an empty file would be created in previous versions if rest_api_enable was set to false)
* Uploading/dynamically generating files should now result in the files being uploaded/created to/in the correct directory * Uploading/dynamically generating files should now result in the files being uploaded/created to/in the correct directory
## 0.1.0 - Initial release ## 0.1.0 - Initial release (Januray 26, 2018)
Initial release of the NGINX Ansible role. Features include: Initial release of the NGINX Ansible role. Features include:

View File

@ -18,7 +18,7 @@ The following is a set of guidelines for contributing to the NGINX Ansible role.
## Ask a Question ## Ask a Question
Please open an Issue on GitHub with the label `question`. Don't know how something works? Curious if the role can achieve your desired functionality. Please open an Issue on GitHub with the label `question`.
## Getting Started ## Getting Started
@ -29,7 +29,7 @@ Follow our [Installation Guide](https://github.com/nginxinc/ansible-role-nginx/b
* The NGINX Ansible role is written in `yaml` and supports open source NGINX, NGINX Plus, NGINX Amplify, and NGINX Unit. * The NGINX Ansible role is written in `yaml` and supports open source NGINX, NGINX Plus, NGINX Amplify, and NGINX Unit.
* The project follows the standard [Ansible role directory structure](https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html) * The project follows the standard [Ansible role directory structure](https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html)
* The main code is found in `tasks/` * The main code is found in `tasks/`
* The main variables can be found in `defaults/main/` * The main variables can be found in `defaults/main/*.yml`
* Configuration templates for NGINX can be found in `templates/` * Configuration templates for NGINX can be found in `templates/`
* [Molecule](https://molecule.readthedocs.io/) tests can be found in `molecule/`. * [Molecule](https://molecule.readthedocs.io/) tests can be found in `molecule/`.
* CI/CD is done via Travis using `.travis.yml` deployment yaml files * CI/CD is done via Travis using `.travis.yml` deployment yaml files
@ -46,13 +46,21 @@ To suggest an enhancement, please create an issue on GitHub with the label `enha
### Open a Pull Request ### Open a Pull Request
* Fork the repo, create a branch, submit a PR when your changes are tested (ideally using Molecule) and ready for review * Fork the repo, create a branch, submit a PR when your changes are **tested** (ideally using Molecule) and ready for review
* Fill in [our pull request template](https://github.com/nginxinc/ansible-role-nginx/blob/master/.github/PULL_REQUEST_TEMPLATE.md) * Fill in [our pull request template](https://github.com/nginxinc/ansible-role-nginx/blob/master/.github/PULL_REQUEST_TEMPLATE.md)
Note: if youd like to implement a new feature, please consider creating a feature request issue first to start a discussion about the feature. Note: if youd like to implement a new feature, please consider creating a feature request issue first to start a discussion about the feature.
## Code Guidelines ## Code Guidelines
### Ansible Guidelines
* Run `molecule lint` over your code to automatically resolve a lot of `yaml` and Ansible style issues.
* Run `molecule test --all` on your code before you submit a PR to catch any potential issues.
* Follow these guides on some good practices for Ansible:
* <https://www.ansible.com/blog/ansible-best-practices-essentials>
* <https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html>
### Git Guidelines ### Git Guidelines
* Keep a clean, concise and meaningful git commit history on your branch (within reason), rebasing locally and squashing before submitting a PR * Keep a clean, concise and meaningful git commit history on your branch (within reason), rebasing locally and squashing before submitting a PR
@ -62,11 +70,3 @@ Note: if youd like to implement a new feature, please consider creating a fea
* Limit the subject line to 72 characters or less * Limit the subject line to 72 characters or less
* Reference issues and pull requests liberally after the subject line * Reference issues and pull requests liberally after the subject line
* Add more detailed description in the body of the git message (`git commit -a` to give you more space and time in your text editor to write a good message instead of `git commit -am`) * Add more detailed description in the body of the git message (`git commit -a` to give you more space and time in your text editor to write a good message instead of `git commit -am`)
### Ansible Guidelines
* Run `molecule lint` over your code to automatically resolve a lot of `yaml` and Ansible style issues.
* Run `molecule test --all` on your code to catch any other issues.
* Follow these guides on some good practices for Ansible:
* <https://www.ansible.com/blog/ansible-best-practices-essentials>
* <https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html>