| # Copyright 2017-present Open Networking Foundation |
| # |
| # 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: resolve sudo timeout |
| become: yes |
| shell: "echo 127.0.1.1 $(cat /etc/hostname) >> /etc/hosts" |
| |
| - name: make interface config file |
| become: yes |
| template: |
| src=interface.cfg.j2 |
| dest="{{source_path}}/config/interface.cfg" owner=root group=root mode=755 |
| |
| - name: get date |
| shell: date +"%Y-%m-%d_%H-%M" |
| register: tmp_date |
| |
| - name: assign results into each variable |
| set_fact: |
| date: "{{ tmp_date.stdout }}" |
| |
| - name: make cp_config config file |
| become: yes |
| template: |
| src=cp_config.cfg.j2 |
| dest="{{source_path}}/config/cp_config.cfg" owner=root group=root mode=755 |
| |
| - name: change CPU hexacode in run.sh file |
| become: yes |
| template: |
| src=run.sh.j2 |
| dest="{{source_path}}/cp/run.sh" owner=root group=root mode=755 |
| |
| - name: set hugepage parameter |
| become: yes |
| shell: "echo vm.nr_hugepages=512 >> /etc/sysctl.conf" |
| |
| - name: adjust changed hugepage parameter |
| become: yes |
| shell: "sysctl -p" |
| |
| - name: make run with log file |
| become: yes |
| template: |
| src=run_with_log.sh.j2 |
| dest="{{source_path}}/cp/run_with_log.sh" owner=root group=root mode=755 |
| |
| # Must wait until vSPGW-U successfully runs ngic dp software |
| # Must insert codes to wait until above |
| # Following codes will be uncommented when vSPGWU playbook is completed |
| #- name: wait until vSPGW-U runs successfully |
| # wait_for: |
| # timeout: 1800 |
| # path: "{{ source_path }}/cp/finish_vspgwu_flag" |
| # msg: Timeout to wait that vSPGWU runs successfully |
| |
| # This part should be run after user plane (data plane) runs in vSPGW-U |
| # If not, vSPGW-U and vSPGW-C will not be working well |
| - name: build and run vspgwc |
| become: yes |
| shell: "{{ item }}" |
| args: |
| chdir: "{{ source_path }}/cp" |
| environment: |
| NG_CORE: "{{ source_path }}" |
| RTE_SDK: "{{ source_path }}/dpdk" |
| RTE_TARGET: "x86_64-native-linuxapp-gcc" |
| HYPERSCANDIR: "/root/ngic/hyperscan-4.1.0" |
| with_items: |
| - make clean |
| - make |
| - ./run_with_log.sh |
| |
| - name: write flag |
| become: yes |
| shell: "echo 1 > {{source_path}}/cp/finish_flag" |