forked from ungleich-public/cdist
		
	Merge branch 'master' into feature_init_process
This commit is contained in:
		
				commit
				
					
						dc9e1e4a25
					
				
			
		
					 25 changed files with 719 additions and 2 deletions
				
			
		
							
								
								
									
										26
									
								
								conf/type/__rvm/explorer/state
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										26
									
								
								conf/type/__rvm/explorer/state
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,26 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| user="$__object_id" | ||||
| if su - $user -c "[ -d \"\$HOME/.rvm\" ]" ; then | ||||
|    echo "installed" | ||||
| else | ||||
|    echo "removed" | ||||
| fi | ||||
							
								
								
									
										39
									
								
								conf/type/__rvm/gencode-remote
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										39
									
								
								conf/type/__rvm/gencode-remote
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,39 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| user="$__object_id" | ||||
| state_is="$(cat "$__object/explorer/state")" | ||||
| state_should="$(cat "$__object/parameter/state")" | ||||
| if [ "$state_is" != "$state_should" ]; then | ||||
|    case "$state_should" in | ||||
|       installed) | ||||
|          cat << DONE | ||||
| su - $user -c "bash -s stable < <(curl -s \ | ||||
| https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)" | ||||
| DONE | ||||
|       ;; | ||||
|       removed) | ||||
|          cat << DONE | ||||
| su - $user -c "rm -Rf \"\\\$HOME/.rvm\"; | ||||
| sed -i '/rvm\/scripts\/rvm/d' \"\\\$HOME/.bashrc\"" | ||||
| DONE | ||||
|       ;; | ||||
|    esac | ||||
| fi | ||||
							
								
								
									
										45
									
								
								conf/type/__rvm/man.text
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								conf/type/__rvm/man.text
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,45 @@ | |||
| cdist-type__rvm(7) | ||||
| ================== | ||||
| Evax Software <contact@evax.fr> | ||||
| 
 | ||||
| 
 | ||||
| NAME | ||||
| ---- | ||||
| cdist-type__rvm - Install rvm for a given user | ||||
| 
 | ||||
| 
 | ||||
| DESCRIPTION | ||||
| ----------- | ||||
| RVM is the Ruby enVironment Manager for the Ruby programming language. | ||||
| 
 | ||||
| 
 | ||||
| REQUIRED PARAMETERS | ||||
| ------------------- | ||||
| state:: | ||||
|    Either "installed" or "removed". | ||||
| 
 | ||||
| 
 | ||||
| EXAMPLES | ||||
| -------- | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| # Install rvm for user billie | ||||
| __rvm billie --state installed | ||||
| 
 | ||||
| # Remove rvm | ||||
| __rvm billie --state removed | ||||
| -------------------------------------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| SEE ALSO | ||||
| -------- | ||||
| - cdist-type(7) | ||||
| - cdist-type__rvm_ruby(7) | ||||
| - cdist-type__rvm_gemset(7) | ||||
| - cdist-type__rvm_gem(7) | ||||
| 
 | ||||
| 
 | ||||
| COPYING | ||||
| ------- | ||||
| Copyright \(C) 2012 Evax Software. Free use of this software is granted under | ||||
| the terms of the GNU General Public License version 3 (GPLv3). | ||||
							
								
								
									
										25
									
								
								conf/type/__rvm/manifest
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										25
									
								
								conf/type/__rvm/manifest
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| # rvm core dependencies | ||||
| __package bash --state installed | ||||
| __package curl --state installed | ||||
| __package git-core --state installed | ||||
| __package patch --state installed | ||||
							
								
								
									
										1
									
								
								conf/type/__rvm/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								conf/type/__rvm/parameter/required
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | |||
| state | ||||
							
								
								
									
										39
									
								
								conf/type/__rvm_gem/explorer/state
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										39
									
								
								conf/type/__rvm_gem/explorer/state
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,39 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gem="$__object_id" | ||||
| gemset="$(cat "$__object/parameter/gemset")" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f2)" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| if su - $user -c "[ ! -d \"\$HOME/.rvm\" ]" ; then | ||||
|    echo "removed" | ||||
|    exit 0 | ||||
| fi | ||||
| if su - $user -c "source \"\$HOME/.rvm/scripts/rvm\" | ||||
| rvm list | grep -q $ruby"; then | ||||
|    if su - $user -c "source \"\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use $ruby > /dev/null; rvm gemset list | grep -q $gemsetname && | ||||
| rvm use $gemset > /dev/null && gem list | grep -q $gem"; then | ||||
|       echo "installed" | ||||
|       exit 0 | ||||
|   fi | ||||
| fi | ||||
| echo "removed" | ||||
							
								
								
									
										43
									
								
								conf/type/__rvm_gem/gencode-remote
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										43
									
								
								conf/type/__rvm_gem/gencode-remote
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,43 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gem="$__object_id" | ||||
| gemset="$(cat "$__object/parameter/gemset")" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f 2)" | ||||
| state_is="$(cat "$__object/explorer/state")" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| state_should="$(cat "$__object/parameter/state")" | ||||
| if [ "$state_is" != "$state_should" ]; then | ||||
|    case "$state_should" in | ||||
|       installed) | ||||
|          cat << DONE | ||||
| su - $user -c "source \"\\\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use $gemset; gem install $gem" | ||||
| DONE | ||||
|       ;; | ||||
|       removed) | ||||
|           cat << DONE | ||||
| su - $user -c "source \"\\\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use $gemset; gem uninstall $gem" | ||||
| DONE | ||||
|       ;; | ||||
|    esac | ||||
| fi | ||||
							
								
								
									
										57
									
								
								conf/type/__rvm_gem/man.text
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								conf/type/__rvm_gem/man.text
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,57 @@ | |||
| cdist-type__rvm_gemset(7) | ||||
| ========================== | ||||
| Evax Software <contact@evax.fr> | ||||
| 
 | ||||
| 
 | ||||
| NAME | ||||
| ---- | ||||
| cdist-type__rvm_gem - Manage Ruby gems through rvm | ||||
| 
 | ||||
| 
 | ||||
| DESCRIPTION | ||||
| ----------- | ||||
| RVM is the Ruby enVironment Manager for the Ruby programming language. | ||||
| 
 | ||||
| 
 | ||||
| REQUIRED PARAMETERS | ||||
| ------------------- | ||||
| user:: | ||||
|    The remote user account to use | ||||
| gemset:: | ||||
|    The gemset to use | ||||
| state:: | ||||
|    Either "installed" or "removed". | ||||
| 
 | ||||
| OPTIONAL PARAMETERS | ||||
| ------------------- | ||||
| default:: | ||||
|    Make the selected gemset the default | ||||
| 
 | ||||
| EXAMPLES | ||||
| -------- | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| # Install the rails gem in gemset ruby-1.9.3-p0@myset for user bill | ||||
| __rvm_gemset rails --gemset ruby-1.9.3-p0@myset --user bill --state installed | ||||
| 
 | ||||
| # Do the same and also make ruby-1.9.3-p0@myset the default gemset | ||||
| __rvm_gemset rails --gemset ruby-1.9.3-p0@myset --user bill \ | ||||
|                    --state installed --default yes | ||||
| 
 | ||||
| # Remove it | ||||
| __rvm_ruby rails --gemset ruby-1.9.3-p0@myset --user bill --state removed | ||||
| -------------------------------------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| SEE ALSO | ||||
| -------- | ||||
| - cdist-type(7) | ||||
| - cdist-type__rvm(7) | ||||
| - cdist-type__rvm_ruby(7) | ||||
| - cdist-type__rvm_gemset(7) | ||||
| 
 | ||||
| 
 | ||||
| COPYING | ||||
| ------- | ||||
| Copyright \(C) 2012 Evax Software. Free use of this software is granted under | ||||
| the terms of the GNU General Public License version 3 (GPLv3). | ||||
							
								
								
									
										38
									
								
								conf/type/__rvm_gem/manifest
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										38
									
								
								conf/type/__rvm_gem/manifest
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,38 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gem="$__object_id" | ||||
| gemset="$(cat "$__object/parameter/gemset")" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f 2)" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| state="$(cat "$__object/explorer/state")" | ||||
| if [ -f "$__object/parameter/default" ]; then | ||||
|    default="$(cat "$__object/parameter/default")" | ||||
| else | ||||
|    default="no" | ||||
|    echo $default > "$__object/parameter/default" | ||||
| fi | ||||
| 
 | ||||
| __rvm $user --state installed | ||||
| require="__rvm/$user" \ | ||||
|    __rvm_ruby $ruby --user $user --state installed --default $default | ||||
| require="__rvm_ruby/$ruby" \ | ||||
|    __rvm_gemset $gemset --user $user --state installed --default $default | ||||
							
								
								
									
										1
									
								
								conf/type/__rvm_gem/parameter/optional
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								conf/type/__rvm_gem/parameter/optional
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | |||
| default | ||||
							
								
								
									
										3
									
								
								conf/type/__rvm_gem/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								conf/type/__rvm_gem/parameter/required
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| state | ||||
| gemset | ||||
| user | ||||
							
								
								
									
										37
									
								
								conf/type/__rvm_gemset/explorer/state
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										37
									
								
								conf/type/__rvm_gemset/explorer/state
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,37 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gemset="$__object_id" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f2)" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| if su - $user -c "[ ! -d \"\$HOME/.rvm\" ]" ; then | ||||
|    echo "removed" | ||||
|    exit 0 | ||||
| fi | ||||
| if su - $user -c "source \"\$HOME/.rvm/scripts/rvm\" | ||||
| rvm list | grep -q $ruby"; then | ||||
|    if su - $user -c "source \"\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use $ruby > /dev/null; rvm gemset list | grep -q $gemsetname"; then | ||||
|       echo "installed" | ||||
|       exit 0 | ||||
|   fi | ||||
| fi | ||||
| echo "removed" | ||||
							
								
								
									
										52
									
								
								conf/type/__rvm_gemset/gencode-remote
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										52
									
								
								conf/type/__rvm_gemset/gencode-remote
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,52 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gemset="$__object_id" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f 2)" | ||||
| state_is="$(cat "$__object/explorer/state")" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| state_should="$(cat "$__object/parameter/state")" | ||||
| if [ "$state_is" != "$state_should" ]; then | ||||
|    case "$state_should" in | ||||
|       installed) | ||||
|          cat << DONE | ||||
| su - $user -c "source \"\\\$HOME/.rvm/scripts/rvm\" | ||||
| rvm $gemset --create" | ||||
| DONE | ||||
|          case "$default" in | ||||
|             no) | ||||
|             ;; | ||||
|             *) | ||||
|                cat << DONE | ||||
| su - $user -c "source \"\\\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use --default $gemset" | ||||
| DONE | ||||
|             ;; | ||||
|          esac | ||||
|       ;; | ||||
|       removed) | ||||
|           cat << DONE | ||||
| su - $user -c "source \"\\\$HOME/.rvm/scripts/rvm\" | ||||
| rvm use $ruby; rvm --force gemset delete $gemsetname" | ||||
| DONE | ||||
|       ;; | ||||
|    esac | ||||
| fi | ||||
							
								
								
									
										54
									
								
								conf/type/__rvm_gemset/man.text
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								conf/type/__rvm_gemset/man.text
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,54 @@ | |||
| cdist-type__rvm_gemset(7) | ||||
| ========================== | ||||
| Evax Software <contact@evax.fr> | ||||
| 
 | ||||
| 
 | ||||
| NAME | ||||
| ---- | ||||
| cdist-type__rvm_gemset - Manage gemsets through rvm | ||||
| 
 | ||||
| 
 | ||||
| DESCRIPTION | ||||
| ----------- | ||||
| RVM is the Ruby enVironment Manager for the Ruby programming language. | ||||
| 
 | ||||
| 
 | ||||
| REQUIRED PARAMETERS | ||||
| ------------------- | ||||
| user:: | ||||
|    The remote user account to use | ||||
| state:: | ||||
|    Either "installed" or "removed". | ||||
| 
 | ||||
| OPTIONAL PARAMETERS | ||||
| ------------------- | ||||
| default:: | ||||
|    If set to anything but "no" (the default), set the given gemset as default. | ||||
| 
 | ||||
| EXAMPLES | ||||
| -------- | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| # Install the gemset @myset for user charles on based on ruby-1.9.3-0 | ||||
| __rvm_gemset ruby-1.9.3-p0@myset --user charles --state installed | ||||
| 
 | ||||
| # Do the same and make ruby-1.9.3-p0@myset the default gemset | ||||
| __rvm_gemset ruby-1.9.3-p0@myset --user charles --state installed --default yes | ||||
| 
 | ||||
| # Remove the gemset @myset for user john | ||||
| __rvm_ruby ruby-1.9.3-p0@myset --user john --state removed | ||||
| -------------------------------------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| SEE ALSO | ||||
| -------- | ||||
| - cdist-type(7) | ||||
| - cdist-type__rvm(7) | ||||
| - cdist-type__rvm_ruby(7) | ||||
| - cdist-type__rvm_gem(7) | ||||
| 
 | ||||
| 
 | ||||
| COPYING | ||||
| ------- | ||||
| Copyright \(C) 2012 Evax Software. Free use of this software is granted under | ||||
| the terms of the GNU General Public License version 3 (GPLv3). | ||||
							
								
								
									
										35
									
								
								conf/type/__rvm_gemset/manifest
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										35
									
								
								conf/type/__rvm_gemset/manifest
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,35 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| gemset="$__object_id" | ||||
| ruby="$(echo "$gemset" | cut -d '@' -f 1)" | ||||
| gemsetname="$(echo "$gemset" | cut -d '@' -f 2)" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| state="$(cat "$__object/explorer/state")" | ||||
| if [ -f "$__object/parameter/default" ]; then | ||||
|    default="$(cat "$__object/parameter/default")" | ||||
| else | ||||
|    default="no" | ||||
| fi | ||||
| 
 | ||||
| __rvm $user --state installed | ||||
| require="__rvm/$user" \ | ||||
|    __rvm_ruby $ruby --user $user --state installed --default $default | ||||
| 
 | ||||
							
								
								
									
										1
									
								
								conf/type/__rvm_gemset/parameter/optional
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								conf/type/__rvm_gemset/parameter/optional
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | |||
| default | ||||
							
								
								
									
										2
									
								
								conf/type/__rvm_gemset/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								conf/type/__rvm_gemset/parameter/required
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,2 @@ | |||
| state | ||||
| user | ||||
							
								
								
									
										32
									
								
								conf/type/__rvm_ruby/explorer/state
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										32
									
								
								conf/type/__rvm_ruby/explorer/state
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| ruby="$__object_id" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| if su - $user -c "[ ! -d \"\$HOME/.rvm\" ]" ; then | ||||
|     echo "removed" | ||||
|     exit 0 | ||||
| fi | ||||
| if su - $user -c "source \"\$HOME/.rvm/scripts/rvm\" | ||||
| rvm list | grep -q $ruby"; then | ||||
|    echo "installed" | ||||
| else | ||||
|    echo "removed" | ||||
| fi | ||||
							
								
								
									
										45
									
								
								conf/type/__rvm_ruby/gencode-remote
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										45
									
								
								conf/type/__rvm_ruby/gencode-remote
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,45 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| ruby="$__object_id" | ||||
| state_is="$(cat "$__object/explorer/state")" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| default="$(cat "$__object/parameter/default")" | ||||
| state_should="$(cat "$__object/parameter/state")" | ||||
| if [ "$state_is" != "$state_should" ]; then | ||||
|    case "$state_should" in | ||||
|       installed) | ||||
|          echo "su - $user -c \"source \\\$HOME/.rvm/scripts/rvm;"\ | ||||
|               "rvm install $ruby\"" | ||||
|          case "$default" in | ||||
|             no) | ||||
|             ;; | ||||
|             *) | ||||
|                echo "su - $user -c \"source \\\$HOME/.rvm/scripts/rvm;"\ | ||||
|                     "rvm use --default $ruby\"" | ||||
|             ;; | ||||
|           esac | ||||
|       ;; | ||||
|       removed) | ||||
|          echo "su - $user -c \"source \\\$HOME/.rvm/scripts/rvm;"\ | ||||
|               "rvm remove $ruby\"" | ||||
|       ;; | ||||
|    esac | ||||
| fi | ||||
							
								
								
									
										54
									
								
								conf/type/__rvm_ruby/man.text
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								conf/type/__rvm_ruby/man.text
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,54 @@ | |||
| cdist-type__rvm_ruby(7) | ||||
| ======================= | ||||
| Evax Software <contact@evax.fr> | ||||
| 
 | ||||
| 
 | ||||
| NAME | ||||
| ---- | ||||
| cdist-type__rvm_ruby - Manage ruby installations through rvm | ||||
| 
 | ||||
| 
 | ||||
| DESCRIPTION | ||||
| ----------- | ||||
| RVM is the Ruby enVironment Manager for the Ruby programming language. | ||||
| 
 | ||||
| 
 | ||||
| REQUIRED PARAMETERS | ||||
| ------------------- | ||||
| user:: | ||||
|    The remote user account to use | ||||
| state:: | ||||
|    Either "installed" or "removed". | ||||
| 
 | ||||
| OPTIONAL PARAMETERS | ||||
| ------------------- | ||||
| default: | ||||
|    If set to anything but "no" (the default), set the given version as default | ||||
| 
 | ||||
| EXAMPLES | ||||
| -------- | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| # Install ruby 1.9.3 through rvm for user thelonious | ||||
| __rvm_ruby ruby-1.9.3-p0 --user thelonious --state installed | ||||
| 
 | ||||
| # Install ruby 1.9.3 through rvm for user ornette and make it the default | ||||
| __rvm_ruby ruby-1.9.3-p0 --user ornette --state installed --default yes | ||||
| 
 | ||||
| # Remove ruby 1.9.3 for user john | ||||
| __rvm_ruby ruby-1.9.3-p0 --user john --state removed | ||||
| -------------------------------------------------------------------------------- | ||||
| 
 | ||||
| 
 | ||||
| SEE ALSO | ||||
| -------- | ||||
| - cdist-type(7) | ||||
| - cdist-type__rvm(7) | ||||
| - cdist-type__rvm_gemset(7) | ||||
| - cdist-type__rvm_gem(7) | ||||
| 
 | ||||
| 
 | ||||
| COPYING | ||||
| ------- | ||||
| Copyright \(C) 2012 Evax Software. Free use of this software is granted under | ||||
| the terms of the GNU General Public License version 3 (GPLv3). | ||||
							
								
								
									
										83
									
								
								conf/type/__rvm_ruby/manifest
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										83
									
								
								conf/type/__rvm_ruby/manifest
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,83 @@ | |||
| #!/bin/sh | ||||
| # | ||||
| # 2012 Evax Software <contact@evax.fr> | ||||
| # | ||||
| # This file is part of cdist. | ||||
| # | ||||
| # cdist is free software: you can redistribute it and/or modify | ||||
| # it under the terms of the GNU General Public License as published by | ||||
| # the Free Software Foundation, either version 3 of the License, or | ||||
| # (at your option) any later version. | ||||
| # | ||||
| # cdist is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| # GNU General Public License for more details. | ||||
| # | ||||
| # You should have received a copy of the GNU General Public License | ||||
| # along with cdist. If not, see <http://www.gnu.org/licenses/>. | ||||
| # | ||||
| 
 | ||||
| if [ -f "$__object/parameter/default" ]; then | ||||
|    default="$(cat "$__object/parameter/default")" | ||||
| else | ||||
|    default="no" | ||||
|    echo "$default" > "$__object/parameter/default" | ||||
| fi | ||||
| 
 | ||||
| ruby="$__object_id" | ||||
| user="$(cat "$__object/parameter/user")" | ||||
| state="$(cat "$__object/explorer/state")" | ||||
| 
 | ||||
| apt_ruby="build-essential openssl libreadline6 libreadline6-dev curl git-core | ||||
| zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 | ||||
| libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison | ||||
| subversion" | ||||
| apt_jruby="curl g++ openjdk-6-jre-headless" | ||||
| apt_jruby_head="ant openjdk-6-jdk" | ||||
| apt_ironruby="curl mono-2.0-devel" | ||||
| 
 | ||||
| emerge_ruby="libiconv readline zlib openssl curl git libyaml sqlite libxslt | ||||
| libtool gcc autoconf automake bison m4" | ||||
| emerge_jruby="dev-java/sun-jdk dev-java/sun-jre-bin" | ||||
| emerge_ironruby="dev-lang/mono" | ||||
| 
 | ||||
| pacman_ruby="gcc patch curl zlib readline libxml2 libxslt git autoconf | ||||
| diffutils make libtool bison subversion" | ||||
| pacman_jruby="jdk jre curl" | ||||
| pacman_ironruby="mono" | ||||
| 
 | ||||
| yum_ruby="gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel | ||||
| libffi-devel openssl-devel make bzip2 autoconf automake libtool bison | ||||
| iconv-devel" | ||||
| yum_jruby="java" | ||||
| 
 | ||||
| os="$(cat "$__global/explorer/os")" | ||||
| case "$os" in | ||||
|  archlinux) type="pacman" ;; | ||||
|  debian|ubuntu) type="apt" ;; | ||||
|  gentoo) type="emerge" ;; | ||||
|  fedora|redhat|centos) type="yum" ;; | ||||
|  *);; | ||||
| esac | ||||
| case "$ruby" in | ||||
|  ruby-head*) | ||||
|     deps_list="${type}_ruby_head" | ||||
|  ;; | ||||
|  ruby*) | ||||
|     deps_list="${type}_ruby" | ||||
|  ;; | ||||
|  jruby-head*) | ||||
|     deps_list="${type}_jruby_head" | ||||
|  ;; | ||||
|  jruby*) | ||||
|     deps_list="${type}_jruby" | ||||
|  ;; | ||||
|  ironruby*) | ||||
|     deps_list="${type}_ironruby" | ||||
|  ;; | ||||
| esac | ||||
| deps=$(eval echo \$$deps_list) | ||||
| for p in $deps; do __package_${type} $p --state installed; done | ||||
| 
 | ||||
| __rvm "$user" --state installed | ||||
							
								
								
									
										1
									
								
								conf/type/__rvm_ruby/parameter/optional
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								conf/type/__rvm_ruby/parameter/optional
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | |||
| default | ||||
							
								
								
									
										2
									
								
								conf/type/__rvm_ruby/parameter/required
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								conf/type/__rvm_ruby/parameter/required
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,2 @@ | |||
| state | ||||
| user | ||||
|  | @ -3,6 +3,10 @@ | |||
| 		Also remove the [ppa-name].list file, if empty. (Tim Kersten) | ||||
| 	* Feature __package_apt: | ||||
| 		Initial support for virtual packages (Evax Software) | ||||
| 	* New Type: __rvm (Evax Software) | ||||
| 	* New Type: __rvm_gem (Evax Software) | ||||
| 	* New Type: __rvm_gemset (Evax Software) | ||||
| 	* New Type: __rvm_ruby (Evax Software) | ||||
| 
 | ||||
| 2.0.5: 2012-01-18 | ||||
| 	* Bugfix __key_value: Use correct delimiters | ||||
|  |  | |||
|  | @ -1,5 +1,3 @@ | |||
| - release 2.0.5 | ||||
| - go through pull requests / check & include them | ||||
| - update/create docs | ||||
|     - cdist-cache:: | ||||
|         How to get use information about the hosts we have been working on [advanced] | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue