# -*- encoding: utf-8 -*-
# stub: builderator 1.0.0.pre.rc.1 ruby lib

Gem::Specification.new do |s|
  s.name = "builderator".freeze
  s.version = "1.0.0.pre.rc.1".freeze

  s.required_rubygems_version = Gem::Requirement.new("> 1.3.1".freeze) if s.respond_to? :required_rubygems_version=
  s.require_paths = ["lib".freeze]
  s.authors = ["John Manero".freeze]
  s.date = "2016-01-08"
  s.description = "# Builderator\n\nOrchestration and configuration of the code development life-cycle.\n\n## Commands\n\n### `local [PROFILE = default]`\n\nProvision a local VM using Vagrant and, by default, VirtualBox. Uses Berkshelf to fetch cookbooks, and Chef to provision the VM.\n\n### `ec2 [PROFILE = default]`\n\nProvision an EC2 VM using Vagrant. Same workflow as `local` using the `vagrant-aws` plugin.\n\n### `release [PROFILE = default]`\n\nPerform release tasks and execute Packer builds with released artifacts.\n\n## Configuration\n\nConfiguration can be loaded from DSL files as well as JSON and command line arguments. By default, Builderator searches in your home directory (`$HOME/.builderator/Buildfile`) and the working directory (`./Builderator`) for DSL files. Configuration sources are layered and flattened into a single DSL in the following order:\n\n* Global defaults defined in the Builderator sources\n* `Config.defaults` set by plugins, tasks, etc. in code\n* `$HOME/.builderator/Buildfile`\n* `./Buildfile`\n* `Config.overrides` set by plugins, tasks, etc. in code\n* CLI arguments loaded from Thor\n\n[Additional documentation](docs/configuration.md) describes the configuration DSL interface.\n\n## Integrations\n\nBuilderator integrates with other tools, including [Berkshelf](http://berkshelf.com), [Vagrant](https://www.vagrantup.com/), and [Packer](https://www.packer.io/), to orchestrate workflows by generating `Berksfile`s, `Vagrantfile`s, and JSON strings for Packer. This means that you can replace all of these files in your project with a single `Buildfile`.\n\n### Packer\n\nThe Packer integration generates Packer JSON and passes it to STDIN of `packer build -`.\n\n    *NOTE* Currently, we assume that you're building Ubuntu images, as one of the provisioners is hard-coded to chown the Chef data directories to `ubuntu:ubuntu`\n\n## Versioning\n\nBuilderator can automatically detect versions from SCM tags, increment the latest version of an SCM branch by a variety of steps, and create new SCM tags for new versions.\n\n[Additional documentation](docs/versioning.md) describes CLI commands, configuration, and detailed behavior.\n\n## Generators\n\nBuilderator includes a task to generate common project trees from configuration definitions  and templates.\n\nEach type of project is configurable via the project collection in the `generator` namespace:\n\n```ruby\ngenerator.project :default do |default|\n  default.ruby.version '2.1.5'\n  default.builderator.version '~> 1.0'\n\n  default.vagrant do |vagrant|\n    vagrant.install false\n    vagrant.version 'v1.8.0'\n\n    vagrant.plugin 'vagrant-aws'\n    vagrant.plugin 'vagrant-omnibus'\n  end\n\n  default.resource :berksfile do |berksfile|\n    berksfile.path 'Berksfile', 'Berksfile.lock'\n    berksfile.action :rm\n  end\n\n  default.resource :buildfile do |buildfile|\n    buildfile.path 'Buildfile'\n    buildfile.action :create\n    buildfile.template 'template/Buildfile.erb'\n  end\n\n  # ...\nend\n```\n\nValid actions for resources include `:ignore`, `:create` (update only if missing), `:sync` (create or update with prompt), and `:rm`. `:create` and `:sync` actions require a valid template source.\n\nBy default, the `generator` subcommand includes a `default` project which removes Vagrant, Berkshelf, and Packer configurations.\n".freeze
  s.email = ["jmanero@rapid7.com".freeze]
  s.executables = ["build".freeze, "build-clean".freeze, "build-data".freeze]
  s.files = ["Gemfile".freeze, "Gemfile.lock".freeze, "LICENSE.txt".freeze, "README.md".freeze, "Rakefile".freeze, "Thorfile".freeze, "VERSION".freeze, "bin/build".freeze, "bin/build-clean".freeze, "bin/build-data".freeze, "builderator.gemspec".freeze, "docs/clean.md".freeze, "docs/configuration.md".freeze, "docs/configuration/cookbook.md".freeze, "docs/configuration/profile.md".freeze, "docs/versioning.md".freeze, "lib/builderator.rb".freeze, "lib/builderator/config.rb".freeze, "lib/builderator/config/attributes.rb".freeze, "lib/builderator/config/defaults.rb".freeze, "lib/builderator/config/file.rb".freeze, "lib/builderator/config/rash.rb".freeze, "lib/builderator/control/cleaner.rb".freeze, "lib/builderator/control/cookbook.rb".freeze, "lib/builderator/control/data.rb".freeze, "lib/builderator/control/data/image.rb".freeze, "lib/builderator/control/version.rb".freeze, "lib/builderator/control/version/auto.rb".freeze, "lib/builderator/control/version/bump.rb".freeze, "lib/builderator/control/version/comparable.rb".freeze, "lib/builderator/control/version/git.rb".freeze, "lib/builderator/control/version/scm.rb".freeze, "lib/builderator/interface.rb".freeze, "lib/builderator/interface/berkshelf.rb".freeze, "lib/builderator/interface/packer.rb".freeze, "lib/builderator/interface/vagrant.rb".freeze, "lib/builderator/metadata.rb".freeze, "lib/builderator/model/cleaner.rb".freeze, "lib/builderator/model/cleaner/images.rb".freeze, "lib/builderator/model/cleaner/instances.rb".freeze, "lib/builderator/model/cleaner/launch_configs.rb".freeze, "lib/builderator/model/cleaner/scaling_groups.rb".freeze, "lib/builderator/model/cleaner/snapshots.rb".freeze, "lib/builderator/model/cleaner/volumes.rb".freeze, "lib/builderator/patch/berkshelf.rb".freeze, "lib/builderator/patch/thor-actions.rb".freeze, "lib/builderator/tasks.rb".freeze, "lib/builderator/tasks/berkshelf.rb".freeze, "lib/builderator/tasks/cookbook.rb".freeze, "lib/builderator/tasks/packer.rb".freeze, "lib/builderator/tasks/vagrant.rb".freeze, "lib/builderator/tasks/vendor.rb".freeze, "lib/builderator/tasks/version.rb".freeze, "lib/builderator/util.rb".freeze, "lib/builderator/util/aws_exception.rb".freeze, "lib/builderator/util/limit_exception.rb".freeze, "lib/builderator/util/task_exception.rb".freeze, "mkmf.log".freeze, "spec/config_spec.rb".freeze, "spec/data/Berksfile".freeze, "spec/data/Buildfile".freeze, "spec/data/Vagrantfile".freeze, "spec/data/history.json".freeze, "spec/data/packer.json".freeze, "spec/interface_spec.rb".freeze, "spec/resource/Buildfile".freeze, "spec/spec_helper.rb".freeze, "spec/version_spec.rb".freeze, "template/Berksfile.erb".freeze, "template/Buildfile.erb".freeze, "template/Gemfile.erb".freeze, "template/README.md.erb".freeze, "template/Vagrantfile.erb".freeze, "template/gitignore.erb".freeze, "template/rubocop.erb".freeze]
  s.homepage = "https://github.com/rapid7/builderator".freeze
  s.licenses = ["MIT".freeze]
  s.rubygems_version = "3.5.10".freeze
  s.summary = "Tools to make CI Packer builds awesome".freeze
  s.test_files = ["spec/config_spec.rb".freeze, "spec/data/Berksfile".freeze, "spec/data/Buildfile".freeze, "spec/data/Vagrantfile".freeze, "spec/data/history.json".freeze, "spec/data/packer.json".freeze, "spec/interface_spec.rb".freeze, "spec/resource/Buildfile".freeze, "spec/spec_helper.rb".freeze, "spec/version_spec.rb".freeze]

  s.specification_version = 4

  s.add_development_dependency(%q<rake>.freeze, ["~> 10.0".freeze])
  s.add_development_dependency(%q<rspec>.freeze, ["~> 3.0".freeze])
  s.add_development_dependency(%q<rubocop>.freeze, ["~> 0.35".freeze])
  s.add_development_dependency(%q<thor-scmversion>.freeze, ["= 1.7.0".freeze])
  s.add_runtime_dependency(%q<aws-sdk>.freeze, ["~> 2.0".freeze])
  s.add_runtime_dependency(%q<bundler>.freeze, ["~> 1.7.0".freeze])
  s.add_runtime_dependency(%q<berkshelf>.freeze, ["~> 3.2".freeze])
  s.add_runtime_dependency(%q<chef>.freeze, ["~> 12.0".freeze])
  s.add_runtime_dependency(%q<faraday_middleware>.freeze, ["~> 0.10.0".freeze])
  s.add_runtime_dependency(%q<ignorefile>.freeze, [">= 0".freeze])
  s.add_runtime_dependency(%q<thor>.freeze, ["~> 0.19.0".freeze])
end