不使用-only选项的默认打包程序生成器

时间:2018-07-06 08:27:46

标签: docker packer

我的打包程序模板中有多个构建器部分,默认情况下,这将同时在云提供程序上构建两个构建器。

但是,如果我只想在云上构建“ amazon-ebs”类型,并在本地使用“ docker”类型,则可以通过packer build -only=rails <path/to/template.yaml>完成。

有没有一种方法可以在模板中将默认构建器设置为“ rails”,而无需使用打包程序CLI选项中的-only=rails

  "builders": [
    {
      "name": "rails"
      "type": "amazon-ebs",
      "region": "us-west-2",
      "source_ami": "{{user `rails_web_ami`}}",
      "instance_type": "m3.medium",
      "ami_name": "deploy-rails-web-{{user `sha`}}",
      "availability_zone": "us-west-2c",
      "ssh_username": "centos",
      "ssh_pty" : "true"
    },
    {
      "name": "docker-local",
      "type": "docker",
      "pull": "true",
      "image": "askb/centos7:latest",
      "run_command": [ "-d", "-t", "-i", "{{.Image}}", "/bin/bash"],
      "changes": [
        "WORKDIR /tmp",
        "EXPOSE 8080",
        "USER jenkins",
        "LABEL buildtime {{isotime \"20060102-150405.000\"}}"
      ],
      "commit": true
    }
  ],
  "provisioners": ...

1 个答案:

答案 0 :(得分:1)

否,您必须使用-only之类的东西,而不是“默认生成器”。