* migrating CircleCI jobs to GitHub Actions
* using container matrix instead
* prevent entire workflow from stopping if one go version job fails
* updating github ci to use setup-go
* updating changelog
* Rework proto generation
The changes here are:
- Fix the default goal (using "default" target is not doing it).
- Bail out with a useful message if proto submodule is not checked
out.
- Replace the use of docker image with downloading the protoc binary
and building the gogofast plugin ourselves. This gives us a greater
control over the invocation of protoc.
- Use rsync to copy the generated code, instead of pax. Pax did not
work for me (it was complaining about the unknown -0 flag).
The control over the protoc invocation will be useful later, when we
will want to generate a code with data structures in one place and the
collector code elsewhere. The collector code may or may not depend on
gRPC, but data structures have no need for it. This split will happen
when we move the gRPC code out of the OTLP exporter module into a
submodule.
Getting rid of docker has the upside that the generated files do not
belong to root, so there is no hassle of changing the ownership of the
files, and it is not requires to use sudo for the `clean` target. And
not using docker is faster.
The downside of this work is that it depends on more tools: rsync,
unzip and wget. I can only hope that macOS users have those tools too,
and that those tools are invoked the same.
* Update protogen workflow
Add check for github-actions.
Add missing examples and SDK go.mod
Remove redundant comments.
Change check to be weekly on Sunday to reduce load and churn.
Sort alphanumerically.
Add check to Makefile to ensure if there is a `go.mod` file there is a dependabot entry for that directory.
* Export coverage report to codecov
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
* Use orb and individual coverage files per module
* Run go cover inside module directory to account for local rewrites
Still try to upload using a single file, since orb docs seem to
indicate if you have more than one file, you're going to need to run
the orb multiple times.
* Use correct filename
* Don't do anything silly like appending a file to itself
* Handle subtle differences between FreeBSD and Linux
* Ignore opentelemetry-proto-gen files in exporters/otlp/internal
* Does codecov orb leave current directory in a bad state?
* Copy instead of move
* Ignore generated protobuf code in jaeger exporter module
Co-authored-by: Evan Torrie <evantorrie@users.noreply.github.com>
Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
* Move proto to OTLP exporter
* Update OTLP exporter import of proto
* Use gogo protobuf
To stop using the deprecated github.com/golang/protobuf and match what
the collector is doing, switch to generating OTLP with the
github.com/gogo/protobuf/proto instead of
github.com/golang/protobuf/proto.
* Clean dependencies
Remove all protobuf dependencies from otel package and all of its
dependencies.
* Update CHANGELOG
* Clean OTLP exporter go mod
Remove submodule beforehand to avoid unneeded direct dependencies.
* Use default ref for GitHub workflow
* Update path that triggers proto gen action
* Correct license-check exclusion for OTLP
* Update commented location of the OTLP and code
* Make opentracing bridge into own Go module
* Update dependabot config
* Clean dependencies of project
Now the bridge is a module, clean all upstream modules that no longer
implicitly depend on it.
* Update Changelog
* go mod tidy
* Make the stdout exporter its own package
Follow the pattern of the other exporters.
* Update dependabot with stdout exporter
* Add replace directives for stdout exporter
* Remove outdated example test from metric SDK
* go mod tidy
* Update othttp example test
Remove unused stdout exporter.
* Remove tests in API that depend on stdout exporter
The global package does not need to be validated with the SDK. A more
properly constructed end-to-end integration test should be built if this
is actually needed.
* Add replace clause for otel in stdout go.mod
* Add protogen workflow
* Move out protobuf generation to Makefile.proto
* Include in Changelog
* Update Makefile.proto
Move file-local mode variable to line by itself.
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
Transitive dependency changes sometimes do require a change to go.mod
files as well as go.sum. This is already live in the
opentelemetry-go-contrib repo, and this PR brings it here.