Merge "Add Gitlab-CI Configuration"
authorEmma Foley <efoley@redhat.com>
Fri, 18 Jun 2021 14:05:04 +0000 (14:05 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Fri, 18 Jun 2021 14:05:04 +0000 (14:05 +0000)
25 files changed:
docker/ansible/default.inv
docker/ansible/roles/config_files/tasks/snmp_agent.yml
docker/ansible/roles/config_files/templates/latest/snmp_agent.conf.j2 [moved from docker/ansible/roles/config_files/templates/master/snmp_agent.conf.j2 with 100% similarity]
docker/ansible/roles/run_collectd/vars/main.yml
docker/barometer-collectd-experimental/Dockerfile
docker/barometer-collectd-latest/Dockerfile
docker/barometer-collectd/Dockerfile
docs/development/requirements/01-intro.rst
docs/development/requirements/03-dpdk.rst
docs/index.rst
docs/release/configguide/postinstall.rst
docs/release/release-notes/index.rst
docs/release/userguide/collectd.ves.userguide.rst
docs/release/userguide/feature.userguide.rst
docs/release/userguide/index.rst
docs/release/userguide/installguide.docker.rst
docs/release/userguide/installguide.oneclick.rst
src/collectd/Makefile
src/collectd/collectd_apply_pull_request.sh [moved from docker/barometer-collectd-experimental/collectd_apply_pull_request.sh with 94% similarity]
src/collectd/collectd_sample_configs-experimental/README [moved from docker/barometer-collectd-experimental/experimental-configs/README with 100% similarity]
src/package-list.mk
systems/centos/7/build_base_machine.sh
systems/centos/8/build_base_machine.sh
systems/rhel/7/build_base_machine.sh
systems/ubuntu/16.04/build_base_machine.sh

index e254c26..d65e1c0 100644 (file)
@@ -13,8 +13,8 @@ localhost
 [collectd_hosts:vars]
 install_mcelog=true
 insert_ipmi_modules=true
-#to use master or experimental container set the collectd flavor below
-#possible values: stable|master|experimental
+#to use latest (collectd-main branch) or experimental (main + PRs) container
+#set the collectd flavor below. Possible values: stable|latest|experimental
 flavor=stable
 
 [influxdb_hosts]
index c72aee4..5e1ba97 100644 (file)
@@ -21,9 +21,9 @@
   tags:
     - snmp
 
-- name: enable snmp agent for master container
+- name: enable snmp agent for non-stable container
   template:
-    src: master/snmp_agent.conf.j2
+    src: latest/snmp_agent.conf.j2
     dest: "{{ config_file_dir }}/snmp_agent.conf"
   when: flavor|default('stable')|string != 'stable'
   tags:
index cebd0f4..ddfec14 100644 (file)
@@ -15,7 +15,8 @@
 
 default_flavor: "{{ flavor|default('stable')|string }}"
 flavor_image_name: "{{
-         'barometer-collectd-master' if (default_flavor == 'master') else
-         'barometer-collectd-experimental' if (default_flavor == 'experimental')
+         'barometer-collectd-latest' if (default_flavor == 'master' or default_flavor == 'latest') else
+         'barometer-collectd-experimental' if (default_flavor == 'experimental') else
+         'barometer-collectd-6' if (default_flavor == 'collectd-6')
          else 'barometer-collectd' }}"
 collectd_image_name: "{{ 'opnfv/' + flavor_image_name }}"
index 2cb2682..8622a63 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 #
 
 FROM centos:8
-RUN dnf update -y && \
-        dnf install -y which sudo git && \
-        dnf clean all && \
-        git config --global http.sslVerify false
 
-ENV DOCKER y
-ENV COLLECTD_FLAVOR experimental
+ARG COLLECTD_FLAVOR=experimental
 ARG COLLECTD_PULL_REQUESTS
-ENV WITH_DPDK y
+ARG COLLECTD_CONFIG_CMD_ARGS
+ARG COLLECTD_TAG
+ARG WITH_DPDK=n
+
+ENV DOCKER y
 ENV repos_dir /src
 
-WORKDIR ${repos_dir}
 RUN mkdir -p ${repos_dir}/barometer
 COPY . ${repos_dir}/barometer
-COPY docker/barometer-collectd-experimental/collectd_apply_pull_request.sh \
-     ${repos_dir}/barometer/src/collectd/
-
-# copying additional experimental configs on top of configs for 'main'
-# branch release
-COPY docker/barometer-collectd-experimental/experimental-configs/* \
-     ${repos_dir}/barometer/src/collectd/collectd_sample_configs-master/
 
 WORKDIR ${repos_dir}/barometer/systems
-RUN sh ./build_base_machine.sh && \
+RUN ./build_base_machine.sh && \
         dnf clean all && rm -rf /var/cache/dnf && \
         useradd -ms /bin/bash collectd_exec && \
         echo "collectd_exec ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
index 4c01c87..b3a7a64 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 #
 
 FROM centos:8
-RUN dnf update -y && \
-        dnf install -y which sudo git && \
-        dnf clean all && \
-        git config --global http.sslVerify false
 
+ARG COLLECTD_FLAVOR=latest
+ARG WITH_DPDK=y
 ENV DOCKER y
-ENV COLLECTD_FLAVOR latest
-ENV WITH_DPDK y
 ENV repos_dir /src
 
-WORKDIR ${repos_dir}
 RUN mkdir -p ${repos_dir}/barometer
 COPY . ${repos_dir}/barometer
 
index ad4a157..e263e97 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -15,7 +16,7 @@
 
 FROM centos:8
 RUN dnf update -y && \
-        dnf install -y which sudo git && \
+        dnf install -y which sudo git-core && \
         dnf clean all && \
         git config --global http.sslVerify false
 
index 70abc55..c34961a 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
 
 Problem Statement
 ------------------
@@ -16,7 +16,7 @@ useful information as possible off the platform so that faults and errors in
 the NFVI can be detected promptly and reported to the appropriate fault
 management entity.
 
-The OPNFV platform (NFVI) requires functionality to:
+The Anuket platform (NFVI) requires functionality to:
 
 * Create a low latency, high performance packet processing path (fast path)
   through the NFVI that VNFs can take advantage of;
index ad7c8c7..fa960f4 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
 
 DPDK Enhancements
 ==================
@@ -167,4 +167,4 @@ Through extending the dpdkstat plugin for collectd with KA functionality, and
 integrating the extended plugin with Monasca for high performing, resilient,
 and scalable fault detection.
 
-.. _L2 Forwarding Sample Application (in Real and Virtualized Environments): http://dpdk.org/doc/guides/sample_app_ug/l2_forward_real_virtual.html
+.. _L2 Forwarding Sample Application (in Real and Virtualized Environments): http://doc.dpdk.org/guides/sample_app_ug/l2_forward_real_virtual.html
index 8f80b55..e642491 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
 
 =========
 Barometer
@@ -77,6 +77,6 @@ Indices
 =======
 * :ref:`search`
 
-.. _Barometer: https://wiki.opnfv.org/display/fastpath
-.. _collectd: http://collectd.org/
+.. _Barometer: https://wiki.anuket.io/display/HOME/Barometer
+.. _collectd: https://collectd.org/
 
index d7347b1..7424cec 100644 (file)
@@ -6,6 +6,8 @@ Barometer post installation procedures
 ======================================
 This document describes briefly the methods of validating the Barometer installation.
 
+.. TODO: Update this to include reference to containers rather than an Openstack deployment.
+
 Automated post installation activities
 --------------------------------------
 The Barometer test-suite in Functest is called ``barometercollectd`` and is part of the ``Features``
index db8221a..9eb1348 100644 (file)
@@ -2,10 +2,10 @@
 
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
 
 ==================================================
-OPNFV Barometer Release Notes
+Anuket Barometer Release Notes
 ==================================================
 
 .. toctree::
index bbfd763..2d3760b 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Intel Corporation and others.
+.. (c) Anuket, Intel Corporation and others.
 .. _barometer-ves-userguide:
 
 ==========================
@@ -932,9 +932,9 @@ Limitations
    definition and the format is descibed in the document.
 
 
-.. _collectd: http://collectd.org/
+.. _collectd: https://collectd.org/
 .. _Kafka: https://kafka.apache.org/
-.. _`VES`: https://wiki.opnfv.org/display/fastpath/VES+plugin+updates
+.. _`VES`: https://wiki.anuket.io/display/HOME/VES+plugin+updates
 .. _`VES shema definition`: https://gerrit.onap.org/r/gitweb?p=demo.git;a=tree;f=vnfs/VES5.0/evel/evel-test-collector/docs/att_interface_definition;hb=refs/heads/master
 .. _`PyYAML documentation`: https://pyyaml.org/wiki/PyYAMLDocumentation
 .. _`collectd plugin description`: https://github.com/collectd/collectd/blob/main/src/collectd.conf.pod
index 50d59cf..c7cece4 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
 
 ===================================
 OPNFV Barometer User Guide
@@ -182,7 +182,7 @@ Repo: https://github.com/collectd/collectd
 
 Branch: main
 
-Dependencies: DPDK (http://dpdk.org/)
+Dependencies: DPDK (https://dpdk.org/)
 
 .. note:: DPDK statistics plugin requires DPDK version 16.04 or later.
 
@@ -299,7 +299,7 @@ To fully enable ASLR:
     and only when all implications of this change have been understood.
 
 For more information on multi-process support, please see:
-http://dpdk.org/doc/guides/prog_guide/multi_proc_support.html
+https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html
 
 **DPDK stats plugin limitations:**
 
@@ -321,7 +321,7 @@ http://dpdk.org/doc/guides/prog_guide/multi_proc_support.html
 
 **DPDK telemetry plugin**
 
-Please refer https://wiki.opnfv.org/display/fastpath/DPDK+Telemetry+Plugin
+Please refer to https://wiki.anuket.io/display/HOME/DPDK+Telemetry+Plugin
 
 Hugepages Plugin
 ^^^^^^^^^^^^^^^^^
@@ -482,14 +482,14 @@ Branch: main
 
 Dependencies:
 
-  * PQoS/Intel RDT library https://github.com/01org/intel-cmt-cat.git
+  * PQoS/Intel RDT library https://github.com/intel/intel-cmt-cat
   * msr kernel module
 
 Building and installing PQoS/Intel RDT library:
 
 .. code:: bash
 
-    $ git clone https://github.com/01org/intel-cmt-cat.git
+    $ git clone https://github.com/intel/intel-cmt-cat
     $ cd intel-cmt-cat
     $ make
     $ make install PREFIX=/usr
@@ -638,7 +638,7 @@ collectd IPMI documentation can be used:
 IPMI documentation:
 
 - https://www.kernel.org/doc/Documentation/IPMI.txt
-- http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html
+- https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html
 
 Mcelog Plugin
 ^^^^^^^^^^^^^^
@@ -856,7 +856,7 @@ On Centos, install the dependencies and Open vSwitch:
     $ sudo yum install yajl-devel
 
 Steps to install Open vSwtich can be found at
-http://docs.openvswitch.org/en/latest/intro/install/fedora/
+https://docs.openvswitch.org/en/latest/intro/install/fedora/
 
 Start the Open vSwitch service:
 
@@ -1133,7 +1133,7 @@ metrics depends on running libvirt daemon version.
 .. note:: Please keep in mind that RDT metrics (part of *Performance monitoring
     events*) have to be supported by hardware. For more details on hardware support,
     please see:
-    https://github.com/01org/intel-cmt-cat
+    https://github.com/intel/intel-cmt-cat
 
     Additionally perf metrics **cannot** be collected if *Intel RDT* plugin is enabled.
 
@@ -1377,7 +1377,7 @@ Security
     * `CVE-2010-4336`_ fixed https://mailman.verplant.org/pipermail/collectd/2010-November/004277.html
         in Version 4.10.2.
 
-  * http://www.cvedetails.com/product/20310/Collectd-Collectd.html?vendor_id=11242
+  * https://www.cvedetails.com/product/20310/Collectd-Collectd.html?vendor_id=11242
 
 * It's recommended to only use collectd plugins from signed packages.
 
@@ -1394,8 +1394,8 @@ References
 .. _Barometer OPNFV Summit demo: https://prezi.com/kjv6o8ixs6se/software-fastpath-service-quality-metrics-demo/
 .. _gnocchi plugin: https://github.com/openstack/collectd-openstack-plugins/tree/stable/ocata/
 .. _aodh plugin: https://github.com/openstack/collectd-openstack-plugins/tree/stable/ocata/
-.. _collectd-openstack-plugins GSG: https://github.com/openstack/collectd-openstack-plugins/blob/master/doc/source/GSG.rst
-.. _grafana guide: https://wiki.opnfv.org/display/fastpath/Installing+and+configuring+InfluxDB+and+Grafana+to+display+metrics+with+collectd
+.. _collectd-openstack-plugins GSG: https://opendev.org/x/collectd-openstack-plugins/src/branch/master/doc/source/GSG.rst
+.. _grafana guide: https://wiki.anuket.io/display/HOME/Installing+and+configuring+InfluxDB+and+Grafana+to+display+metrics+with+collectd 
 .. _CVE-2017-7401: https://www.cvedetails.com/cve/CVE-2017-7401/
 .. _CVE-2016-6254: https://www.cvedetails.com/cve/CVE-2016-6254/
 .. _CVE-2010-4336: https://www.cvedetails.com/cve/CVE-2010-4336/
index 673d6c1..f7bdad7 100644 (file)
@@ -2,10 +2,10 @@
 
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) Intel and OPNFV
+.. (c) Intel, Anuket and others
 
 ===========================
-OPNFV Barometer User Guide
+Anuket Barometer User Guide
 ===========================
 
 .. The feature user guide should provide an OPNFV user with enough information to
index ca113c6..ceb0482 100644 (file)
@@ -1,11 +1,11 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
 .. _barometer-docker-userguide:
 
-====================================
-OPNFV Barometer Docker Install Guide
-====================================
+=====================================
+Anuket Barometer Docker Install Guide
+=====================================
 
 .. contents::
    :depth: 3
@@ -382,6 +382,44 @@ COLLECTD_PULL_REQUESTS should be a comma-delimited string of pull request IDs.
    proxy parameters should be passed only if system is behind an HTTP or HTTPS
    proxy server (same as for stable collectd container)
 
+Build collectd-6
+^^^^^^^^^^^^^^^^
+
+The barometer-collectd-experimental Dockerfile can be used to build
+collectd-6.0, which is currently under development. In order to do this, the
+``COLLECTD_FLAVOR`` build arg can be passed to the docker build command.
+The optional ``COLLECTD_PULL_REQUESTS`` arg can be passed as well, to test
+proposed patches to collectd.
+
+.. code:: bash
+
+   $ cd <BAROMETER_REPO_DIR>
+   $ sudo docker build -t opnfv/barometer-collectd-6 \
+     --build-arg COLLECTD_FLAVOR=collectd-6 \
+     --build-arg COLLECTD_PULL_REQUESTS=1234,5678 \
+     --network=host -f docker/barometer-collectd-experimental/Dockerfile .
+
+The instructions for running the collectd-6 container are the same as for the
+collectd-experimental container.
+
+There are a few useful build args that can be used to further customise the
+collectd-6 build::
+
+* COLLECTD_CONFIG_CMD_ARGS
+  For testing with new plugins for collectd-6, as un-ported plugins are
+  disabled by default.
+  This new option lets the ./configure command be run with extra args,
+  e.g. --enable-cpu --enable-<my-newly-ported-plugin>, which means that
+  plugin can be enabled for the PR that is being tested.
+
+* COLLECTD_TAG
+  This overrides the default tag selected by the flavors, and allows checking
+  out out an arbitrary branch (e.g. PR branch instead of using the
+  ``COLLECTD_PULL_REQUESTS`` arg, which rebases each PR on top of the
+  nominal branch.
+  To check out a PR, use the following args with the docker build command:
+  ``--build-arg COLLECTD_TAG=pull/<PR_ID>/head``
+
 Run the collectd stable docker image
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 .. code:: bash
@@ -417,7 +455,7 @@ Run the collectd stable docker image
 
    List of barometer-collectd dependencies on host for various plugins
    can be found at:
-   https://wiki.opnfv.org/display/fastpath/Barometer-collectd+host+dependencies
+   https://wiki.anuket.io/display/HOME/Barometer-collectd+host+dependencies
 
    The Resource Control file system (/sys/fs/resctrl) can be bound from host to
    container only if this directory exists on the host system. Otherwise omit
index bdb7a06..b73ab79 100644 (file)
@@ -1,6 +1,6 @@
 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
 .. http://creativecommons.org/licenses/by/4.0
-.. (c) <optionally add copywriters name>
+.. (c) Anuket and others
 .. _barometer-oneclick-userguide:
 
 =======================================
@@ -251,7 +251,7 @@ To make some changes when a container is running run:
 
 Connect to ``<host_ip>:3000`` with a browser and log into Grafana: admin/admin.
 For short introduction please see the:
-`Grafana guide <http://docs.grafana.org/guides/getting_started/>`_.
+`Grafana guide <https://grafana.com/docs/grafana/latest/guides/getting_started/>`_.
 
 The collectd configuration files can be accessed directly on target system in
 ``/opt/collectd/etc/collectd.conf.d``. It can be used for manual changes or
index 7eb312d..785614d 100644 (file)
@@ -1,7 +1,8 @@
 # makefile to manage collectd package
 #
 
-# Copyright 2016-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2016-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
-
 #
 # Contributors:
 #   Aihua Li, Huawei Technologies.
 #   Maryam Tahhan, Intel Corporation.
+#   Emma Foley, Red Hat.
 
 include ../mk/master.mk
 include ../package-list.mk
 
 WORK_DIR = collectd
-TAG_DONE_FLAG = $(WORK_DIR)/.$(COLLECTD_TAG).done
+# $COLLECTD_TAG can contain "/", which is being replaced with "-" here
+TAG_DONE_FLAG := $(WORK_DIR)/.$(subst /,-,$(COLLECTD_TAG)).done
 BUILD_CMD = ./build.sh
 CONFIG_CMD =
 CONFIG_CMD += ./configure
@@ -40,6 +42,183 @@ ifeq ($(XDG_CACHE_HOME_DIR),)
 XDG_CACHE_HOME_DIR = $(shell echo $$HOME)
 endif
 
+ifeq ($(COLLECTD_FLAVOR),collectd-6)
+CONFIG_CMD += --enable-cpu
+CONFIG_CMD += --enable-interface
+CONFIG_CMD += --enable-memory
+CONFIG_CMD += --enable-ping
+CONFIG_CMD += --enable-uptime
+
+CONFIG_CMD += --disable-aggregation
+CONFIG_CMD += --disable-amqp
+CONFIG_CMD += --disable-amqp1
+#CONFIG_CMD += --disable-apache
+#CONFIG_CMD += --disable-apcups
+#CONFIG_CMD += --disable-apple_sensors
+#CONFIG_CMD += --disable-aquaero
+CONFIG_CMD += --disable-barometer
+#CONFIG_CMD += --disable-battery
+#CONFIG_CMD += --disable-bind
+#CONFIG_CMD += --disable-buddyinfo
+#CONFIG_CMD += --disable-capabilities
+#CONFIG_CMD += --disable-ceph
+#CONFIG_CMD += --disable-cgroups
+#CONFIG_CMD += --disable-chrony
+CONFIG_CMD += --disable-check_uptime
+#CONFIG_CMD += --disable-connectivity
+#CONFIG_CMD += --disable-conntrack
+#CONFIG_CMD += --disable-contextswitch
+#CONFIG_CMD += --disable-cpufreq
+#CONFIG_CMD += --disable-cpusleep
+CONFIG_CMD += --disable-csv
+#CONFIG_CMD += --disable-curl
+#CONFIG_CMD += --disable-curl_json
+CONFIG_CMD += --disable-curl_xml
+#CONFIG_CMD += --disable-dbi
+#CONFIG_CMD += --disable-dcpmm
+#CONFIG_CMD += --disable-df
+#CONFIG_CMD += --disable-disk
+#CONFIG_CMD += --disable-dns
+#CONFIG_CMD += --disable-dpdkevents
+#CONFIG_CMD += --disable-dpdkstat
+#CONFIG_CMD += --disable-dpdk_telemetry
+#CONFIG_CMD += --disable-drbd
+#CONFIG_CMD += --disable-email
+#CONFIG_CMD += --disable-entropy
+#CONFIG_CMD += --disable-ethstat
+#CONFIG_CMD += --disable-exec
+#CONFIG_CMD += --disable-fhcount
+#CONFIG_CMD += --disable-filecount
+#CONFIG_CMD += --disable-fscache
+CONFIG_CMD += --disable-gmond
+#CONFIG_CMD += --disable-gps
+#CONFIG_CMD += --disable-gpu_nvidia
+CONFIG_CMD += --disable-grpc
+#CONFIG_CMD += --disable-hddtemp
+#CONFIG_CMD += --disable-hugepages
+#CONFIG_CMD += --disable-infiniband
+#CONFIG_CMD += --disable-intel_pmu
+#CONFIG_CMD += --disable-intel_rdt
+#CONFIG_CMD += --disable-ipc
+#CONFIG_CMD += --disable-ipmi
+#CONFIG_CMD += --disable-iptables
+#CONFIG_CMD += --disable-ipstats
+#CONFIG_CMD += --disable-ipvs
+#CONFIG_CMD += --disable-irq
+CONFIG_CMD += --disable-java
+#CONFIG_CMD += --disable-load
+#CONFIG_CMD += --disable-log_logstash
+#CONFIG_CMD += --disable-logfile
+#CONFIG_CMD += --disable-logparser
+#CONFIG_CMD += --disable-lpar
+CONFIG_CMD += --disable-lua
+#CONFIG_CMD += --disable-madwifi
+CONFIG_CMD += --disable-match_empty_counter
+CONFIG_CMD += --disable-match_hashed
+CONFIG_CMD += --disable-match_regex
+CONFIG_CMD += --disable-match_timediff
+CONFIG_CMD += --disable-match_value
+#CONFIG_CMD += --disable-mbmon
+#CONFIG_CMD += --disable-mcelog
+#CONFIG_CMD += --disable-md
+#CONFIG_CMD += --disable-mdevents
+#CONFIG_CMD += --disable-memcachec
+#CONFIG_CMD += --disable-memcached
+#CONFIG_CMD += --disable-mic
+CONFIG_CMD += --disable-modbus
+CONFIG_CMD += --disable-mqtt
+#CONFIG_CMD += --disable-multimeter
+#CONFIG_CMD += --disable-mysql
+#CONFIG_CMD += --disable-netapp
+#CONFIG_CMD += --disable-netlink
+#CONFIG_CMD += --disable-netstat_udp
+CONFIG_CMD += --disable-network
+#CONFIG_CMD += --disable-nfs
+#CONFIG_CMD += --disable-nginx
+#CONFIG_CMD += --disable-notify_desktop
+#CONFIG_CMD += --disable-notify_email
+#CONFIG_CMD += --disable-notify_nagios
+#CONFIG_CMD += --disable-ntpd
+#CONFIG_CMD += --disable-numa
+#CONFIG_CMD += --disable-nut
+#CONFIG_CMD += --disable-olsrd
+#CONFIG_CMD += --disable-onewire
+CONFIG_CMD += --disable-openldap
+#CONFIG_CMD += --disable-openvpn
+#CONFIG_CMD += --disable-oracle
+#CONFIG_CMD += --disable-ovs_events
+#CONFIG_CMD += --disable-ovs_stats
+#CONFIG_CMD += --disable-pcie_errors
+CONFIG_CMD += --disable-perl
+#CONFIG_CMD += --disable-pf
+#CONFIG_CMD += --disable-pinba
+CONFIG_CMD += --disable-postgresql
+#CONFIG_CMD += --disable-powerdns
+#CONFIG_CMD += --disable-processes
+#CONFIG_CMD += --disable-procevent
+#CONFIG_CMD += --disable-protocols
+CONFIG_CMD += --disable-python
+#CONFIG_CMD += --disable-redfish
+CONFIG_CMD += --disable-redis
+#CONFIG_CMD += --disable-routeros
+CONFIG_CMD += --disable-rrdcached
+CONFIG_CMD += --disable-rrdtool
+#CONFIG_CMD += --disable-sensors
+#CONFIG_CMD += --disable-serial
+#CONFIG_CMD += --disable-sigrok
+#CONFIG_CMD += --disable-slurm
+#CONFIG_CMD += --disable-smart
+CONFIG_CMD += --disable-snmp
+CONFIG_CMD += --disable-snmp_agent
+CONFIG_CMD += --disable-statsd
+#CONFIG_CMD += --disable-swap
+#CONFIG_CMD += --disable-synproxy
+#CONFIG_CMD += --disable-sysevent
+#CONFIG_CMD += --disable-syslog
+#CONFIG_CMD += --disable-table
+#CONFIG_CMD += --disable-tail
+#CONFIG_CMD += --disable-tail_csv
+#CONFIG_CMD += --disable-tape
+CONFIG_CMD += --disable-target_notification
+CONFIG_CMD += --disable-target_replace
+CONFIG_CMD += --disable-target_scale
+CONFIG_CMD += --disable-target_set
+CONFIG_CMD += --disable-target_v5upgrade
+#CONFIG_CMD += --disable-tcpconns
+#CONFIG_CMD += --disable-teamspeak2
+#CONFIG_CMD += --disable-ted
+#CONFIG_CMD += --disable-thermal
+CONFIG_CMD += --disable-threshold
+#CONFIG_CMD += --disable-tokyotyrant
+#CONFIG_CMD += --disable-turbostat
+#CONFIG_CMD += --disable-ubi
+#CONFIG_CMD += --disable-unixsock
+#CONFIG_CMD += --disable-users
+#CONFIG_CMD += --disable-uuid
+#CONFIG_CMD += --disable-varnish
+#CONFIG_CMD += --disable-virt
+#CONFIG_CMD += --disable-vmem
+#CONFIG_CMD += --disable-vserver
+#CONFIG_CMD += --disable-wireless
+CONFIG_CMD += --disable-write_graphite
+#CONFIG_CMD += --disable-write_http
+CONFIG_CMD += --disable-write_influxdb_udp
+CONFIG_CMD += --disable-write_kafka
+#CONFIG_CMD += --disable-write_log
+CONFIG_CMD += --disable-write_mongodb
+CONFIG_CMD += --disable-write_prometheus
+CONFIG_CMD += --disable-write_redis
+CONFIG_CMD += --disable-write_riemann
+CONFIG_CMD += --disable-write_sensu
+#CONFIG_CMD += --disable-write_stackdriver
+CONFIG_CMD += --disable-write_syslog
+CONFIG_CMD += --disable-write_tsdb
+#CONFIG_CMD += --disable-xencpu
+#CONFIG_CMD += --disable-zfs_arc
+#CONFIG_CMD += --disable-zone
+#CONFIG_CMD += --disable-zookeeper
+CONFIG_CMD += --enable-debug
+else
 CONFIG_CMD += --enable-syslog
 CONFIG_CMD += --enable-logfile
 CONFIG_CMD += --with-libpqos=$(LIBPQOS_DIR)
@@ -52,10 +231,14 @@ CONFIG_CMD += --enable-write_redis
 CONFIG_CMD += --disable-perl
 CONFIG_CMD += --with-librdkafka=/usr
 CONFIG_CMD += --disable-lvm
+endif
+
 ifdef WITH_DPDK
 CONFIG_CMD += LIBDPDK_CFLAGS='-mssse3'
 endif
 
+CONFIG_CMD += $(COLLECTD_CONFIG_CMD_ARGS)
+
 .PHONY: install force_install config force_make
 
 # install depends on make
@@ -65,6 +248,7 @@ all: force_make
        @echo "Finished making $(WORK_DIR)"
 
 config $(WORK_DIR)/Makefile: $(WORK_DIR)/configure
+       @echo "Configuring with: " $(CONFIG_CMD)
        $(AT)cd $(WORK_DIR); $(CONFIG_CMD)
        @echo "Configure done"
 
@@ -121,7 +305,7 @@ $(WORK_DIR):
 
 $(TAG_DONE_FLAG): $(WORK_DIR)
        @echo "Checking out collectd from tag: $(COLLECTD_TAG)"
-       $(AT)cd collectd; git checkout $(COLLECTD_TAG)
+       $(AT)cd collectd; git fetch origin $(COLLECTD_TAG); git checkout FETCH_HEAD
 ifneq ($(PATCH_FILE),)
        $(AT)cd $(WORK_DIR); patch -p1 < ../$(PATCH_FILE)
 endif
@@ -1,5 +1,6 @@
 #! /bin/bash
-# Copyright 2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2019-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
index 59e9a0a..b27cd57 100644 (file)
@@ -20,23 +20,35 @@ KAFKA_TAG ?= v1.5.2
 # collectd section
 COLLECTD_URL ?= https://github.com/collectd/collectd
 
-# there are 3 collectd flavors:
+# there are 4 collectd flavors:
 # -"stable" - based on stable collectd release
 # -"latest" - development version, based on main branch
 # -"experimental" - it is based on main branch as above and includes
 #                   set pull requests with experimental features
+# -"collectd-6" - based on the collectd 6.0 branch
 ifeq ($(COLLECTD_FLAVOR), stable)
-# using latest stable release
+# using the most recent stable release
        COLLECTD_TAG ?= collectd-5.12
        SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs
-else
-# 'latest' and 'experimental' collectd flavors are both using
-# code from main branch
+endif
+ifeq ($(COLLECTD_FLAVOR), latest)
+# collectd code from main branch
        COLLECTD_TAG ?= main
        SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
+endif
 ifeq ($(COLLECTD_FLAVOR), experimental)
 # 'experimental' flavor is using additional Pull Requests that
 # are put on top of main release
+       COLLECTD_TAG ?= main
+       SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
        COLLECTD_USE_EXPERIMENTAL_PR ?= y
 endif #end of experimental-branch handling
-endif
+ifeq ($(COLLECTD_FLAVOR), collectd-6)
+# 'collectd-6' flavor is using collectd-6.0 branch
+       COLLECTD_TAG ?= collectd-6.0
+       SAMPLE_CONF_VARIANT_NAME = collectd_sample_configs-latest
+       COLLECTD_USE_EXPERIMENTAL_PR ?= y
+endif #end of collectd-6.0-branch handling
+
+@echo "Using COLLECTD_TAG: $(COLLECTD_TAG)"
+@echo "Using SAMPLE_CONF_VARIANT_NAME: $(SAMPLE_CONF_VARIANT_NAME)"
index 41595d7..346160f 100755 (executable)
@@ -2,7 +2,8 @@
 #
 # Build a base machine for CentOS distro
 #
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -43,7 +44,8 @@ flex
 bison
 libtool
 pkg-config
-git
+git-core
+sudo
 rpm-build
 libcap-devel
 xfsprogs-devel
index 8486f3c..f345e67 100755 (executable)
@@ -2,7 +2,8 @@
 #
 # Build a base machine for CentOS distro
 #
-# Copyright 2017-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2017-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -21,6 +22,7 @@
 #   Aihua Li, Huawei Technologies.
 #   Martin Klozik, Intel Corporation.
 #   Maryam Tahhan, Intel Corporation.
+#   Emma Foley, Red Hat.
 # Synchronize package index files
 dnf -y update
 
@@ -51,6 +53,7 @@ bison
 libtool
 pkg-config
 git-core
+sudo
 rpm-build
 libcap-devel
 xfsprogs-devel
@@ -76,9 +79,12 @@ librdkafka-devel
 yajl-devel
 protobuf-c-devel
 rrdtool-devel
-dpdk-19.11.3
+dpdk-20.11
 qpid-proton-c-devel
 
+# ping collectd-6
+liboping-devel
+
 #install epel release required for git-review
 epel-release
 python3-libvirt
index 7bb9726..ac9de4f 100755 (executable)
@@ -2,7 +2,8 @@
 #
 # Build a base machine for RHEL distro
 #
-# Copyright 2016-2019 Intel Corporation and OPNFV. All rights reserved.
+# Copyright 2016-2021 Intel Corporation, Anuket and others.
+# All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -21,6 +22,7 @@
 #   Aihua Li, Huawei Technologies.
 #   Martin Klozik, Intel Corporation.
 #   Maryam Tahhan, Intel Corporation.
+#   Emma Foley, Red Hat.
 # Synchronize package index files
 yum -y update
 
@@ -43,7 +45,8 @@ flex
 bison
 libtool
 pkg-config
-git
+git-core
+sudo
 rpm-build
 libcap-devel
 xfsprogs-devel
index d74ec6d..d04d587 100755 (executable)
 #
 
 set -eux
-apt-get -y install build-essential dh-autoreconf fakeroot  devscripts dpkg-dev git wget
 
-apt-get -y install \
+export DEBIAN_FRONTEND=noninteractive
+
+apt-get -yq update
+apt-get -yq install build-essential dh-autoreconf fakeroot devscripts dpkg-dev git-core wget sudo
+
+apt-get -yq install \
     debhelper dpkg-dev po-debconf dh-systemd dh-strip-nondeterminism \
     bison flex autotools-dev libltdl-dev pkg-config \
     iptables-dev \