Comments (6)
Currently, the role is intended for use in playbooks that are specific to one type of server configuration/setup. The role works cross-platform, but I think the use case of having the same playbook deploying to different OSes is a little more edge-case, but I'll leave this ticket open for anyone else to chime in for now.
I like making the role as flexible as possible, but generally roles are made cross platform, but the playbooks that use the roles are more platform and architecture-specific.
from ansible-role-mysql.
Hm, makes sense. Actually, I never thought about creating multiple playbooks for separate environments. One possible downside of that is probably common things cannot be shared between the two playbooks. At least I didn't find any reference for inclusion in playbooks.
from ansible-role-mysql.
@sagikazarmark - Typically if there's more than one or two tasks that need to be the same in more than one playbook, it's best to create your own role that can have it's own overridden variables, and then include that role in both playbooks.
Most of my playbooks go something like this:
---
- hosts: example
vars_files:
- vars/main.yml
roles:
- geerlingguy.firewall
- geerlingguy.security
- geerlingguy.mysql
- accounts
- companyxyz
And the accounts
role has account setup info (for CI users, any admin groups, that kind of thing), and the companyxyz
role would have specific server tweaks for that set of servers for that particular client/app (which could be platform-specific as well).
Then each server type gets its own playbook (like the above) with it's own vars file.
from ansible-role-mysql.
Is it possible to store role variables in that var file? Because I tried to store some variables in a var file, and they were not set in the role.
from ansible-role-mysql.
Yes that’s what I usually do.
I extract all vars file that I can find into vars/
to override with my own config:
---
- name: Deploy GitLab
hosts: gitlab
vars_files:
- vars/gitlab.yml
pre_tasks:
- include: tasks/gitlab_pre.yml
post_tasks:
- include: tasks/gitlab_post.yml
roles:
- ansible-role-repo-epel
- ansible-role-ansible
- ansible-role-gitlab
tags:
- gitlab
- name: Deploy HAProxy
hosts: haproxy
vars_files:
- vars/haproxy.yml
roles:
- ansible-role-haproxy
from ansible-role-mysql.
This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!
Please read this blog post to see the reasons why I mark issues as stale.
from ansible-role-mysql.
Related Issues (20)
- task user setting fails with censored info when using password saved in ansible vault HOT 3
- best way to use mysql installation default settings HOT 2
- mariadbd: can't create/write to file '/var/run/mariadb/mariadb.pid (Errcode 2 'No such file or directory') HOT 3
- Allow custom MariaDB version using upstream repos HOT 2
- Check master replication status. HOT 3
- Skip replication tasks HOT 8
- Change mysql_bind_address: '0.0.0.0' to mysql_bind_address: '127.0.0.1' in defaults HOT 2
- Add additional innodb tunables to configuration HOT 4
- Missing community.mysql HOT 2
- ERROR! 'include_tasks' is not a valid attribute for a Play HOT 4
- MySQL fails to start when `mysql_datadir` is set to anything other than MySQL's default HOT 13
- Make apt update_cache optional or ignore errors HOT 2
- mysql_extra_config for my.cnf HOT 2
- force mariadb installation on ubuntu 22.04 not working HOT 1
- mysql_bind_address does not override all conf files
- FAILED! => {"changed": false, "msg": "Could not find the requested service mysql: host"} HOT 5
- secure-installation fails on RHEL8 at remove test database. HOT 3
- includedir is set only if mysql_config_include_files is set HOT 2
- error "couldn't resolve module/action 'mysql_user'" when i used in awx HOT 4
- add innodb settings HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansible-role-mysql.