Sha256: a835fff9de38b8e2697d599ae84c071b2c8589b6e3d1515970d2512edc317c7f

Contents?: true

Size: 578 Bytes

Versions: 1

Compression:

Stored size: 578 Bytes

Contents

module Kubec
  class Kubernetes
    # :nodoc:
    class Template < Hash
      extend Forwardable

      def_delegators :metadata, :labels, :label

      def initialize
        self[:metadata] = Metadata.new
        self[:spec] = {}
      end

      def metadata(&block)
        return self[:metadata] unless block_given?
        self[:metadata].instance_eval(&block)
      end

      def spec
        self[:spec]
      end

      def container(name, &block)
        spec[:containers] ||= []
        spec[:containers].push Container.new(name, &block)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kubec-0.2.0 lib/kubec/kubernetes/template.rb