summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAustin S. Hemmelgarn <austin@netdata.cloud>2024-02-26 09:10:14 -0500
committerGitHub <noreply@github.com>2024-02-26 09:10:14 -0500
commit4b7d920b44302adcc7c733bcea3bc5cf8fc3c63f (patch)
treeba4d8fbee47cc6b7f1cc18f43ee5cc1bdfd5a594
parent0e7cde465cc456dd5a35ce7aba5b2e00631bca62 (diff)
Integrate Go plugin with build system. (#17005)
* Integrate Go plugin with build system. * Fix Debian packaging rules. * Add FreeBSD support to Go toolchain handling. * Add Go ldflags handling. * Fix version detection when GCCGO is used. * Fix Go ldflags handling. * Correctly fix Go toolchain version detection. * Properly mark Go as a required dependency in CMake. * Disable VCS stamping as it does not work correctly on some platforms. * Autodetect minimum required Go version from go.mod files. This allows us to avoid needing to update the CMakeLists.txt file when the required version changes in a Go component’s go.mod file. * Prefix GoTools module name with Netdata to ensure we get our local module. * Update integrations code to use new Go plugin location. * Remove old go packaging files. * keep old logic for initial cleanup that is working * Re-sync Go plugin sources. * Fix search order for finding Go toolchain. * update module name * fix /usr/local/go overwrite condition --------- Co-authored-by: Fotis Voutsas <fotis@netdata.cloud> Co-authored-by: ilyam8 <ilya@netdata.cloud>
-rw-r--r--.github/workflows/generate-integrations.yml13
-rw-r--r--CMakeLists.txt58
-rw-r--r--contrib/debian/control1
-rwxr-xr-xcontrib/debian/rules21
-rw-r--r--integrations/gen_docs_integrations.py34
-rwxr-xr-xintegrations/gen_integrations.py9
-rwxr-xr-xnetdata-installer.sh202
-rw-r--r--netdata.spec.in159
-rw-r--r--packaging/check-for-go-toolchain.sh110
-rw-r--r--packaging/cmake/Modules/FindGo.cmake39
-rw-r--r--packaging/cmake/Modules/NetdataGoTools.cmake85
-rw-r--r--packaging/go.d.checksums20
-rw-r--r--packaging/go.d.version1
-rw-r--r--packaging/installer/functions.sh6
-rwxr-xr-xpackaging/utils/coverity-scan.sh1
-rw-r--r--src/go/collectors/go.d.plugin/Dockerfile.dev2
-rw-r--r--src/go/collectors/go.d.plugin/Makefile4
-rw-r--r--src/go/collectors/go.d.plugin/README.md2
-rw-r--r--src/go/collectors/go.d.plugin/agent/agent.go24
-rw-r--r--src/go/collectors/go.d.plugin/agent/agent_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/confgroup/group.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/confgroup/group_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/cache.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/config.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dummy/config.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dummy/discovery.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dummy/discovery_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dyncfg/config.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dyncfg/dyncfg.go8
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dyncfg/dyncfg_test.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/dyncfg/ext.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/config.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/discovery.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/parse.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/parse_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/read.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/read_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/sim_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/watch.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/file/watch_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/manager.go8
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/manager_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/hostsocket/net.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/hostsocket/net_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/hostsocket/sim_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/kubernetes.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/kubernetes_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/pod.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/pod_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/service.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/service_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/kubernetes/sim_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/accumulator.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/classify.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/classify_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/compose.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/compose_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/config.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/pipeline.go10
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/pipeline_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/selector.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/selector_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/pipeline/sim_test.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/sd.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/sd_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sd/sim_test.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/discovery/sim_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/executable/executable.go42
-rw-r--r--src/go/collectors/go.d.plugin/agent/executable/name.go22
-rw-r--r--src/go/collectors/go.d.plugin/agent/filestatus/manager.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/filestatus/manager_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/filestatus/store.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/filestatus/store_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/functions/manager.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/cache.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/di.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/manager.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/manager_test.go6
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/noop.go4
-rw-r--r--src/go/collectors/go.d.plugin/agent/jobmgr/run.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/module/job.go8
-rw-r--r--src/go/collectors/go.d.plugin/agent/module/module.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/setup.go14
-rw-r--r--src/go/collectors/go.d.plugin/agent/setup_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/agent/vnodes/vnodes.go2
-rw-r--r--src/go/collectors/go.d.plugin/cmd/godplugin/main.go23
-rw-r--r--src/go/collectors/go.d.plugin/examples/simple/main.go10
-rw-r--r--src/go/collectors/go.d.plugin/go.mod6
-rw-r--r--src/go/collectors/go.d.plugin/go.sum8
-rwxr-xr-xsrc/go/collectors/go.d.plugin/hack/go-build.sh2
-rw-r--r--src/go/collectors/go.d.plugin/logger/logger.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/activemq/activemq.go6
-rw-r--r--src/go/collectors/go.d.plugin/modules/activemq/activemq_test.go4
-rw-r--r--src/go/collectors/go.d.plugin/modules/activemq/apiclient.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/activemq/charts.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/activemq/integrations/activemq.md4
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/apache.go4
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/apache_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/charts.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/collect.go4
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/init.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/integrations/apache.md4
-rw-r--r--src/go/collectors/go.d.plugin/modules/apache/integrations/httpd.md4
-rw-r--r--src/go/collectors/go.d.plugin/modules/bind/bind.go6
-rw-r--r--src/go/collectors/go.d.plugin/modules/bind/charts.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/bind/json_client.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/bind/xml3_client.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/cassandra.go6
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/cassandra_test.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/charts.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/collect.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/init.go4
-rw-r--r--src/go/collectors/go.d.plugin/modules/cassandra/integrations/cassandra.md4
-rw-r--r--src/go/collectors/go.d.plugin/modules/chrony/charts.go2
-rw-r--r--src/go/collectors/go.d.plugin/modules/chrony/chrony.go4
-rw-r--r--