From 0c81e49f835d340de36a8dafde94992c8c738939 Mon Sep 17 00:00:00 2001 From: Ricard Clau Date: Thu, 7 Jul 2016 01:02:10 +0100 Subject: [PATCH] Adding a functional test with an Ansible message very long --- provisioner/ansible/provisioner_test.go | 30 +++++++++++++++++++ .../test-fixtures/long-debug-message.yml | 8 +++++ 2 files changed, 38 insertions(+) create mode 100644 provisioner/ansible/test-fixtures/long-debug-message.yml diff --git a/provisioner/ansible/provisioner_test.go b/provisioner/ansible/provisioner_test.go index 1abbdf1a3..582c28907 100644 --- a/provisioner/ansible/provisioner_test.go +++ b/provisioner/ansible/provisioner_test.go @@ -1,6 +1,7 @@ package ansible import ( + "bytes" "crypto/rand" "fmt" "io" @@ -243,3 +244,32 @@ func TestProvisionerPrepare_LocalPort(t *testing.T) { t.Fatalf("err: %s", err) } } + +func TestAnsibleGetVersion(t *testing.T) { + if os.Getenv("PACKER_ACC") == "" { + t.Skip("This test is only run with PACKER_ACC=1 and it requires Ansible to be installed") + } + + var p Provisioner + p.config.Command = "ansible-playbook" + p.getVersion() +} + +func TestAnsibleLongMessages(t *testing.T) { + if os.Getenv("PACKER_ACC") == "" { + t.Skip("This test is only run with PACKER_ACC=1 and it requires Ansible to be installed") + } + + var p Provisioner + p.config.Command = "ansible-playbook" + p.config.PlaybookFile = "./test-fixtures/long-debug-message.yml" + p.Prepare() + + comm := &packer.MockCommunicator{} + ui := &packer.BasicUi{ + Reader: new(bytes.Buffer), + Writer: new(bytes.Buffer), + } + + p.Provision(ui, comm) +} diff --git a/provisioner/ansible/test-fixtures/long-debug-message.yml b/provisioner/ansible/test-fixtures/long-debug-message.yml new file mode 100644 index 000000000..cdd72e8b3 --- /dev/null +++ b/provisioner/ansible/test-fixtures/long-debug-message.yml @@ -0,0 +1,8 @@ +- name: Stub for Packer testing long Ansible messages + hosts: localhost + connection: local + + tasks: + - name: Very long Ansible output (>65535 chars) (Issue https://github.com/mitchellh/packer/issues/3268) + debug: + msg: "{{ lipsum(n=300, html=false) }}"