Sha256: bb90fbb6222a16975d78e5951c6dadfc24ac1079027da628fe768345ba33c842

Contents?: true

Size: 1.12 KB

Versions: 10

Compression:

Stored size: 1.12 KB

Contents

#!/usr/bin/env ruby

$:.push 'lib'
require 'rubygems'
require 'thor'
require 'thor/group'
require 'opskeleton'

module Opsk
  class Specgen < Thor::Group
    include Thor::Actions

    argument :name, :type => :string, :desc => "static module name"

    def self.source_root
	# during dev time
	if(File.dirname(__FILE__) == './bin')
	  File.dirname('.')
	else 
	  "#{File.dirname(__FILE__)}/../"
	end
    end

    def create_spec_folders
	%w(classes defines functions hosts).each do |t|
	  empty_directory("static-modules/#{name}/spec/#{t}")
	end
    end

    def create_class_spec
	template('templates/spec.erb', "static-modules/#{name}/spec/classes/")
    end
  end
end


module Opsk
  class Root < Thor
    register Opsk::Generate, 'generate', 'generate [name] [box]', 'generates opskelaton project structure'
    register Opsk::Specgen, 'specgen', 'specgen [module]', 'generates rspec-puppet for static-modules/module'
    register Opsk::Package, 'package', 'package', 'packages current module for celestial'

    desc 'version', 'print opsk version'  
    def version
	puts Opskeleton::VERSION    
    end
  end 
end

Opsk::Root.start ARGV

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
opskeleton-0.1.9 bin/opsk
opskeleton-0.1.8 bin/opsk
opskeleton-0.1.7 bin/opsk
opskeleton-0.1.6 bin/opsk
opskeleton-0.1.5 bin/opsk
opskeleton-0.1.4 bin/opsk
opskeleton-0.1.3 bin/opsk
opskeleton-0.1.2 bin/opsk
opskeleton-0.1.1 bin/opsk
opskeleton-0.1.0 bin/opsk