Sha256: 16ceec198fca4da17b383b580979ba84d3b59e544609e892fa2cd05c71f46757

Contents?: true

Size: 1.27 KB

Versions: 4

Compression:

Stored size: 1.27 KB

Contents

# frozen_string_literal: true

# takeltau init packer docker
module InitPackerDocker
  # Backend method for init docker packer.
  # @return [Boolean] successful init?
  def init_packer_docker
    log.debug 'Initialize packer project for docker images'

    files = _init_packer_docker_files_get

    return false unless _init_packer_docker_check_prerequisites files

    exit_code = _init_packer_docker_create_project files

    # reinitialize config with newly created files
    initialize_config

    return false unless _init_lib_hg_clone

    return false unless exit_code

    true
  end

  private

  # Add templates.
  def _init_packer_docker_files_get
    [
      @ansiblelint,
      @gitignore,
      @groupvarsprojectyml,
      @hgclone,
      @playbooksiteyml,
      @projectyml,
      @rakefile
    ]
  end

  # Check prerequisites.
  def _init_packer_docker_check_prerequisites(files)
    return false unless _init_lib_git_check

    return false unless _init_lib_files_check files

    true
  end

  # Create project.
  def _init_packer_docker_create_project(files)
    exit_code = true

    exit_code &&= _init_lib_git_init
    exit_code &&= _init_lib_files_create files
    exit_code &&= _init_lib_git_add_all
    exit_code &&= _init_lib_git_commit_initial

    exit_code
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
takeltau-0.35.15 lib/takeltau/init/packer/docker.rb
takeltau-0.35.14 lib/takeltau/init/packer/docker.rb
takeltau-0.35.12 lib/takeltau/init/packer/docker.rb
takeltau-0.35.11 lib/takeltau/init/packer/docker.rb