From cf825de367ba5f2b4f8652817b0c203951a26d15 Mon Sep 17 00:00:00 2001 From: Thibault Jouan Date: Wed, 1 Apr 2015 15:10:07 +0000 Subject: [PATCH] Fix documented ruby code blocks formatting --- README.md | 214 +++++++++++++++++++++++++++--------------------------- 1 file changed, 109 insertions(+), 105 deletions(-) diff --git a/README.md b/README.md index f2c0d26..3020670 100644 --- a/README.md +++ b/README.md @@ -162,34 +162,36 @@ Templates In `templates/freebsd/jail.conf.erb`: - exec.start = "/bin/sh /etc/rc"; - exec.stop = "/bin/sh /etc/rc.shutdown"; - exec.clean; - mount.devfs; - allow.chflags; +```ruby +exec.start = "/bin/sh /etc/rc"; +exec.stop = "/bin/sh /etc/rc.shutdown"; +exec.clean; +mount.devfs; +allow.chflags; - path = "/var/jails/$name"; +path = "/var/jails/$name"; - <% @jails.each do |jail| -%> - <%= jail[:name] %> { - interface "<%= @if %>"; - ip4.addr = <%= jail[:addr4] %>; - } - <% end -%> +<% @jails.each do |jail| -%> +<%= jail[:name] %> { + interface "<%= @if %>"; + ip4.addr = <%= jail[:addr4] %>; +} +<% end -%> - Simple usage: +Simple usage: - INTERFACE = 're0'.freeze - JAILS = [{ - name: 'freebsd-10r1', - src: true, - addr4: '10.0.0.1' - }] +INTERFACE = 're0'.freeze +JAILS = [{ + name: 'freebsd-10r1', + src: true, + addr4: '10.0.0.1' +}] - task :jails_conf do - conf = template 'freebsd/jail.conf', if: INTERFACE, jails: JAILS - file_write_once '/etc/jail.conf', conf - end +task :jails_conf do + conf = template 'freebsd/jail.conf', if: INTERFACE, jails: JAILS + file_write_once '/etc/jail.conf', conf +end +``` Macros @@ -225,100 +227,102 @@ Sample recipe Based on the previous template example (FreeBSD jails.conf template): - require 'producer/stdlib' +```ruby +require 'producer/stdlib' - JAILS_ROOT = '/var/jails'.freeze - ZROOT = 'tank/jails'.freeze - INTERFACE = 're0'.freeze - SETS = { - base: '2b028a894d25711ad496762622a52d74b1e32ee04693ad1cf056e3ddcdc23975', - src: 'f919287a5ef51d4f133f27c99c54f2e8054f408d3dd53bc60f4e233cc75ec03d' - }.freeze - JAILS = [ - { - name: 'freebsd-10r1', - src: true, - addr4: '10.0.0.1' - }, - { - name: 'freebsd-10r1-gcc', - src: true, - addr4: '10.0.0.2' - } - ].freeze +JAILS_ROOT = '/var/jails'.freeze +ZROOT = 'tank/jails'.freeze +INTERFACE = 're0'.freeze +SETS = { + base: '2b028a894d25711ad496762622a52d74b1e32ee04693ad1cf056e3ddcdc23975', + src: 'f919287a5ef51d4f133f27c99c54f2e8054f408d3dd53bc60f4e233cc75ec03d' +}.freeze +JAILS = [ + { + name: 'freebsd-10r1', + src: true, + addr4: '10.0.0.1' + }, + { + name: 'freebsd-10r1-gcc', + src: true, + addr4: '10.0.0.2' + } +].freeze - task :freebsd_archives_fetch do - SETS.keys.each { |set| condition { no_file? "/tmp/#{set}.txz"} } +task :freebsd_archives_fetch do + SETS.keys.each { |set| condition { no_file? "/tmp/#{set}.txz"} } - SETS.each do |set, sum| - sh <<-eoh - cd /tmp && \ - fetch ftp://ftp.freebsd.org:/pub/FreeBSD/releases/amd64/10.1-RELEASE/#{set}.txz && \ - sha256 -c #{sum} #{set}.txz - eoh + SETS.each do |set, sum| + sh <<-eoh + cd /tmp && \ + fetch ftp://ftp.freebsd.org:/pub/FreeBSD/releases/amd64/10.1-RELEASE/#{set}.txz && \ + sha256 -c #{sum} #{set}.txz + eoh + end +end + +task :jails_fs_create do + condition { no_sh "zfs list #{ZROOT}" } + sh "zfs create -o mountpoint=#{JAILS_ROOT} -o compress=lz4 #{ZROOT}" +end + +JAILS.each do |jail| + root = "#{JAILS_ROOT}/#{jail[:name]}" + fs = "#{ZROOT}/#{jail[:name]}" + + task :jail_initialize do + condition { no_sh "zfs list #{fs}@install" } + + task :jail_fs_create do + condition { no_sh "zfs list #{fs}" } + + sh "zfs create #{fs}" + + SETS.keys.each do |set| + next if set == 'src' && !jail[:src] + sh "tar -JxC #{root}/ -f /tmp/#{set}.txz" end end - task :jails_fs_create do - condition { no_sh "zfs list #{ZROOT}" } - sh "zfs create -o mountpoint=#{JAILS_ROOT} -o compress=lz4 #{ZROOT}" + task :rc_conf do + file_write_once "#{root}/etc/rc.conf", <<-eoh +hostname=#{jail[:name]} +# ... + eoh end - JAILS.each do |jail| - root = "#{JAILS_ROOT}/#{jail[:name]}" - fs = "#{ZROOT}/#{jail[:name]}" - - task :jail_initialize do - condition { no_sh "zfs list #{fs}@install" } - - task :jail_fs_create do - condition { no_sh "zfs list #{fs}" } - - sh "zfs create #{fs}" - - SETS.keys.each do |set| - next if set == 'src' && !jail[:src] - sh "tar -JxC #{root}/ -f /tmp/#{set}.txz" - end - end - - task :rc_conf do - file_write_once "#{root}/etc/rc.conf", <<-eoh - hostname=#{jail[:name]} - # ... - eoh - end - - task :root_passwd do - sh "chroot #{root} pw user mod root -w random" - end - - task :mail_aliases do - condition { no_file? "#{root}/etc/mail/aliases.db" } - - sh "chroot #{root} make -C /etc/mail aliases" - end - - freebsd_update_patch_interactive "#{root}/usr/sbin/freebsd-update" - - task :jail_snapshot_install do - sh "zfs snapshot #{fs}@install" - end - end - - task :jail_update do - condition { no_sh "zfs list #{fs}@update" } - - sh "chroot #{root} freebsd-update fetch install" - sh "zfs snapshot #{fs}@update" - end + task :root_passwd do + sh "chroot #{root} pw user mod root -w random" end - task :jails_conf do - conf = template 'freebsd/jail.conf', if: INTERFACE, jails: JAILS - file_write_once '/etc/jail.conf', conf + task :mail_aliases do + condition { no_file? "#{root}/etc/mail/aliases.db" } + + sh "chroot #{root} make -C /etc/mail aliases" end + freebsd_update_patch_interactive "#{root}/usr/sbin/freebsd-update" + + task :jail_snapshot_install do + sh "zfs snapshot #{fs}@install" + end + end + + task :jail_update do + condition { no_sh "zfs list #{fs}@update" } + + sh "chroot #{root} freebsd-update fetch install" + sh "zfs snapshot #{fs}@update" + end +end + +task :jails_conf do + conf = template 'freebsd/jail.conf', if: INTERFACE, jails: JAILS + file_write_once '/etc/jail.conf', conf +end +``` + Similar or related code and tools ---------------------------------