Merge pull request #49 from idealista/develop

release 2.4.0
This commit is contained in:
Christian Ardiente 2020-12-30 11:58:51 +01:00 committed by GitHub
commit 602f6e5953
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 57 additions and 37 deletions

View File

@ -8,6 +8,14 @@ This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a ch
### Changed ### Changed
### Removed ### Removed
## [2.4.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.4.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.3.0...2.4.0)
### Added
- *[#45](https://github.com/idealista/cookiecutter-ansible-role/issues/45) Documentation link provided on role generation* @xtianae7
### Changed
- *[#47](https://github.com/idealista/cookiecutter-ansible-role/pull/47) Bump goss version from 0.3.14 to 0.3.16* @vicsufer
- *[#46](https://github.com/idealista/cookiecutter-ansible-role/issues/46) Static tests instead of parameters* @xtianae7
## [2.3.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.3.0) ## [2.3.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.3.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.2.0...2.3.0) ### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.2.0...2.3.0)
### Fixed ### Fixed

View File

@ -1,7 +1,7 @@
# Cookiecutter Ansible Role # Cookiecutter Ansible Role
![Logo](https://raw.githubusercontent.com/idealista/cookiecutter-ansible-role/master/logo.gif) ![Logo](https://raw.githubusercontent.com/idealista/cookiecutter-ansible-role/master/logo.gif)
[![Build Status](https://travis-ci.org/idealista/cookiecutter-ansible-role.png)](https://travis-ci.org/idealista/cookiecutter-ansible-role) [![Build Status](https://travis-ci.com/idealista/cookiecutter-ansible-role.png)](https://travis-ci.com/idealista/cookiecutter-ansible-role)
@ -79,6 +79,7 @@ Select has_templates:
1 - True 1 - True
2 - False 2 - False
Choose from 1, 2 [1]: Choose from 1, 2 [1]:
documentation_URL: https://cli.github.com/manual/
``` ```
It will create the following file structure: It will create the following file structure:

View File

@ -21,5 +21,6 @@
"has_files":["True", "False"], "has_files":["True", "False"],
"comment_2":"If there is service the following options will not have any effect", "comment_2":"If there is service the following options will not have any effect",
"has_handlers":["True", "False"], "has_handlers":["True", "False"],
"has_templates":["True", "False"] "has_templates":["True", "False"],
"documentation_URL":""
} }

View File

@ -3,7 +3,7 @@
set -e set -e
# Generate role # Generate role
printf "cookiecutter==1.7.2\nJinja2==2.11.2" > requirements.txt && pipenv install -r requirements.txt && pipenv run cookiecutter . --no-input app_name="github_cli" exec_name="gh" author="John Doe" min_ansible_version="2.2" ansible_version="2.8.6" molecule_version="3.0.1" python_docker_version="4.1.0" ansible_lint_version="4.2.0" has_service="False" has_files="False" has_handlers="False" has_templates="False" && rm Pipfile* requirements.txt printf "cookiecutter==1.7.2\nJinja2==2.11.2" > requirements.txt && pipenv install -r requirements.txt && pipenv run cookiecutter . --no-input app_name="github_cli" exec_name="gh" author="John Doe" min_ansible_version="2.2" ansible_version="2.8.6" molecule_version="3.0.1" python_docker_version="4.1.0" ansible_lint_version="4.2.0" has_service="False" has_files="False" has_handlers="False" has_templates="False" documentation_URL="https://cli.github.com/manual/" && rm Pipfile* requirements.txt
( (
# Adjust the role to test # Adjust the role to test
cd github_cli_role cd github_cli_role

View File

@ -6,7 +6,7 @@
This ansible role installs [{{ cookiecutter.app_name | replace('_',' ') | title }}](APP_URL_HERE) in a Debian environment. It has been tested for the following Debian versions: This ansible role installs {% if cookiecutter.documentation_URL != "" %}[{% endif %}{{ cookiecutter.app_name | replace('_',' ') | title }}{% if cookiecutter.documentation_URL != "" %}]({{ cookiecutter.documentation_URL }}){% endif %} in a Debian environment. It has been tested for the following Debian versions:
{% if cookiecutter.debian_stretch_support == 'True' %}* Stretch{% endif %} {% if cookiecutter.debian_stretch_support == 'True' %}* Stretch{% endif %}
{% if cookiecutter.debian_buster_support == 'True' %}* Buster{% endif %} {% if cookiecutter.debian_buster_support == 'True' %}* Buster{% endif %}
@ -84,7 +84,7 @@ $ pipenv run molecule test
![Ansible](https://img.shields.io/badge/ansible-{{ cookiecutter.ansible_version }}-green.svg) ![Ansible](https://img.shields.io/badge/ansible-{{ cookiecutter.ansible_version }}-green.svg)
![Molecule](https://img.shields.io/badge/molecule-{{ cookiecutter.molecule_version }}-green.svg) ![Molecule](https://img.shields.io/badge/molecule-{{ cookiecutter.molecule_version }}-green.svg)
![Goss](https://img.shields.io/badge/goss-0.3.14-green.svg) ![Goss](https://img.shields.io/badge/goss-0.3.16-green.svg)
## Versioning ## Versioning

View File

@ -27,7 +27,7 @@
{% if cookiecutter.has_service == 'True' %} {% if cookiecutter.has_service == 'True' %}
## Service options ## Service options
# Documentation # Documentation
{{ cookiecutter.app_name }}_documentation_link: https://www.example.documentation.com {{ cookiecutter.app_name }}_documentation_link: "{{ cookiecutter.documentation_URL }}"
# Owner # Owner
{{ cookiecutter.app_name }}_user: exampleuser {{ cookiecutter.app_name }}_user: exampleuser

View File

@ -1,36 +1,46 @@
--- ---
## TODO: Remember to adapt goss tests to your convenience
file:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_bin_path {% raw %}}}{% endraw %}:
{% if cookiecutter.has_service == 'True' %}
owner: {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}
group: {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}
{% endif %}
exists: true
filetype: directory
{% if cookiecutter.has_service == 'True' %} {% if cookiecutter.has_service == 'True' %}
# port:
# # Check port at IPv6
# # https://github.com/aelsabbahy/goss/issues/177
# tcp6:{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_port {% raw %}}}{% endraw %}:
# listening: true
# ip:
# - '::'
service: service:
{{ cookiecutter.app_name }}: {{ cookiecutter.app_name }}:
enabled: true enabled: true
running: true running: true
process: process:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %}: {{ cookiecutter.exec_name }}:
running: true running: true
user: user:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}: exampleuser:
exists: true exists: true
groups: groups:
- {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %} - examplegroup
shell: /usr/sbin/nologin shell: /usr/sbin/nologin
group: group:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}: examplegroup:
exists: true exists: true
{% endif %} {% endif %}
file:
/opt/{{ cookiecutter.app_name }}:
{% if cookiecutter.has_service == 'True' %}
owner: exampleuser
group: examplegroup
{% endif %}
exists: true
filetype: directory
/opt/{{ cookiecutter.app_name }}/bin:
{% if cookiecutter.has_service == 'True' %}
owner: exampleuser
group: examplegroup
{% endif %}
exists: true
filetype: directory
## Check if ports are really exposed
# port:
# # Check port at IPv6
# # https://github.com/aelsabbahy/goss/issues/177
# tcp6:<port>:
# listening: true
# ip:
# - '::'

View File

@ -8,10 +8,10 @@
- {{ cookiecutter.app_name }} - {{ cookiecutter.app_name }}
become: true become: true
vars: vars:
goss_version: v0.3.14 goss_version: v0.3.16
goss_arch: amd64 goss_arch: amd64
goss_dst: /usr/local/bin/goss goss_dst: /usr/local/bin/goss
goss_sha256sum: 26c481073d346028451d56af600a71ec2d6c7bc960c3e207f610e32c5e1f5144 goss_sha256sum: 827e354b48f93bce933f5efcd1f00dc82569c42a179cf2d384b040d8a80bfbfb
goss_url: "https://github.com/aelsabbahy/goss/releases/download/{% raw %}{{{% endraw %} goss_version {% raw %}}}{% endraw %}/goss-linux-{% raw %}{{{% endraw %} goss_arch {% raw %}}}{% endraw %}" goss_url: "https://github.com/aelsabbahy/goss/releases/download/{% raw %}{{{% endraw %} goss_version {% raw %}}}{% endraw %}/goss-linux-{% raw %}{{{% endraw %} goss_arch {% raw %}}}{% endraw %}"
goss_test_directory: /tmp goss_test_directory: /tmp
goss_format: documentation goss_format: documentation

View File

@ -13,7 +13,7 @@ env:
{% if cookiecutter.debian_stretch_support == 'True' %}- MOLECULE_DISTRO=debian:stretch-slim{% endif %} {% if cookiecutter.debian_stretch_support == 'True' %}- MOLECULE_DISTRO=debian:stretch-slim{% endif %}
{% if cookiecutter.debian_buster_support == 'True' %}- MOLECULE_DISTRO=debian:buster-slim{% endif %} {% if cookiecutter.debian_buster_support == 'True' %}- MOLECULE_DISTRO=debian:buster-slim{% endif %}
script: script:
- pipenv run molecule test - pipenv run molecule test --all
notifications: notifications:
webhooks: https://galaxy.ansible.com/api/v1/notifications/ webhooks: https://galaxy.ansible.com/api/v1/notifications/