mirror of
https://github.com/idealista/cookiecutter-ansible-role.git
synced 2026-03-01 02:19:57 +01:00
Compare commits
27 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0b22e75775 | ||
|
|
4b9688aede | ||
|
|
ef1609d3df | ||
|
|
56f671ec1e | ||
|
|
8d3019b428 | ||
|
|
386caa84d8 | ||
|
|
bbd2874072 | ||
|
|
694e944229 | ||
|
|
2276458f71 | ||
|
|
6e1d2bd537 | ||
|
|
a3ab8589eb | ||
|
|
3b491d6ec6 | ||
|
|
6426ac52ed | ||
|
|
62261d172a | ||
|
|
27b81421ed | ||
|
|
1b0074df0f | ||
|
|
e682a78962 | ||
|
|
8bb728de03 | ||
|
|
f0fe1e0b29 | ||
|
|
5aa4dea3b7 | ||
|
|
9121f1e90f | ||
|
|
e0dbecd5b7 | ||
|
|
bcc3787432 | ||
|
|
5db7847887 | ||
|
|
a195cf54cb | ||
|
|
ac7a9aac6f | ||
|
|
e85a85c5e4 |
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
@@ -76,7 +76,7 @@ Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com
|
||||
### Pull Requests
|
||||
|
||||
* Fill in [the required template](PULL_REQUEST_TEMPLATE.md)
|
||||
* Any pull request should has **idealista:develop** as base branch.
|
||||
* Any pull request should have **idealista:develop** as base branch.
|
||||
|
||||
### Changelog
|
||||
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,7 +3,6 @@ tests/.cache
|
||||
__pycache__
|
||||
.pytest_cache
|
||||
.molecule
|
||||
.vagrant
|
||||
.cache
|
||||
|
||||
*.iml
|
||||
|
||||
@@ -9,7 +9,6 @@ install:
|
||||
- pip3 install cookiecutter
|
||||
env:
|
||||
jobs:
|
||||
- MOLECULE_DISTRO=debian:jessie-slim
|
||||
- MOLECULE_DISTRO=debian:stretch-slim
|
||||
- MOLECULE_DISTRO=debian:buster-slim
|
||||
|
||||
|
||||
23
CHANGELOG.md
23
CHANGELOG.md
@@ -2,6 +2,29 @@
|
||||
All notable changes to this project will be documented in this file.
|
||||
This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a changelog](https://github.com/olivierlacan/keep-a-changelog).
|
||||
|
||||
## Unreleased
|
||||
## [2.0.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.0.0) (2020-10-13)
|
||||
## [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/1.0.1...2.0.0)
|
||||
### Removed
|
||||
- *[#16](https://github.com/idealista/cookiecutter-ansible-role/issues/16) Remove debian jessie support* @pablogcaldito
|
||||
|
||||
### Added
|
||||
- *[#15](https://github.com/idealista/cookiecutter-ansible-role/issues/15) Add pipenv wrapper* @pablogcaldito
|
||||
- * Add boilerplate README.md* @vicsufer
|
||||
|
||||
## [1.0.1](https://github.com/idealista/cookiecutter-ansible-role/tree/1.0.1) (2020-09-17)
|
||||
## [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/1.0.0...1.0.1)
|
||||
### Removed
|
||||
- *[#9](https://github.com/idealista/cookiecutter-ansible-role/issues/9) Remove Vagrant pattern from role gitignore file* @vicsufer
|
||||
|
||||
### Added
|
||||
- *[#4](https://github.com/idealista/cookiecutter-ansible-role/issues/4) Upgrade to Goss v0.3.11* @pablogcaldito
|
||||
|
||||
### Fixed
|
||||
- *[#11](https://github.com/idealista/cookiecutter-ansible-role/issues/11) Fix parameterization of PrivateTmp* @pablogcaldito
|
||||
- *[#7](https://github.com/idealista/cookiecutter-ansible-role/issues/7) Fix bug in in the check version task in install.yml* @pablogcaldito
|
||||
- *[#3](https://github.com/idealista/cookiecutter-ansible-role/issues/3) Fix typo in both contributing files* @pablogcaldito
|
||||
|
||||
## [1.0.0](https://github.com/idealista/cookiecutter-ansible-role/tree/1.0.0) (2020-04-28)
|
||||
|
||||
### Added
|
||||
|
||||
10
README.md
10
README.md
@@ -27,13 +27,11 @@ This cookiecutter:
|
||||
|
||||
### Prerequisities
|
||||
|
||||
Cookiecutter version 1.7.x installed.
|
||||
|
||||
You can satify this requirement with ```pip install cookiecutter```
|
||||
You just need to have [pipenv](https://github.com/pypa/pipenv) installed.
|
||||
|
||||
## Usage
|
||||
|
||||
To generate your ansible role type ```cookiecutter https://github.com/idealista/cookiecutter-ansible-role```.
|
||||
To generate your ansible role type ```printf "cookiecutter==1.7.2\nJinja2==2.11.2" > requirements.txt && pipenv install -r requirements.txt && pipenv run cookiecutter https://github.com/idealista/cookiecutter-ansible-role && rm Pipfile* requirements.txt```.
|
||||
|
||||
Then, introduce some parameters needed for generating it.
|
||||
|
||||
@@ -56,10 +54,6 @@ license [Apache 2.0]:
|
||||
galaxy_tag_1 [example_tag1]: github_cli
|
||||
galaxy_tag_2 [example_tag2]: github
|
||||
galaxy_tag_3 [example_tag3]: cli
|
||||
Select debian_jessie_support:
|
||||
1 - True
|
||||
2 - False
|
||||
Choose from 1, 2 [1]:
|
||||
Select debian_stretch_support:
|
||||
1 - True
|
||||
2 - False
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
"galaxy_tag_1":"example_tag1",
|
||||
"galaxy_tag_2":"example_tag2",
|
||||
"galaxy_tag_3":"example_tag3",
|
||||
"debian_jessie_support":["True", "False"],
|
||||
"debian_stretch_support":["True", "False"],
|
||||
"debian_buster_support":["True", "False"],
|
||||
"has_service":["True", "False"],
|
||||
|
||||
@@ -22,6 +22,7 @@ def configureRole():
|
||||
# Delete the service and things that reference the service
|
||||
os.remove("tasks/service.yml")
|
||||
os.remove("templates/{{ cookiecutter.app_name }}.service.j2")
|
||||
shutil.rmtree("molecule/default/group_vars")
|
||||
# Remove or not the handlers folder
|
||||
if not {{ cookiecutter.has_handlers }}:
|
||||
shutil.rmtree("handlers")
|
||||
@@ -35,7 +36,7 @@ def configureRole():
|
||||
os.remove("files/.empty")
|
||||
|
||||
def generatePipfile():
|
||||
os.system("pipenv install -r test-requirements.txt --three")
|
||||
print("Now cd into the role directory and introduce the following command for it to be ready: \"pipenv install -r test-requirements.txt --three\"")
|
||||
|
||||
def main():
|
||||
checkInput()
|
||||
|
||||
5
test.sh
5
test.sh
@@ -3,7 +3,7 @@
|
||||
set -e
|
||||
|
||||
# Generate role
|
||||
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"
|
||||
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
|
||||
(
|
||||
# Adjust the role to test
|
||||
cd github_cli_role
|
||||
@@ -12,8 +12,9 @@ cookiecutter . --no-input app_name="github_cli" exec_name="gh" author="John Doe"
|
||||
sed -i 's/1.0.0/0.6.4/g' defaults/main.yml
|
||||
sed -i 's/exampleapplication/gh/g' defaults/main.yml
|
||||
# Launch molecule tests
|
||||
pipenv sync
|
||||
pipenv install -r test-requirements.txt --three
|
||||
pipenv run molecule test
|
||||
|
||||
)
|
||||
# Cleanup
|
||||
rm -rf github_cli_role
|
||||
|
||||
@@ -76,7 +76,7 @@ Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com
|
||||
### Pull Requests
|
||||
|
||||
* Fill in [the required template](PULL_REQUEST_TEMPLATE.md)
|
||||
* Any pull request should has **idealista:develop** as base branch.
|
||||
* Any pull request should have **idealista:develop** as base branch.
|
||||
|
||||
### Changelog
|
||||
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
# Change Log
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a changelog](https://github.com/olivierlacan/keep-a-changelog).
|
||||
|
||||
## [Unreleased](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/tree/develop)
|
||||
### Changed
|
||||
### Added
|
||||
### Removed
|
||||
### Fixed
|
||||
|
||||
## [X.Y.Z](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/tree/X.Y.Z)
|
||||
### [Full Changelog](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/compare/1.0.0...X.Y.Z)
|
||||
### Changed
|
||||
*[#<issue_number>](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/issues/<issue_number>) \<Change description\>* @\<author\>
|
||||
|
||||
## [1.0.0](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/tree/1.0.0)
|
||||
- Initial release
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
|
||||
|
||||
|
||||
This ansible role installs [{{ cookiecutter.app_name | replace('_',' ') | title }}](APP_URL_HERE) in a Debian environment. It has been tested for Debian buster and stretch.
|
||||
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:
|
||||
{% if cookiecutter.debian_stretch_support == 'True' %}* Stretch{% endif %}
|
||||
{% if cookiecutter.debian_buster_support == 'True' %}* Buster{% endif %}
|
||||
|
||||
This role has been generated using the [cookiecutter](https://github.com/cookiecutter/cookiecutter) tool, you can generate a similar role that fits your needs using the this [cookiecutter template](https://github.com/idealista/cookiecutter-ansible-role).
|
||||
|
||||
@@ -26,7 +28,7 @@ These instructions will get you a copy of the role for your Ansible playbook. On
|
||||
|
||||
### Prerequisities
|
||||
|
||||
Ansible 2.8.x.x version installed.
|
||||
Ansible {{ cookiecutter.ansible_version }} version installed.
|
||||
|
||||
Molecule 3.x.x version installed.
|
||||
|
||||
@@ -86,7 +88,7 @@ $ pipenv run molecule test
|
||||
|
||||
## Versioning
|
||||
|
||||
For the versions available, see the [tags on this repository](https://github.com/idealista/{{ cookiecutter.app_name }}_role/tags).
|
||||
For the versions available, see the [tags on this repository](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/tags).
|
||||
|
||||
Additionaly you can see what change in each version in the [CHANGELOG.md](CHANGELOG.md) file.
|
||||
|
||||
@@ -94,7 +96,7 @@ Additionaly you can see what change in each version in the [CHANGELOG.md](CHANGE
|
||||
|
||||
* **Idealista** - *Work with* - [idealista](https://github.com/idealista)
|
||||
|
||||
See also the list of [contributors](https://github.com/idealista/{{ cookiecutter.app_name }}_role/contributors) who participated in this project.
|
||||
See also the list of [contributors](https://github.com/{{ cookiecutter.github_user }}/{{ cookiecutter.app_name }}_role/contributors) who participated in this project.
|
||||
|
||||
## License
|
||||
|
||||
|
||||
@@ -56,5 +56,5 @@
|
||||
- "flag1 {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_flag1_value {% raw %}}}{% endraw %}"
|
||||
- "flag2 {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_flag2_value {% raw %}}}{% endraw %}"
|
||||
|
||||
private_tmp_service: yes
|
||||
{{ cookiecutter.app_name }}_private_tmp: true
|
||||
{% endif %}
|
||||
@@ -13,6 +13,5 @@ galaxy_info:
|
||||
platforms:
|
||||
- name: Debian
|
||||
versions:
|
||||
{% if cookiecutter.debian_jessie_support == 'True' %}- jessie{% endif %}
|
||||
{% if cookiecutter.debian_stretch_support == 'True' %}- stretch{% endif %}
|
||||
{% if cookiecutter.debian_buster_support == 'True' %}- buster{% endif %}
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
---
|
||||
|
||||
{{ cookiecutter.app_name }}_private_tmp: false
|
||||
@@ -8,10 +8,10 @@
|
||||
- {{ cookiecutter.app_name }}
|
||||
become: true
|
||||
vars:
|
||||
goss_version: v0.3.10
|
||||
goss_version: v0.3.11
|
||||
goss_arch: amd64
|
||||
goss_dst: /usr/local/bin/goss
|
||||
goss_sha256sum: 150f25495ca0d1d4fd2ef8d0e750dbd767a15e9a522505f99b61dd1dd40a76d4
|
||||
goss_sha256sum: 7a751c102abac61fd8dff45f87f36c3732cb5158e1414ab78e6877864fc2f7a4
|
||||
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_format: documentation
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
when: {{ cookiecutter.app_name }}_log_file is defined
|
||||
|
||||
- name: {{ cookiecutter.app_name | upper }} | Check {{ cookiecutter.app_name }} version
|
||||
command: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }} --version {% raw %}}}{% endraw %}"
|
||||
command: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %} --version"
|
||||
register: {{ cookiecutter.app_name }}_check
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
|
||||
@@ -6,7 +6,7 @@ Requires=network-online.target
|
||||
After=network-online.target
|
||||
|
||||
[Service]
|
||||
PrivateTmp={% raw %}{{ private_tmp_service }}{% endraw %}
|
||||
PrivateTmp={% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_private_tmp {% raw %}}}{% endraw %}
|
||||
User={% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}
|
||||
Group={% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}
|
||||
RuntimeDirectory={{ cookiecutter.app_name }}
|
||||
|
||||
@@ -4,7 +4,6 @@ tests/.cache
|
||||
__pycache__
|
||||
.pytest_cache
|
||||
.molecule
|
||||
.vagrant
|
||||
.cache
|
||||
|
||||
*.iml
|
||||
|
||||
@@ -10,7 +10,6 @@ install:
|
||||
- pipenv sync
|
||||
env:
|
||||
jobs:
|
||||
{% if cookiecutter.debian_jessie_support == 'True' %}- MOLECULE_DISTRO=debian:jessie-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 %}
|
||||
script:
|
||||
|
||||
Reference in New Issue
Block a user