Fixed compilation of latest samplevnf 13/43513/6
authorMaciej Skrocki <maciej.skrocki@intel.com>
Thu, 28 Sep 2017 21:13:39 +0000 (14:13 -0700)
committerMaciej Skrocki <maciej.skrocki@intel.com>
Thu, 5 Oct 2017 23:49:55 +0000 (16:49 -0700)
added download_civetweb and install_civetweb roles.

Change-Id: Id4f60cc07b3befc7edb3cfc38773fe1a73a44c1f
Signed-off-by: Maciej Skrocki <maciej.skrocki@intel.com>
ansible/roles/download_civetweb/defaults/main.yml [new file with mode: 0644]
ansible/roles/download_civetweb/tasks/main.yml [new file with mode: 0644]
ansible/roles/install_civetweb/defaults/main.yml [new file with mode: 0644]
ansible/roles/install_civetweb/tasks/main.yml [new file with mode: 0644]
ansible/roles/install_samplevnf/tasks/main.yml
ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml

diff --git a/ansible/roles/download_civetweb/defaults/main.yml b/ansible/roles/download_civetweb/defaults/main.yml
new file mode 100644 (file)
index 0000000..5efc9bb
--- /dev/null
@@ -0,0 +1,18 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+civetweb_url: https://sourceforge.net/projects/civetweb/files/1.9/CivetWeb_V1.9.zip
+civetweb_file: "{{ civetweb_url|basename }}"
+civetweb_dest: "{{ clone_dest }}/civetweb"
+civetweb_sha256s: "sha256:947a546bfccd733c79dff9565227fa74f4d17750650ff49312ef4b2d032fa8c8"
diff --git a/ansible/roles/download_civetweb/tasks/main.yml b/ansible/roles/download_civetweb/tasks/main.yml
new file mode 100644 (file)
index 0000000..03dd3cc
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- name: fetch civetweb
+  get_url:
+    url: "{{ civetweb_url }}"
+    dest: "{{ clone_dest }}/"
+    validate_certs: False
+    checksum: "{{ civetweb_sha256s }}"
+
+- name: unarchive civetweb
+  unarchive:
+    src: "{{ clone_dest }}/{{ civetweb_file }}"
+    dest: "{{ clone_dest }}/"
+    copy: no
+
+- file:
+    path: "{{ civetweb_dest }}"
+    state: absent
+
+- name: "move civetweb to {{ civetweb_dest }} path"
+  shell: "mv {{ clone_dest }}/civetweb-master {{ civetweb_dest }}"
+  args:
+    executable: /bin/bash
+
+- name: cleanup zip file to save space
+  file:
+      path: "{{ clone_dest }}/{{ civetweb_file }}"
+      state: absent
diff --git a/ansible/roles/install_civetweb/defaults/main.yml b/ansible/roles/install_civetweb/defaults/main.yml
new file mode 100644 (file)
index 0000000..2235fe1
--- /dev/null
@@ -0,0 +1,21 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+civetweb_dest: "{{ clone_dest }}/civetweb"
+civetweb_build_dependencies:
+  Debian:
+    - libjson0
+    - libjson0-dev
+    - libssl-dev
+  RedHat:
diff --git a/ansible/roles/install_civetweb/tasks/main.yml b/ansible/roles/install_civetweb/tasks/main.yml
new file mode 100644 (file)
index 0000000..67a910b
--- /dev/null
@@ -0,0 +1,22 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- name: Install extra build dependencies
+  action: "{{ ansible_pkg_mgr }} name={{ item }} state=present"
+  with_items: "{{ civetweb_build_dependencies.get(ansible_os_family, []) }}"
+
+- name: Build civetweb lib
+  make:
+   chdir: "{{ civetweb_dest }}"
+   target: lib
index 55c4da5..d2deb58 100644 (file)
@@ -22,7 +22,6 @@
   action: "{{ ansible_pkg_mgr }} name={{ item }} state=present"
   with_items: "{{ vnf_build_dependencies.get(vnf_name, {}).get(ansible_os_family, []) }}"
 
-
 - name: set build env vars
   set_fact:
       build_env_vars:
index 17a9d4c..cfebcc1 100644 (file)
@@ -29,6 +29,8 @@
     - install_dpdk
     - download_trex
     - install_trex
+    - download_civetweb
+    - install_civetweb
     - download_samplevnfs
     - role: install_samplevnf
       vnf_name: PROX
index fea5f3f..b060967 100644 (file)
@@ -38,6 +38,8 @@
     - install_dpdk
     - download_trex
     - install_trex
+    - download_civetweb
+    - install_civetweb
     - download_samplevnfs
     - role: install_samplevnf
       vnf_name: PROX