Commit ffef2fa291bf04c6ac2b5b22ca4e7db199356670
1 parent
0a4a481b
Exists in
master
and in
56 other branches
Clean yum cache by default.
Cache can be kept by using the flag keep_yum_cache=1 Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Sergio Oliveira <sergio@tracy.com.br>
Showing
2 changed files
with
24 additions
and
25 deletions
Show diff stats
Rakefile
| ... | ... | @@ -52,6 +52,7 @@ end |
| 52 | 52 | ips ||= YAML.load_file(ips_file) |
| 53 | 53 | config ||= YAML.load_file(config_file) |
| 54 | 54 | firewall ||= File.open(iptables_file).read |
| 55 | +config['keep_yum_cache'] = ENV['keep_yum_cache'] ? true : false | |
| 55 | 56 | $nodes.each do |node| |
| 56 | 57 | node.data['environment'] = $SPB_ENV |
| 57 | 58 | node.data['config'] = config | ... | ... |
cookbooks/basics/recipes/default.rb
| 1 | + | |
| 2 | +# our custom repositories | |
| 3 | +if node['platform'] == 'centos' | |
| 4 | + cookbook_file '/etc/yum.repos.d/softwarepublico.key' do | |
| 5 | + owner 'root' | |
| 6 | + mode 0644 | |
| 7 | + end | |
| 8 | + template '/etc/yum.repos.d/softwarepublico.repo' do | |
| 9 | + owner 'root' | |
| 10 | + mode 0644 | |
| 11 | + end | |
| 12 | + | |
| 13 | + unless node['config']['keep_yum_cache'] | |
| 14 | + execute 'yum_clean_cache' do | |
| 15 | + command 'yum clean all' | |
| 16 | + end | |
| 17 | + # reload internal Chef yum cache | |
| 18 | + ruby_block "yum-cache-reload" do | |
| 19 | + block { Chef::Provider::Package::Yum::YumCache.instance.reload } | |
| 20 | + end | |
| 21 | + end | |
| 22 | +end | |
| 23 | + | |
| 1 | 24 | # enable EPEL repository by default |
| 2 | 25 | package 'epel-release' |
| 3 | 26 | |
| ... | ... | @@ -65,31 +88,6 @@ end |
| 65 | 88 | # FIXME on Debian it's postgresql-client |
| 66 | 89 | package 'postgresql' |
| 67 | 90 | |
| 68 | -# our custom repositories | |
| 69 | -if node['platform'] == 'centos' | |
| 70 | - cookbook_file '/etc/yum.repos.d/softwarepublico.key' do | |
| 71 | - owner 'root' | |
| 72 | - mode 0644 | |
| 73 | - end | |
| 74 | - template '/etc/yum.repos.d/softwarepublico.repo' do | |
| 75 | - owner 'root' | |
| 76 | - mode 0644 | |
| 77 | - notifies :run, "execute[yum_clean_cache]", :immediately | |
| 78 | - notifies :create, "ruby_block[yum-cache-reload]", :immediately | |
| 79 | - end | |
| 80 | - execute 'yum_clean_cache' do | |
| 81 | - command 'yum clean all' | |
| 82 | - action :nothing | |
| 83 | - end | |
| 84 | - # reload internal Chef yum cache | |
| 85 | - ruby_block "yum-cache-reload" do | |
| 86 | - block { Chef::Provider::Package::Yum::YumCache.instance.reload } | |
| 87 | - action :nothing | |
| 88 | - end | |
| 89 | -end | |
| 90 | - | |
| 91 | - | |
| 92 | - | |
| 93 | 91 | # reload node[:fqdn] to make sure it reflects the contents of /etc/hosts |
| 94 | 92 | # without that the variable :fqdn would not be available on first run |
| 95 | 93 | ruby_block 'fqdn:update' do | ... | ... |