Compare commits

...

163 Commits

Author SHA1 Message Date
Yara
5c293a85bf
Merge pull request #103 from idealista/features/PLATFORM-3582
[PLATFORM-3582] Add .gitattributes file for linguist detection
2024-05-13 09:26:39 +02:00
ygomez
0a600912bf add #PR number on CHANGELOG.md 2024-01-17 11:54:56 +01:00
ygomez
141baf25a0 [PLATFORM-3582] Add .gitattributes file for linguist detection 2024-01-17 11:52:05 +01:00
mgnavarrete
6d78981a4f
Update CHANGELOG.md 2023-03-02 11:13:47 +01:00
mgnavarrete
b19e169235
Merge pull request #98 from idealista/features/98
#98 Update goss url
2023-03-01 16:58:08 +01:00
mgnavarrete
a364a0df36 #98 remove three flag 2023-03-01 12:49:18 +01:00
mgnavarrete
800c5f2644 #98 Update goss url 2023-02-28 15:39:20 +01:00
David Mateo
e6d5c5a9a3
Merge pull request #96 from idealista/bugs/95
Bugs/95 Fix travis pipenv install
2022-12-01 15:49:26 +01:00
David Mateo
a0c761368d
Update Changelog 2022-11-07 13:16:39 +01:00
David Mateo
6c534bdf83
Update .travis.yml template to add -I option in pipenv install 2022-11-07 13:16:25 +01:00
Adrián
c94c86d963
Merge pull request #94 from idealista/develop
Release 2.10.0
2022-09-22 21:40:21 +02:00
Adrián
3917b2a78b
Release 2.10.0 2022-09-22 21:27:18 +02:00
Adrián
c6446c7e58
Merge pull request #93 from idealista/feature/issue-92
Several improvements and fixes
2022-09-22 21:26:20 +02:00
Adrián Arapiles
45e9ea744b Change python version on travis.yml 2022-09-22 18:37:44 +02:00
Adrián Arapiles
1e99d8b02c Add yamllint to readme and test.sh 2022-09-22 18:33:53 +02:00
Adrián Arapiles
f23f55643d Add yamllint to dependendecies because is mandatory for lint step.
#92 Fix examples tags to achieve meta.yml galaxy_tags requisites.
2022-09-22 18:14:06 +02:00
Adrián Arapiles
4b7c659da1 Remove requirements on README command after use 2022-06-16 22:34:13 +02:00
Adrián Arapiles
f6f4658aef Fix travis indent 2022-06-16 22:16:55 +02:00
Adrián Arapiles
42900e46c4 Improve README init scrips to avoid errors when create two roles on same path because already pipenv exists.
Change travis.yml order of email notification as documentation explains.
Add first line `---` to ansible-lint file because it's a yml.
#92 Fix meta.yml lint warning from `galaxy-tags` to `galaxy_tags`.
2022-05-26 12:55:48 +02:00
Santiago Perez
436e824881
Merge pull request #91 from idealista/develop
Resolved #86 issue
2022-04-01 11:35:56 +02:00
Santiago Perez
6522c7ef21
Merge pull request #90 from idealista/features/86-update-debian-version issue #86
Features/86 update debian version
2022-04-01 11:10:32 +02:00
santi-eidu
8a599c249f Remove python2 in molecule Dockerfile 2022-03-24 18:20:09 +01:00
santi-eidu
fdbc7c3908 Change CHANGELOG.md to use github user 2022-03-24 11:13:47 +01:00
santi-eidu
1121b4534e Update CHANGELOG.md and README.md 2022-03-24 10:15:55 +01:00
santi-eidu
16095bb031 Update travis ci yml file 2022-03-23 19:59:00 +01:00
santi-eidu
8ef54f7f0d Update ansible to v5.2.0 and ansible-lint to v5.3.2 2022-03-23 18:01:02 +01:00
santi-eidu
b33689d3b5 #86 Change debian supported version stretch to bulleye 2022-03-23 17:59:55 +01:00
Marcos Pérez García
ea7487e2a9
Merge pull request #89 from idealista/develop
Release 2.8.1
2021-10-26 11:33:29 +02:00
Marcos Pérez García
2406ba62c1 update CHANGELOG.md 2021-10-26 11:00:28 +02:00
Marcos Pérez García
9e1cb98351
Merge pull request #88 from idealista/features/87
resolve #87 Travis build image and link are broken
2021-10-26 10:57:17 +02:00
Marcos Pérez García
dc504ad7d6 resolve #87 Travis build image and link are broken 2021-09-28 17:48:56 +02:00
Alex Blanco
74b1c3483f
Merge pull request #85 from idealista/develop
Release 2.8.0
2021-08-24 13:59:29 +02:00
Alex Blanco
b5685a90cd
Merge branch 'master' into develop 2021-08-24 13:07:33 +02:00
Alex Blanco
23d2def966
Update CHANGELOG.md 2021-08-24 12:51:41 +02:00
Alex Blanco
076db03bbe
Merge pull request #84 from idealista/bugs/83
#83 Don't leave empty lines when using jinja
2021-08-24 12:49:53 +02:00
Alejandro Blanco Lopez
c9e2a83163 #83 don't leave empty lines when using jinja 2021-08-24 12:12:44 +02:00
Alex Blanco
ff5533b940
Merge pull request #82 from idealista/bugs/81
#81 add log path variable in defaults
2021-08-24 09:12:43 +02:00
Alex Blanco
9211b42147
Merge branch 'develop' into bugs/81 2021-08-24 08:34:14 +02:00
Alex Blanco
4c2995e3d8
Merge pull request #80 from idealista/bugs/79
#79 add molecule-docker support
2021-08-24 08:33:35 +02:00
Alejandro Blanco Lopez
07f9750241 #81 add log path variable in defaults 2021-08-23 09:05:51 +02:00
Alejandro Blanco Lopez
14ae8d9e14 #79 add default pip versions 2021-08-23 08:48:43 +02:00
Alejandro Blanco Lopez
ed6eb9ff29 #79 update testing versions 2021-08-20 15:34:03 +02:00
Alejandro Blanco Lopez
92e30ec9ac #79 add molecule-docker support 2021-08-20 15:21:51 +02:00
Marcos Pérez García
f33225106e
Merge pull request #78 from idealista/develop
Release 2.7.0
2021-06-16 09:33:58 +02:00
Marcos Pérez García
665d89beb0 update CHANGELOG.md 2021-06-16 08:58:06 +02:00
Marcos Pérez García
4459ae1aa6
Merge pull request #77 from idealista/features/76
Create shell user variable
2021-06-16 08:51:30 +02:00
Marcos Pérez García
28fe4678d7 resolve #76 create shell user variable 2021-06-14 17:21:16 +02:00
Alex Blanco
57633e39ad
Merge pull request #75 from idealista/develop
Release 2.6.1
2021-06-02 15:36:00 +02:00
Alex Blanco
668d890ce6
Update CHANGELOG.md 2021-06-02 12:31:55 +02:00
Alex Blanco
71711119ea
Merge branch 'master' into develop 2021-06-02 12:31:19 +02:00
Alex Blanco
cdb741f701
Merge pull request #74 from idealista/bugs/73
#73 --- in the .yml files
2021-06-02 12:30:16 +02:00
Alejandro Blanco López
fb3253da25 #73 --- in the .yml files 2021-06-02 11:16:39 +02:00
Víctor Suárez Fernández
0211cfcd29
Merge pull request #71 from idealista/develop
Release 2.6.0
2021-04-30 10:11:20 +02:00
Víctor Suárez Fernández
01d41dc596
Merge branch 'master' into develop 2021-04-30 09:12:43 +02:00
Víctor Suárez Fernández
5fd7fc7e1d
Update CHANGELOG.md 2021-04-30 09:11:33 +02:00
Víctor Suárez Fernández
3514236fa0
Merge pull request #70 from idealista/features/69
travis.yml email notifications
2021-04-30 09:10:06 +02:00
Víctor Suárez Fernández
d9964134da
Update CHANGELOG.md 2021-04-29 17:38:30 +02:00
Víctor Suárez Fernández
9a971619a7
Update CHANGELOG.md 2021-04-29 15:38:57 +02:00
Víctor Suárez Fernández
409e7f8bd2
Update .travils.yml template 2021-04-29 15:32:18 +02:00
Víctor Suárez Fernández
6a760eb1dc
Update .travis.yml 2021-04-29 15:29:30 +02:00
Víctor Suárez Fernández
684428ec80
Merge pull request #67 from idealista/fix/check_mode
Fix check_mode
2021-03-31 12:17:34 +02:00
Víctor Suárez Fernández
3a93e6734d
Update CHANGELOG.md 2021-03-29 15:25:58 +02:00
Víctor Suárez Fernández
5ad5453892
Update CHANGELOG.md 2021-03-29 15:01:25 +02:00
Víctor Suárez Fernández
8e1924e9e3
Install checkmode 2021-03-29 14:57:06 +02:00
David Mateo
519a783810
Merge pull request #66 from idealista/develop
Release 2.5.1
2021-03-09 12:08:36 +01:00
Alex Blanco
5fc3bcaa2e
Merge branch 'master' into develop 2021-03-09 12:07:40 +01:00
David Mateo
dacd85ef41
Update CHANGELOG.md 2021-03-09 12:05:23 +01:00
David Mateo
7e8ec829c9
Merge pull request #65 from idealista/bugs/62
Adding changes to resolve #62
2021-03-09 11:44:35 +01:00
Víctor Suárez Fernández
cc0eb0ce7c
Merge branch 'develop' into bugs/62 2021-03-08 10:37:48 +01:00
Alex Blanco
08003a20e3
Merge pull request #64 from idealista/bugs/63
#63 ignore html code in linguist detection
2021-03-08 09:40:24 +01:00
David Mateo
2838871c2b Adding changes to resolve #62
- ignore_errors set to true in to the goss tests execution task
   - Change log update
2021-03-08 09:18:01 +01:00
Alex Blanco
498bb69af5
Merge branch 'develop' into bugs/63 2021-03-05 13:56:07 +01:00
Marcos Pérez García
9e12212122
Merge pull request #61 from idealista/bugs/60
Change state value in "Ensure skeleton log paths"
2021-03-05 13:49:53 +01:00
Alejandro Blanco López
bf38884dcd #63 ignore html code in linguist detection 2021-03-05 13:31:24 +01:00
Marcos Pérez García
2372221f93 update CHANGELOG.md 2021-02-23 16:37:10 +01:00
Marcos Pérez García
a082c79f12 resolve #60 change state value in Ensure skeleton log paths 2021-02-23 13:31:02 +01:00
Alex Blanco
921231864f
Merge pull request #59 from idealista/develop
Release 2.5.0
2021-02-19 04:55:24 -08:00
Alex Blanco
c7be6405e8
Merge branch 'master' into develop 2021-02-19 04:54:55 -08:00
Alex Blanco
53acbaa7d7
Update CHANGELOG.md 2021-02-19 13:54:28 +01:00
Alex Blanco
055c1ed1a8
Merge pull request #58 from idealista/features/57
#57 gitattributes for yaml detection
2021-02-19 04:51:52 -08:00
Alex Blanco
092a44d4d2
Merge branch 'develop' into features/57 2021-02-19 04:51:23 -08:00
Alex Blanco
e216704e9f
Merge pull request #56 from idealista/features/55
#55 exclude non-role files from linting
2021-02-19 04:51:00 -08:00
Alejandro Blanco López
1b9b8e81a2 #57 gitattributes for yaml detection 2021-02-18 12:39:38 +01:00
Alejandro Blanco López
8b089d7fdc follow excluding convention 2021-02-17 18:24:53 +01:00
Alejandro Blanco López
bd4c9ee55d #55 exclude non-role files from linting 2021-02-17 18:22:37 +01:00
Víctor Suárez Fernández
bfb05f9f7e
Merge pull request #52 from idealista/develop
Release 2.4.1
2021-01-20 14:42:24 +01:00
Víctor Suárez Fernández
2a4c935222
Merge branch 'master' into develop 2021-01-20 13:14:40 +01:00
Víctor Suárez Fernández
fc1c881864
Update CHANGELOG.md 2021-01-20 13:13:35 +01:00
Víctor Suárez Fernández
29fef2078c
Merge pull request #51 from idealista/bugs/50
Add tags to included tasks
2021-01-20 13:11:46 +01:00
Víctor Suárez Fernández
3cb19fc4d9
Add newline at EOF in service.yml 2021-01-20 09:07:06 +01:00
Victor Suarez Fernandez
a3fb7e6a37 Add tags to included tasks 2021-01-19 10:03:27 +01:00
Christian Ardiente
602f6e5953
Merge pull request #49 from idealista/develop
release 2.4.0
2020-12-30 11:58:51 +01:00
Christian Ardiente
34f4edf4c9
Update CHANGELOG.md 2020-12-30 11:57:47 +01:00
Christian Ardiente
0b139944f6
Merge pull request #48 from idealista/feautres/46
Static tests instead of parameters and documentation links
2020-12-30 11:54:57 +01:00
Christian Ardiente Eda
41f5790f9a typo 2020-12-30 11:14:13 +01:00
Christian Ardiente Eda
8735563651 Update travis link 2020-12-29 15:38:02 +01:00
Christian Ardiente Eda
f2e385868d Remainder to adapt goss tests 2020-12-29 15:36:13 +01:00
Christian Ardiente Eda
52fc713404 [#46] refactoring 2020-12-29 11:54:54 +01:00
Christian Ardiente Eda
747c7f30de Changelog 2020-12-29 11:45:32 +01:00
Christian Ardiente Eda
e5782c903a fix conflicts 2020-12-29 11:42:08 +01:00
Christian Ardiente Eda
3ea1b47038 [#46] Static tests instead of parameters 2020-12-29 11:41:27 +01:00
Christian Ardiente Eda
cceaac7b86 [#46] Static tests instead of parameters 2020-12-29 10:20:26 +01:00
Víctor Suárez Fernández
21de58a20b
Merge pull request #47 from idealista/feature/bump-goss_0.16
Bump goss to 0.16
2020-12-28 14:07:51 +01:00
Víctor Suárez Fernández
376996d273
Merge branch 'develop' into feature/bump-goss_0.16 2020-12-28 11:42:21 +01:00
Víctor Suárez Fernández
dfedd31efb
Update README.md 2020-12-28 11:41:00 +01:00
Víctor Suárez Fernández
0a9343b545
Update CHANGELOG.md 2020-12-28 11:34:26 +01:00
Víctor Suárez Fernández
035f88cd21
Bump goss to 0.16 2020-12-28 11:32:26 +01:00
Víctor Suárez Fernández
8e687b3d68
Merge pull request #44 from idealista/hotfix/multiple-test-scenarios
Support multiple test scenarios
2020-12-03 13:51:33 +01:00
Víctor Suárez Fernández
a2b0a538b2
Update {% raw %}.travis.yml{% endraw %} 2020-12-03 09:52:35 +01:00
Christian Ardiente
10813bd1f7
Merge pull request #43 from idealista/develop
Merge develop to master. Release 2.3.0
2020-12-01 11:04:25 +01:00
Christian Ardiente
3e3e36f15b
Update CHANGELOG.md 2020-12-01 11:03:57 +01:00
Víctor Suárez Fernández
15f3e451a5
Merge branch 'master' into develop 2020-11-30 13:46:20 +01:00
Christian Ardiente
1e802edbc8
Update CHANGELOG.md 2020-11-30 13:26:43 +01:00
Christian Ardiente
fe07d7b0cc
Merge pull request #42 from idealista/feature/30
New Issue templates
2020-11-30 13:18:21 +01:00
Christian Ardiente Eda
2bd0a71e71 Extra space typo 2020-11-25 16:36:59 +01:00
Christian Ardiente Eda
faa7d937cd Changelogs 2020-11-25 16:28:37 +01:00
Christian Ardiente Eda
14f4a05d3c #30 New way of templates. 2020-11-25 16:28:31 +01:00
Christian Ardiente Eda
f756c9c856 Different types of issues. Bug report issue ask for more info about ansible 2020-11-24 18:19:05 +01:00
Christian Ardiente Eda
5e322d4a47 Issue template outdated. 2020-11-24 18:17:50 +01:00
Christian Ardiente Eda
9b5a9fa983 removed Pull request template, We now have .github on an organization level 2020-11-24 18:17:31 +01:00
Francisco Javier Tsao Santín
407523e779
Merge pull request #41 from idealista/bugs/40
#40 updated yamllint configuration
2020-11-16 20:26:24 +01:00
Fran Tsao
ab62958be3 #40 yamllint ignore tests from all scenarios 2020-11-13 12:48:18 +01:00
Fran Tsao
e76415384a #40 updated yamllint configuration 2020-11-12 17:51:11 +01:00
Víctor Suárez Fernández
388d7e73b2
Merge pull request #39 from idealista/feature/remove-community-files
Remove community health files
2020-11-12 15:57:03 +01:00
Víctor Suárez Fernández
0968f7fea9
Update CHANGELOG.md 2020-11-12 11:03:11 +01:00
Víctor Suárez Fernández
b7da27bbfc
Update CHANGELOG.md 2020-11-12 11:02:52 +01:00
Víctor Suárez Fernández
763bce5531
Fix some typos 2020-11-12 10:58:13 +01:00
Víctor Suárez Fernández
fdc0231cb7
Delete CONTRIBUTING.md 2020-11-12 10:29:17 +01:00
Víctor Suárez Fernández
dfa96b1ab0
Delete CONTRIBUTING.md 2020-11-12 10:27:52 +01:00
Víctor Suárez Fernández
4adab81038
Delete CODE_OF_CONDUCT.md 2020-11-12 10:27:17 +01:00
Víctor Suárez Fernández
fdf78b4e67
Delete CODE_OF_CONDUCT.md 2020-11-12 10:26:33 +01:00
Víctor Suárez Fernández
6be3640e95
Merge pull request #38 from idealista/feature/bump-goss-version
Bump goss version to 0.3.14
2020-11-11 18:22:06 +01:00
Víctor Suárez Fernández
6a0236c6d7
Update CHANGELOG.md 2020-11-11 16:53:28 +01:00
Víctor Suárez Fernández
81886c8b69
Update verify.yml 2020-11-11 16:51:24 +01:00
Víctor Suárez Fernández
9c658516cc
Merge pull request #37 from idealista/develop
Release 2.2.0
2020-11-10 14:35:53 +01:00
Víctor Suárez Fernández
d6b43a5224
Merge branch 'master' into develop 2020-11-10 14:30:06 +01:00
Víctor Suárez Fernández
76e7d4a749
Update CHANGELOG.md 2020-11-10 14:25:10 +01:00
Víctor Suárez Fernández
60c56f0aaa
Merge pull request #36 from idealista/feature/migrate_travisci-org2com
Reflect travisci migration in readme.
2020-11-10 11:43:44 +01:00
Víctor Suárez Fernández
97507c17b3
Update README.md 2020-11-10 11:29:43 +01:00
Víctor Suárez Fernández
55a257bdf8
Delete auto_assign.yml 2020-10-30 11:41:37 +01:00
Christian Ardiente
f03745c5e2
Merge pull request #35 from idealista/features/29
Removing unnecessary script line in travis.yml
2020-10-30 11:32:43 +01:00
Víctor Suárez Fernández
0c9af7eece
Merge branch 'develop' into features/29 2020-10-28 10:42:54 +01:00
Víctor Suárez Fernández
f8a86832e8
Merge pull request #32 from idealista/feature/satale_good-first-issue
Exclude good first issues from stale.yml
2020-10-28 10:31:28 +01:00
Víctor Suárez Fernández
4c2af41064
Merge branch 'develop' into feature/satale_good-first-issue 2020-10-28 10:31:14 +01:00
Christian Ardiente Eda
c3cb5c464e Update changelog.md 2020-10-27 16:36:33 +01:00
Christian Ardiente Eda
c5554da841 #29 removing redundant script 2020-10-27 16:32:21 +01:00
Víctor Suárez Fernández
57c284758f WIP AutoAssign
(cherry picked from commit 616dfe9ac9)
2020-10-26 15:09:31 +01:00
Víctor Suárez Fernández
6ab92110f4
Merge pull request #33 from idealista/test/autoassign
PoC AutoAssign reviewers
2020-10-26 15:06:33 +01:00
Víctor Suárez Fernández
616dfe9ac9
WIP AutoAssign 2020-10-26 14:44:28 +01:00
Víctor Suárez Fernández
541d83b59b
Update stale.yml 2020-10-26 13:05:05 +01:00
Víctor Suárez Fernández
244442d026
Update stale.yml 2020-10-26 13:04:45 +01:00
Víctor Suárez Fernández
ee867550a9
Update stale.yml 2020-10-26 10:56:45 +01:00
Víctor Suárez Fernández
ee40b1c90e
Update stale.yml 2020-10-26 10:56:32 +01:00
Víctor Suárez Fernández
61a915fc94
Update CHANGELOG.md 2020-10-26 10:46:12 +01:00
Víctor Suárez Fernández
45935e8636
Update stale.yml 2020-10-26 10:40:01 +01:00
Víctor Suárez Fernández
807efd330e
Update stale.yml 2020-10-26 10:27:56 +01:00
Víctor Suárez Fernández
689d5a9a7e
Update stale.yml 2020-10-26 10:26:15 +01:00
Víctor Suárez Fernández
a290867ae2
Merge pull request #28 from idealista/bugs/27
Bugs/27
2020-10-26 09:24:39 +01:00
Daniel Ortega
d39c86b6ef
Update stale.yml 2020-10-23 16:21:26 +02:00
Daniel Ortega
9531848d42
Update stale.yml 2020-10-23 16:20:55 +02:00
Daniel Ortega
3a4bc776d6
Update CHANGELOG.md 2020-10-23 15:12:22 +02:00
Daniel Ortega
b87425cffe
Create stale.yml 2020-10-23 15:09:58 +02:00
Daniel Ortega
685baa12ca
Update stale.yml 2020-10-23 15:09:05 +02:00
42 changed files with 724 additions and 584 deletions

3
.gitattributes vendored Normal file
View File

@ -0,0 +1,3 @@
*.yml linguist-detectable=true
*.yaml linguist-detectable=true
*.html linguist-detectable=false

View File

@ -1,74 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
nationality, personal appearance, race, religion, or sexual identity and
orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [labs@idealista.com](mailto:labs@idealista.com). All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org

View File

@ -1,100 +0,0 @@
# Contributing to Idealista
:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
The following is a set of guidelines for contributing to Idealista's repositories, which are hosted in the [Idealista Organization](https://github.com/idealista) on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
#### Table Of Contents
[Code of Conduct](#code-of-conduct)
[How Can I Contribute?](#how-can-i-contribute)
* [Reporting Bugs](#reporting-bugs)
* [Suggesting Enhancements](#suggesting-enhancements)
* [Pull Requests](#pull-requests)
* [Changelog](#changelog)
[Styleguides](#styleguides)
* [Git Commit Messages](#git-commit-messages)
## Code of Conduct
This project and everyone participating in it is governed by the [Idealista Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [labs@idealista.com](mailto:labs@idealista.com).
## How Can I Contribute?
### Reporting Bugs
This section guides you through submitting a bug report for Idealista. Following these guidelines helps maintainers and the community understand your report :pencil:, reproduce the behavior :computer: :computer:, and find related reports :mag_right:.
Before creating bug reports, please check [this list](#before-submitting-a-bug-report) as you might find out that you don't need to create one. When you are creating a bug report, please [include as many details as possible](#how-do-i-submit-a-good-bug-report). Fill out [the required template](ISSUE_TEMPLATE.md), the information it asks for helps us resolve issues faster.
> **Note:** If you find a **Closed** issue that seems like it is the same thing that you're experiencing, open a new issue and include a link to the original issue in the body of your new one.
#### Before Submitting A Bug Report
* **Check the last version.** Check if you can reproduce the problem in the latest version of the project.
* **Check the FAQ of the project** for a list of common questions and problems.
* **Perform a [cursory search](https://github.com/issues?q=+is%3Aissue+user%3Aidealista)** to see if the problem has already been reported. If it has **and the issue is still open**, add a comment to the existing issue instead of opening a new one.
#### How Do I Submit A (Good) Bug Report?
Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/). Create an issue on the project repository and provide the following information by filling in [the template](ISSUE_TEMPLATE.md).
Explain the problem and include additional details to help maintainers reproduce the problem:
* **Use a clear and descriptive title** for the issue to identify the problem.
* **Describe the exact steps which reproduce the problem** in as many details as possible.
* **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior.
* **Explain which behavior you expected to see instead and why.**
### Suggesting Enhancements
This section guides you through submitting an enhancement suggestion for Idealista, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion :pencil: and find related suggestions :mag_right:.
Before creating enhancement suggestions, please check [this list](#before-submitting-an-enhancement-suggestion) as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please [include as many details as possible](#how-do-i-submit-a-good-enhancement-suggestion). Fill in [the template](ISSUE_TEMPLATE.md), including the steps that you imagine you would take if the feature you're requesting existed.
#### Before Submitting An Enhancement Suggestion
* **Check the last version.** Check if you can reproduce the problem in the latest version of the project.
* **Check the FAQ of the project** for a list of common questions and problems.
* **Perform a [cursory search](https://github.com/issues?q=+is%3Aissue+user%3Aidealista)** to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
#### How Do I Submit A (Good) Enhancement Suggestion?
Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com/features/issues/). Create an issue on the project repository and provide the following information by filling in [the template](ISSUE_TEMPLATE.md):
* **Use a clear and descriptive title** for the issue to identify the suggestion.
* **Provide a step-by-step description of the suggested enhancement** in as many details as possible.
* **Provide specific examples to demonstrate the steps**.
* **Describe the current behavior** and **explain which behavior you expected to see instead** and why.
* **Explain why this enhancement would be useful**.
* **List some other text editors or applications where this enhancement exists.**
* **Specify which version are you're using.**
### Pull Requests
* Fill in [the required template](PULL_REQUEST_TEMPLATE.md)
* Any pull request should have **idealista:develop** as base branch.
### Changelog
Every project has a CHANGELOG.md file. Once your code is ready to be merged please fill the issue after the **Unreleased** section as explained:
* For an enhancement, fill the issue after the **Added** subsection (create it if doesn't exists)
* For a fixed bug, fill the issue after the **Fixed** subsection (create it if doesn't exists)
* For an improvement, fill the issue after the **Changed** subsection (create it if doesn't exists)
Then write the issue info this way:
- *[#29](https://github.com/idealista/nginx-role/issues/29) Support debian stretch* @jmonterrubio
## Styleguides
### Git Commit Messages
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
* Limit the first line to 72 characters or less
* Reference issues and pull requests liberally after the first line

View File

@ -1,36 +0,0 @@
<!--
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/cookiecutter-ansible-role/blob/master/.github/CODE_OF_CONDUCT.md
-->
### Prerequisites
* [ ] Put an X between the brackets on this line if you have done all of the following:
* Checked that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
* Checked that there is not already provided the described functionality
### Description
[Description of the issue]
### Steps to Reproduce
1. [First Step]
2. [Second Step]
3. [and so on...]
**Expected behavior:** [What you expect to happen]
**Actual behavior:** [What actually happens]
**Reproduces how often:** [What percentage of the time does it reproduce?]
### Versions
The version/s you notice the behavior.
### Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

48
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,48 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG]"
labels: bug
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Steps to Reproduce
1. [First Step]
2. [Second Step]
3. [and so on...]
**Expected behavior:**
[What you expect to happen]
**Actual behavior:**
[What actually happens]
**Reproduces how often:**
[What percentage of the time does it reproduce?]
### Environment
- The release version/s you are using:
- OS:
- Others:
### Additional Information
[Any additional information, configuration or data that might be necessary to reproduce the issue.]

2
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,2 @@
---
blank_issues_enabled: false

View File

@ -0,0 +1,31 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[FEATURE]"
labels: enhancement
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Why is this needed?
[A clear and concise description of why do you think this is needed]
### Additional Information
[Any additional information, configuration or data.]

27
.github/ISSUE_TEMPLATE/refactor.md vendored Normal file
View File

@ -0,0 +1,27 @@
---
name: Refactor
about: Found anything to refactor in this project?
title: "[REFACTOR]"
labels: clean-up
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Link/s to the specific code that needs a refactor (if applicable)
[Links]

View File

@ -0,0 +1,27 @@
---
name: Support Request
about: Support request or question about this project
title: "[SUPPORT]"
labels: question
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

View File

@ -1,26 +0,0 @@
### Requirements
* Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
* All new code requires tests to ensure against regressions
* Remember to set **idealista:develop** as base branch;
### Description of the Change
<!--
We must be able to understand the design of your change from this description. If we can't get a good idea of what the code will be doing from the description here, the pull request may be closed at the maintainers' discretion. Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code here recently, so please walk us through the concepts.
-->
### Benefits
<!-- What benefits will be realized by the code change? -->
### Possible Drawbacks
<!-- What are the possible side-effects or negative impacts of the code change? -->
### Applicable Issues
<!-- Enter any applicable Issues here -->

23
.github/auto_assign.yml vendored Normal file
View File

@ -0,0 +1,23 @@
---
# Set to true to add reviewers to pull requests
addReviewers: true
# Set to true to add assignees to pull requests
addAssignees: false
# A list of team reviewers to be added to pull requests (GitHub team slug)
reviewers:
- idealista/reviewers
# Number of reviewers has no impact on Github teams
# Set 0 to add all the reviewers (default: 0)
numberOfReviewers: 0
# Set to author to set pr creator as assignee
addAssignees: author
# A list of keywords to be skipped the process that add reviewers if pull requests include it
skipKeywords:
- "WIP"
- "[WIP]"

50
.github/stale.yml vendored
View File

@ -1,17 +1,33 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
- security
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
---
issues:
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 90
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- "pinned"
- "security"
- "good first issue"
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
pulls:
# Number of days of inactivity before a pull request becomes stale
daysUntilStale: 90
# Number of days of inactivity before a stale pull request is closed
daysUntilClose: 7
# Comment to post when marking a pull request as stale. Set to `false` to disable
markComment: >
This pull request has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale pull request. Set to `false` to disable
closeComment: false

View File

@ -1,16 +1,23 @@
---
dist: xenial
dist: focal
language: python
python: "3.7"
python: "3.10"
os: linux
services:
- docker
install:
- pip3 install cookiecutter
- pip install -I pipenv
env:
jobs:
- MOLECULE_DISTRO=debian:stretch-slim
- MOLECULE_DISTRO=debian:bullseye-slim
- MOLECULE_DISTRO=debian:buster-slim
script:
- ./test.sh
- ./test.sh
notifications:
email:
if: branch = master
on_success: change
on_failure: always
recipients:
- desarrollo.benders@idealista.com

View File

@ -1,35 +1,223 @@
# 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).
## Added
- *[#103](https://github.com/idealista/cookiecutter-ansible-role/pull/103) (2024-01-17)- Add ".gitattributes" file for linguist detection.* @ygomezsaiz
## Unreleased
## [2.10.2](https://github.com/idealista/cookiecutter-ansible-role/tree/2.10.2)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.10.1...2.10.2)
### Changed
- *[98](https://github.com/idealista/cookiecutter-ansible-role/issues/98)* Change goss URL @Marionv91
## [2.10.1](https://github.com/idealista/cookiecutter-ansible-role/tree/2.10.)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.10.0...2.10.1)
### Fixed
- *[95](https://github.com/idealista/cookiecutter-ansible-role/issues/95)* Failing travis test builds due to pipenv @ultraheroe
## [2.10.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.10.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.9.0...2.10.0)
### Changed
- *Improve README init scrips to avoid errors when create two roles on same path because already pipenv exists.* @adrian-arapiles
- *Change travis.yml order of email notification as documentation explains.* @adrian-arapiles
- *Add first line `---` to ansible-lint file because it's a yml.* @adrian-arapiles
### Fixed
- *[92](https://github.com/idealista/cookiecutter-ansible-role/issues/92) Fix meta.yml lint warning from `galaxy-tags` to `galaxy_tags`.* @adrian-arapiles
## [2.9.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.9.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.8.1...2.9.0)
### Changed
- *[#86](https://github.com/idealista/cookiecutter-ansible-role/issues/86) Upgrade molecule config to test under debian bullseye* @santi-eidu
- *[#86](https://github.com/idealista/cookiecutter-ansible-role/issues/86) Upgrade ansible to v5.2.0 and ansible lint to v5.3.2 to avoid lint error* @santi-eidu
## [2.8.1](https://github.com/idealista/cookiecutter-ansible-role/tree/2.8.1)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.8.0...2.8.1)
### Fixed
- *[#87](https://github.com/idealista/cookiecutter-ansible-role/issues/87) Travis build image and link are broken in the README template* @emepege
## [2.8.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.8.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.7.0...2.8.0)
### Added
- *[#81](https://github.com/idealista/cookiecutter-ansible-role/issues/81) Add log path variable in defaults* @blalop
- *[#79](https://github.com/idealista/cookiecutter-ansible-role/issues/79) Add molecule-docker support* @blalop
- *[#79](https://github.com/idealista/cookiecutter-ansible-role/issues/79) Add default versions for Python packages* @blalop
- *[#83](https://github.com/idealista/cookiecutter-ansible-role/issues/83) Don't leave empty lines when using jinja* @blalop
## [2.7.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.7.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.6.1...2.7.0)
### Added
- *[#76](https://github.com/idealista/cookiecutter-ansible-role/issues/76) Create shell user variable* @emepege
## [2.6.1](https://github.com/idealista/cookiecutter-ansible-role/tree/2.6.1)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.6.0...2.6.1)
### Changed
- *[#73](https://github.com/idealista/cookiecutter-ansible-role/issues/73) Add document start to .yml files* @blalop
## [2.6.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.6.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.5.1...2.6.0)
### Added
- *[#69](https://github.com/idealista/cookiecutter-ansible-role/issues/69) Email notifications in travis.* @vicsufer
### Changed
### Fixed
- *[#67](https://github.com/idealista/cookiecutter-ansible-role/issues/67) fix needed task in check_mode- @vicsufer
### Removed
## [2.5.1](https://github.com/idealista/cookiecutter-ansible-role/tree/2.5.1)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.5.0...2.5.1)
### Changed
- *[#63](https://github.com/idealista/cookiecutter-ansible-role/issues/63) Ignore html in gitattributes file* @blalop
### Fixed
- *[#62](https://github.com/idealista/cookiecutter-ansible-role/issues/62) molecule verify fails and breaks the run when at least one test fail* @ultraheroe
- *[#60](https://github.com/idealista/cookiecutter-ansible-role/issues/60) [BUG] Wrong state option in "Ensure skeleton log paths" task* @emepege
## [2.5.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.5.0)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.4.1...2.5.0)
### Added
- *[#57](https://github.com/idealista/cookiecutter-ansible-role/issues/57) Added gitattributes file* @blalop
### Changed
- *[#55](https://github.com/idealista/cookiecutter-ansible-role/issues/55) Excluded non-role files from linting* @blalop
## [2.4.1](https://github.com/idealista/cookiecutter-ansible-role/tree/2.4.1)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.4.0...2.4.1)
### Fixed
- *[#50](https://github.com/idealista/cookiecutter-ansible-role/issues/50) Tags not applied properly from playbook* @vicsufer
## [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)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.2.0...2.3.0)
### Fixed
- *[#40](https://github.com/idealista/cookiecutter-ansible-role/issues/40) Updated yamllint configuration* @frantsao
### Changed
- *[#38](https://github.com/idealista/cookiecutter-ansible-role/pull/38) Bump goss version from 0.3.11 to 0.3.14* @vicsufer
- *[#30](https://github.com/idealista/cookiecutter-ansible-role/issues/30) Using a new version for issue template* @xtianae7
### Removed
- *[#39](https://github.com/idealista/cookiecutter-ansible-role/pull/39) Community health files* @vicsufer
- *[#30](https://github.com/idealista/cookiecutter-ansible-role/issues/30) PULL_REQUEST_TEMPLATE removed, replaced with default community health file* @xtianae7
## [2.2.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.2.0) (2020-11-10)
### [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.1.0...2.2.0)
### Fixed
- *[#27](https://github.com/idealista/cookiecutter-ansible-role/issues/27) Adding Probot configuration to Ansible Role template* @dortegau
### Changed
- *[#27](https://github.com/idealista/cookiecutter-ansible-role/issues/27) Increase to 90 days the minimum days to declare a PR/Issue as `staled`* @dortegau
- *[#32](https://github.com/idealista/cookiecutter-ansible-role/pull/32) Avoid closing automatically good first issues* @vicsufer
### Removed
- *[#29](https://github.com/idealista/cookiecutter-ansible-role/issues/29) Removing redudant script in .travis.yml* @xtianae7
## [2.1.0](https://github.com/idealista/cookiecutter-ansible-role/tree/2.1.0) (2020-10-19)
## [Full Changelog](https://github.com/idealista/cookiecutter-ansible-role/compare/2.0.0...2.1.0)
### Added
- *[#20](https://github.com/idealista/cookiecutter-ansible-role/issues/20) Add basic configuration in order to enable Probot to delete automatically abandoned PRs/issues* @dortegau
### Fixed
- *[#23](https://github.com/idealista/cookiecutter-ansible-role/issues/23) Change references to branch master to main* @pgomezcaldito
## [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
@ -37,4 +225,5 @@ This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a ch
## [1.0.0](https://github.com/idealista/cookiecutter-ansible-role/tree/1.0.0) (2020-04-28)
### Added
- *First release* @pablogcaldito

View File

@ -1,9 +1,7 @@
# Cookiecutter Ansible Role
![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.org/idealista/cookiecutter-ansible-role.png)](https://travis-ci.com/idealista/cookiecutter-ansible-role)
This cookiecutter generates an [ansible role](https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html).
@ -31,7 +29,8 @@ You just need to have [pipenv](https://github.com/pypa/pipenv) installed.
## Usage
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```.
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 -rf Pipfile*
requirements.txt && pipenv --rm && rm -rf requirements.txt```.
Then, introduce some parameters needed for generating it.
@ -46,15 +45,17 @@ github_user [idealista]:
company [Idealista S.A.U.]:
author []: pablogcaldito
min_ansible_version []: 2.2
ansible_version []: 2.8.8
molecule_version []: 3.0.1
python_docker_version []: 4.1.0
ansible_lint_version []: 4.2.0
ansible_version []: 5.2.0
molecule_version []: 3.4.0
python_docker_version []: 5.0.0
molecule_docker_version []: 0.2.4
ansible_lint_version []: 5.3.2
yamllint_version []: 1.28.0
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_stretch_support:
Select debian_bullseye_support:
1 - True
2 - False
Choose from 1, 2 [1]:
@ -79,6 +80,7 @@ Select has_templates:
1 - True
2 - False
Choose from 1, 2 [1]:
documentation_URL: https://cli.github.com/manual/
```
It will create the following file structure:

View File

@ -7,19 +7,22 @@
"company": "Idealista S.A.U.",
"author": "",
"min_ansible_version": "",
"ansible_version": "",
"molecule_version": "",
"python_docker_version": "",
"ansible_lint_version":"",
"ansible_version": "5.2.0",
"molecule_version": "3.4.0",
"python_docker_version": "5.0.0",
"molecule_docker_version": "0.2.4",
"ansible_lint_version":"5.3.2",
"yamllint_version": "1.28.0",
"license":"Apache 2.0",
"galaxy_tag_1":"example_tag1",
"galaxy_tag_2":"example_tag2",
"galaxy_tag_3":"example_tag3",
"debian_stretch_support":["True", "False"],
"galaxy_tag_1":"tag1",
"galaxy_tag_2":"tag2",
"galaxy_tag_3":"tag3",
"debian_bullseye_support":["True", "False"],
"debian_buster_support":["True", "False"],
"has_service":["True", "False"],
"has_files":["True", "False"],
"comment_2":"If there is service the following options will not have any effect",
"has_handlers":["True", "False"],
"has_templates":["True", "False"]
"has_templates":["True", "False"],
"documentation_URL":""
}

22
test.sh
View File

@ -3,7 +3,23 @@
set -e
# 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="5.2.0" \
molecule_version="3.4.0" \
python_docker_version="5.0.0" \
molecule_docker_version="0.2.4" \
ansible_lint_version="5.3.2" \
yamllint_version="1.28.0" \
has_service="False" \
has_files="False" \
has_handlers="False" \
has_templates="False" \
documentation_URL="https://cli.github.com/manual/" && rm Pipfile* requirements.txt && rm -rf requirements.txt
(
# Adjust the role to test
cd github_cli_role
@ -12,9 +28,9 @@ printf "cookiecutter==1.7.2\nJinja2==2.11.2" > requirements.txt && pipenv instal
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 install -r test-requirements.txt --three
pipenv install -r test-requirements.txt
pipenv run molecule test
)
# Cleanup
rm -rf github_cli_role

View File

@ -1,5 +1,8 @@
---
exclude_paths:
- ./molecule
- ./.travis.yml
- ./.github
parseable: true
skip_list:
- '204'

View File

@ -1,74 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
nationality, personal appearance, race, religion, or sexual identity and
orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [labs@idealista.com](mailto:labs@idealista.com). All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org

View File

@ -1,100 +0,0 @@
# Contributing to Idealista
:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
The following is a set of guidelines for contributing to Idealista's repositories, which are hosted in the [Idealista Organization](https://github.com/idealista) on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
#### Table Of Contents
[Code of Conduct](#code-of-conduct)
[How Can I Contribute?](#how-can-i-contribute)
* [Reporting Bugs](#reporting-bugs)
* [Suggesting Enhancements](#suggesting-enhancements)
* [Pull Requests](#pull-requests)
* [Changelog](#changelog)
[Styleguides](#styleguides)
* [Git Commit Messages](#git-commit-messages)
## Code of Conduct
This project and everyone participating in it is governed by the [Idealista Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [labs@idealista.com](mailto:labs@idealista.com).
## How Can I Contribute?
### Reporting Bugs
This section guides you through submitting a bug report for Idealista. Following these guidelines helps maintainers and the community understand your report :pencil:, reproduce the behavior :computer: :computer:, and find related reports :mag_right:.
Before creating bug reports, please check [this list](#before-submitting-a-bug-report) as you might find out that you don't need to create one. When you are creating a bug report, please [include as many details as possible](#how-do-i-submit-a-good-bug-report). Fill out [the required template](ISSUE_TEMPLATE.md), the information it asks for helps us resolve issues faster.
> **Note:** If you find a **Closed** issue that seems like it is the same thing that you're experiencing, open a new issue and include a link to the original issue in the body of your new one.
#### Before Submitting A Bug Report
* **Check the last version.** Check if you can reproduce the problem in the latest version of the project.
* **Check the FAQ of the project** for a list of common questions and problems.
* **Perform a [cursory search](https://github.com/issues?q=+is%3Aissue+user%3Aidealista)** to see if the problem has already been reported. If it has **and the issue is still open**, add a comment to the existing issue instead of opening a new one.
#### How Do I Submit A (Good) Bug Report?
Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/). Create an issue on the project repository and provide the following information by filling in [the template](ISSUE_TEMPLATE.md).
Explain the problem and include additional details to help maintainers reproduce the problem:
* **Use a clear and descriptive title** for the issue to identify the problem.
* **Describe the exact steps which reproduce the problem** in as many details as possible.
* **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior.
* **Explain which behavior you expected to see instead and why.**
### Suggesting Enhancements
This section guides you through submitting an enhancement suggestion for Idealista, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion :pencil: and find related suggestions :mag_right:.
Before creating enhancement suggestions, please check [this list](#before-submitting-an-enhancement-suggestion) as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please [include as many details as possible](#how-do-i-submit-a-good-enhancement-suggestion). Fill in [the template](ISSUE_TEMPLATE.md), including the steps that you imagine you would take if the feature you're requesting existed.
#### Before Submitting An Enhancement Suggestion
* **Check the last version.** Check if you can reproduce the problem in the latest version of the project.
* **Check the FAQ of the project** for a list of common questions and problems.
* **Perform a [cursory search](https://github.com/issues?q=+is%3Aissue+user%3Aidealista)** to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
#### How Do I Submit A (Good) Enhancement Suggestion?
Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com/features/issues/). Create an issue on the project repository and provide the following information by filling in [the template](ISSUE_TEMPLATE.md):
* **Use a clear and descriptive title** for the issue to identify the suggestion.
* **Provide a step-by-step description of the suggested enhancement** in as many details as possible.
* **Provide specific examples to demonstrate the steps**.
* **Describe the current behavior** and **explain which behavior you expected to see instead** and why.
* **Explain why this enhancement would be useful**.
* **List some other text editors or applications where this enhancement exists.**
* **Specify which version are you're using.**
### Pull Requests
* Fill in [the required template](PULL_REQUEST_TEMPLATE.md)
* Any pull request should have **idealista:develop** as base branch.
### Changelog
Every project has a CHANGELOG.md file. Once your code is ready to be merged please fill the issue after the **Unreleased** section as explained:
* For an enhancement, fill the issue after the **Added** subsection (create it if doesn't exists)
* For a fixed bug, fill the issue after the **Fixed** subsection (create it if doesn't exists)
* For an improvement, fill the issue after the **Changed** subsection (create it if doesn't exists)
Then write the issue info this way:
- *[#29](https://github.com/idealista/nginx-role/issues/29) Support debian stretch* @jmonterrubio
## Styleguides
### Git Commit Messages
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
* Limit the first line to 72 characters or less
* Reference issues and pull requests liberally after the first line

View File

@ -1,32 +0,0 @@
### Prerequisites
* [ ] Put an X between the brackets on this line if you have done all of the following:
* Read [Idealista's Code of Conduct](https://github.com/idealista/{{ cookiecutter.app_name }}_role/blob/main/.github/CODE_OF_CONDUCT.md) and plan to comply with it
* Checked that your issue isn't already filled: [issues](https://github.com/idealista/{{ cookiecutter.app_name }}_role/issues)
* Checked that there is not already provided the described functionality
### Description
<!-- Description of the issue -->
### Steps to Reproduce
1. [First Step]
2. [Second Step]
3. [and so on...]
**Expected behavior:**
<!-- What you expect to happen -->
**Actual behavior:**
<!-- What actually happens -->
**Reproduces how often:**
<!-- What percentage of the time does it reproduce? -->
### Versions
<!-- The version/s you notice the behavior. -->
### Additional Information
<!-- Any additional information, configuration or data that might be necessary to reproduce the issue. -->

View File

@ -0,0 +1,49 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG]"
labels: bug
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Steps to Reproduce
1. [First Step]
2. [Second Step]
3. [and so on...]
**Expected behavior:**
[What you expect to happen]
**Actual behavior:**
[What actually happens]
**Reproduces how often:**
[What percentage of the time does it reproduce?]
### Environment
- The release version/s you are using:
- OS:
- Ansible Version:
- Python Version:
- Others:
### Additional Information
[Any additional information, configuration or data that might be necessary to reproduce the issue.]

View File

@ -0,0 +1,3 @@
---
blank_issues_enabled: false

View File

@ -0,0 +1,31 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[FEATURE]"
labels: enhancement
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Why is this needed?
[A clear and concise description of why do you think this is needed]
### Additional Information
[Any additional information, configuration or data.]

View File

@ -0,0 +1,27 @@
---
name: Refactor
about: Found anything to refactor in this project?
title: "[REFACTOR]"
labels: clean-up
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Link/s to the specific code that needs a refactor (if applicable)
[Links]

View File

@ -0,0 +1,27 @@
---
name: Support Request
about: Support request or question about this project
title: "[SUPPORT]"
labels: question
assignees: ''
---
<!--
PREREQUISITES
Have you read Idealista's Code of Conduct? By filling an Issue, you are expected to comply with it,
including treating everyone with respect: https://github.com/idealista/idealista/blob/master/CODE_OF_CONDUCT.md
Check that your issue isn't already filled: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aidealista
Check that there is not already provided the described functionality
-->
### Description
[Description of the issue]
### Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

View File

@ -1,26 +0,0 @@
### Requirements
* Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
* All new code requires tests to ensure against regressions
* Remember to set **idealista:develop** as base branch;
### Description of the Change
<!--
We must be able to understand the design of your change from this description. If we can't get a good idea of what the code will be doing from the description here, the pull request may be closed at the maintainers' discretion. Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code here recently, so please walk us through the concepts.
-->
### Benefits
<!-- What benefits will be realized by the code change? -->
### Possible Drawbacks
<!-- What are the possible side-effects or negative impacts of the code change? -->
### Applicable Issues
<!-- Enter any applicable Issues here -->

View File

@ -0,0 +1,33 @@
---
issues:
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 90
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- "pinned"
- "security"
- "good first issue"
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
pulls:
# Number of days of inactivity before a pull request becomes stale
daysUntilStale: 90
# Number of days of inactivity before a stale pull request is closed
daysUntilClose: 7
# Comment to post when marking a pull request as stale. Set to `false` to disable
markComment: >
This pull request has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale pull request. Set to `false` to disable
closeComment: false

View File

@ -3,9 +3,9 @@
extends: default
ignore: |
molecule/**/tests/
.github
.travis.yml
molecule/
tests/
rules:
braces:
@ -20,20 +20,13 @@ rules:
commas:
max-spaces-after: -1
level: error
comments: disable
comments-indentation: disable
document-start: disable
empty-lines:
max: 3
level: error
hyphens:
level: error
indentation: disable
key-duplicates: enable
line-length: disable
new-line-at-end-of-file: disable
new-lines:
type: unix
trailing-spaces: disable
truthy: disable

View File

@ -1,13 +1,13 @@
# {{ cookiecutter.app_name | replace('_',' ') | title }} Ansible role
![Logo](logo.gif)
[![Build Status](https://travis-ci.org/idealista/{{ cookiecutter.app_name }}_role.png)](https://travis-ci.org/idealista/{{ cookiecutter.app_name }}_role)
[![Build Status](https://app.travis-ci.com/idealista/{{ cookiecutter.app_name }}_role.svg)](https://app.travis-ci.com/github/idealista/{{ cookiecutter.app_name }}_role)
[![Ansible Galaxy](https://img.shields.io/badge/galaxy-idealista.{{ cookiecutter.app_name }}_role-B62682.svg)](https://galaxy.ansible.com/idealista/{{ cookiecutter.app_name }}_role)
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 %}
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_bullseye_support == 'True' %}* Bulleye{% 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).
@ -32,7 +32,7 @@ Ansible {{ cookiecutter.ansible_version }} version installed.
Molecule 3.x.x version installed.
For testing purposes, [Molecule](https://molecule.readthedocs.io/) with [Docker](https://www.docker.com/) as driver and [Goss] (https://github.com/aelsabbahy/goss) as verifier.
For testing purposes, [Molecule](https://molecule.readthedocs.io/) with [Docker](https://www.docker.com/) as driver and [Goss](https://github.com/goss-org/goss) as verifier.
### Installing
@ -84,7 +84,7 @@ $ pipenv run molecule test
![Ansible](https://img.shields.io/badge/ansible-{{ cookiecutter.ansible_version }}-green.svg)
![Molecule](https://img.shields.io/badge/molecule-{{ cookiecutter.molecule_version }}-green.svg)
![Goss](https://img.shields.io/badge/goss-0.3.9-green.svg)
![Goss](https://img.shields.io/badge/goss-0.3.16-green.svg)
## Versioning

View File

@ -21,17 +21,18 @@
# Installation path
{{ cookiecutter.app_name }}_root_path: /opt/{{ cookiecutter.app_name }}
{{ cookiecutter.app_name }}_bin_path: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_root_path {% raw %}}}{% endraw %}/bin"
{{ cookiecutter.app_name }}_skeleton_paths:
{{ cookiecutter.app_name }}_skeleton_paths:
- "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_bin_path {% raw %}}}{% endraw %}"
{{ cookiecutter.app_name }}_exec_name: {{ cookiecutter.exec_name }}
{% if cookiecutter.has_service == 'True' %}
## Service options
# Documentation
{{ cookiecutter.app_name }}_documentation_link: https://www.example.documentation.com
{{ cookiecutter.app_name }}_documentation_link: "{{ cookiecutter.documentation_URL }}"
# Owner
{{ cookiecutter.app_name }}_user: exampleuser
{{ cookiecutter.app_name }}_group: examplegroup
{{ cookiecutter.app_name }}_user_shell: /usr/sbin/nologin
# Maximum number of files limit
{{ cookiecutter.app_name }}_max_files: 32768
@ -44,7 +45,8 @@
# Logs
# If wanted to output the logs to a file define the following variable
# More information at https://www.freedesktop.org/software/systemd/man/systemd.exec.html#StandardOutput=
# {{ cookiecutter.app_name }}_log_file: path_of_the_file
# {{ cookiecutter.app_name }}_log_path: /var/log
# {{ cookiecutter.app_name }}_log_file: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_log_path {% raw %}}}{% endraw %}/{{ cookiecutter.app_name }}.log"
{{ cookiecutter.app_name }}_log_output: "{% raw %}{%{% endraw %} if {{ cookiecutter.app_name }}_log_file is defined {% raw %}%}{% endraw %} file:{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_log_file {% raw %}}}{% endraw %} {% raw %}{%{% endraw %} else {% raw %}%}{% endraw %} journal {% raw %}{%{% endraw %} endif {% raw %}%}{% endraw %}"
# Flags

View File

@ -6,12 +6,12 @@ galaxy_info:
description: {{ cookiecutter.app_name | replace('_',' ') | title }} Role
min_ansible_version: {{ cookiecutter.min_ansible_version }}
license: {{ cookiecutter.license }}
galaxy-tags:
galaxy_tags:
- {{ cookiecutter.galaxy_tag_1 }}
- {{ cookiecutter.galaxy_tag_2 }}
- {{ cookiecutter.galaxy_tag_3 }}
platforms:
- name: Debian
versions:
{% if cookiecutter.debian_stretch_support == 'True' %}- stretch{% endif %}
{% if cookiecutter.debian_bullseye_support == 'True' %}- bullseye{% endif %}
{% if cookiecutter.debian_buster_support == 'True' %}- buster{% endif %}

View File

@ -8,5 +8,5 @@ FROM {{ item.image }}
# install minimal packages for debian slim images
RUN apt-get update && \
apt-get install -y python sudo bash ca-certificates iproute2 systemd systemd-sysv python-pip && \
apt-get install -y python3 sudo bash ca-certificates iproute2 systemd systemd-sysv python3-pip && \
apt-get clean{% endraw %}

View File

@ -10,7 +10,7 @@ platforms:
- name: {{ cookiecutter.app_name }}
groups:
- {{ cookiecutter.app_name }}_group
image: ${MOLECULE_DISTRO:-debian:buster-slim}
image: ${MOLECULE_DISTRO:-debian:bullseye-slim}
privileged: false
capabilities:
- SYS_ADMIN

View File

@ -1,36 +1,46 @@
---
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
## TODO: Remember to adapt goss tests to your convenience
{% 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:
{{ cookiecutter.app_name }}:
enabled: true
running: true
process:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %}:
running: true
process:
{{ cookiecutter.exec_name }}:
running: true
user:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}:
exists: true
groups:
- {% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}
shell: /usr/sbin/nologin
exampleuser:
exists: true
groups:
- examplegroup
shell: /usr/sbin/nologin
group:
{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}:
examplegroup:
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/goss-org/goss/issues/177
# tcp6:<port>:
# listening: true
# ip:
# - '::'

View File

@ -8,11 +8,11 @@
- {{ cookiecutter.app_name }}
become: true
vars:
goss_version: v0.3.11
goss_version: v0.3.16
goss_arch: amd64
goss_dst: /usr/local/bin/goss
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_sha256sum: 827e354b48f93bce933f5efcd1f00dc82569c42a179cf2d384b040d8a80bfbfb
goss_url: "https://github.com/goss-org/goss/releases/download/{% raw %}{{{% endraw %} goss_version {% raw %}}}{% endraw %}/goss-linux-{% raw %}{{{% endraw %} goss_arch {% raw %}}}{% endraw %}"
goss_test_directory: /tmp
goss_format: documentation
@ -24,7 +24,7 @@
get_url:
url: "{% raw %}{{{% endraw %} goss_url {% raw %}}}{% endraw %}"
dest: "{% raw %}{{{% endraw %} goss_dst {% raw %}}}{% endraw %}"
sha256sum: "{% raw %}{{{% endraw %} goss_sha256sum {% raw %}}}{% endraw %}"
checksum: "sha256{% raw %}:{{{% endraw %} goss_sha256sum {% raw %}}}{% endraw %}"
mode: 0755
register: download_goss
until: download_goss is succeeded
@ -45,6 +45,7 @@
command: "{% raw %}{{{% endraw %} goss_dst {% raw %}}}{% endraw %} -g {% raw %}{{{% endraw %} item {% raw %}}}{% endraw %} validate --format {% raw %}{{{% endraw %} goss_format {% raw %}}}{% endraw %}"
register: test_results
with_items: "{% raw %}{{{% endraw %} test_files.stdout_lines {% raw %}}}{% endraw %}"
ignore_errors: true
- name: Display details about the Goss results
debug:
@ -55,4 +56,4 @@
fail:
msg: "Goss failed to validate"
when: item.rc != 0
with_items: "{% raw %}{{{% endraw %} test_results.results {% raw %}}}{% endraw %}"
with_items: "{% raw %}{{{% endraw %} test_results.results {% raw %}}}{% endraw %}"

View File

@ -5,47 +5,62 @@
name: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}"
system: yes
state: present
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Ensure {{ cookiecutter.app_name }} user
user:
name: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}"
group: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}"
system: yes
shell: /usr/sbin/nologin
shell: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user_shell {% raw %}}}{% endraw %}"
createhome: no
tags:
- {{ cookiecutter.app_name }}_install
{% endif %}
- name: {{ cookiecutter.app_name | upper }} | Ensure skeleton paths
file:
dest: "{% raw %}{{{% endraw %} item {% raw %}}}{% endraw %}"
{% if cookiecutter.has_service == 'True' %}
{%- if cookiecutter.has_service == 'True' %}
owner: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}"
group: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}"
{% endif %}
{%- endif %}
mode: 0755
state: directory
with_items:
- "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_skeleton_paths {% raw %}}}{% endraw %}"
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Ensure skeleton log paths
file:
dest: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_log_path {% raw %}}}{% endraw %}"
{% if cookiecutter.has_service == 'True' %}
{%- if cookiecutter.has_service == 'True' %}
owner: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}"
group: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}"
{% endif %}
state: file
{%- endif %}
mode: 0755
state: directory
when: {{ cookiecutter.app_name }}_log_file is defined
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Check {{ cookiecutter.app_name }} version
command: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %} --version"
register: {{ cookiecutter.app_name }}_check
changed_when: false
ignore_errors: true
check_mode: no
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Download package
get_url:
url: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_url {% raw %}}}{% endraw %}"
dest: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_package_path {% raw %}}}{% endraw %}"
when: {{ cookiecutter.app_name }}_force_reinstall or {{ cookiecutter.app_name }}_check is failed or {{ cookiecutter.app_name }}_version not in {{ cookiecutter.app_name }}_check.stderr
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Extract downloaded package
unarchive:
@ -53,18 +68,22 @@
dest: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_download_path {% raw %}}}{% endraw %}"
remote_src: True
when: {{ cookiecutter.app_name }}_force_reinstall or {{ cookiecutter.app_name }}_check is failed or {{ cookiecutter.app_name }}_version not in {{ cookiecutter.app_name }}_check.stderr
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Copy binary
copy:
src: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_src_bin {% raw %}}}{% endraw %}"
dest: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_bin_path {% raw %}}}{% endraw %}/{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %}"
{% if cookiecutter.has_service == 'True' %}
{%- if cookiecutter.has_service == 'True' %}
owner: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_user {% raw %}}}{% endraw %}"
group: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_group {% raw %}}}{% endraw %}"
{% endif %}
{%- endif %}
remote_src: True
mode: 0755
when: {{ cookiecutter.app_name }}_force_reinstall or {{ cookiecutter.app_name }}_check is failed or {{ cookiecutter.app_name }}_version not in {{ cookiecutter.app_name }}_check.stderr
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Link binary
file:
@ -72,3 +91,5 @@
dest: "/usr/bin/{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_exec_name {% raw %}}}{% endraw %}"
state: link
when: {{ cookiecutter.app_name }}_force_reinstall or {{ cookiecutter.app_name }}_check is failed or {{ cookiecutter.app_name }}_version not in {{ cookiecutter.app_name }}_check.stderr
tags:
- {{ cookiecutter.app_name }}_install

View File

@ -1,17 +1,17 @@
---
- name: {{ cookiecutter.app_name | upper }} | Install
include: install.yml
import_tasks: install.yml
tags:
- {{ cookiecutter.app_name }}_install
- name: {{ cookiecutter.app_name | upper }} | Configure
include: config.yml
import_tasks: config.yml
tags:
- {{ cookiecutter.app_name }}_configure
{% if cookiecutter.has_service == 'True' %}
- name: {{ cookiecutter.app_name | upper }} | Service
include: service.yml
import_tasks: service.yml
tags:
- {{ cookiecutter.app_name }}_service
{% endif %}

View File

@ -8,10 +8,14 @@
owner: root
group: root
notify: restart {{ cookiecutter.app_name }}
tags:
- {{ cookiecutter.app_name }}_service
- name: {{ cookiecutter.app_name | upper }} | Configuring service
systemd:
name: {{ cookiecutter.app_name }}
state: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_service_state {% raw %}}}{% endraw %}"
enabled: "{% raw %}{{{% endraw %} {{ cookiecutter.app_name }}_service_enabled {% raw %}}}{% endraw %}"
daemon_reload: yes
daemon_reload: yes
tags:
- {{ cookiecutter.app_name }}_service

View File

@ -1,4 +1,6 @@
ansible=={{ cookiecutter.ansible_version }}
molecule=={{ cookiecutter.molecule_version }}
docker=={{ cookiecutter.python_docker_version }}
ansible-lint=={{ cookiecutter.ansible_lint_version }}
molecule-docker=={{ cookiecutter.molecule_docker_version }}
ansible-lint=={{ cookiecutter.ansible_lint_version }}
yamllint=={{ cookiecutter.yamllint_version }}

View File

@ -0,0 +1,3 @@
*.yml linguist-detectable=true
*.yaml linguist-detectable=true
*.html linguist-detectable=false

View File

@ -1,20 +1,25 @@
---
dist: xenial
language: python
python: "3.7"
python: "3.9"
os: linux
services:
- docker
install:
- pip install pipenv
- pip install -I pipenv
- pipenv sync
env:
jobs:
{% 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_bullseye_support == 'True' %}- MOLECULE_DISTRO=debian:bullseye-slim{% endif %}
script:
- export MOLECULE_DISTRO=${MOLECULE_DISTRO}
- pipenv run molecule test
- pipenv run molecule test --all
notifications:
webhooks: https://galaxy.ansible.com/api/v1/notifications/
webhooks: https://galaxy.ansible.com/api/v1/notifications/
email:
if: branch = main
on_success: change
on_failure: always
recipients:
- desarrollo.benders@idealista.com