Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial folder layout to allow further commits #3

Merged
merged 6 commits into from
Mar 1, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
93 changes: 93 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
##### Source code #####

## C++ and C source files
*.c text diff=cpp
*.h text diff=cpp
*.cpp text diff=cpp
maxgolov marked this conversation as resolved.
Show resolved Hide resolved
*.cc text diff=cpp
*.cxx text diff=cpp
*.hpp text diff=cpp

## Python scripts
*.py text eol=lf diff=python

## Perl scripts/libraries/modules
*.perl text eol=lf diff=perl
*.pl text eol=lf diff=perl
*.pm text eol=lf diff=perl

## Shell scripts
*.sh text eol=lf
*.bash text eol=lf

## Windows batch and PowerShell scripts
*.bat text eol=crlf
*.cmd text eol=crlf
*.ps1 text eol=crlf

##### Other file types #####

## Text files and documentation
*.txt text
README* text
INSTALL* text
LICENSE* text

## Non-text documentation
*.html text diff=html
*.pdf binary
*.rtf binary

## Doxygen documentation configuration files
Doxyfile text
*.dox text

## Image files
*.png binary
*.PNG binary
*.jpg binary
*.JPG binary
*.gif binary
*.GIF binary
*.bmp binary
*.BMP binary
*.ico binary
*.ICO binary
*.ppm binary
*.pgm binary
*.pbm binary
*.xpm -text diff -merge

## Vector graphics
*.svg -text diff -merge

## CMake files
CMakeLists.txt text eol=lf

## Makefiles
Makefile text
makefile text
GNUmakefile text
*.mk text

## Various IDE project files, etc
*.sln -text diff merge
*.vcxproj -text diff -merge
*.vcxproj.filters -text diff -merge
*.props -text diff -merge
*.pbxproj -text diff -merge

## Resource files and UI design descriptions
*.rc text eol=crlf

## Diff/patch files
*.diff text diff -merge
*.patch text diff -merge

## XML and configuration
*.xml text
*.cfg text

## Self-reference =)
.gitignore text
.gitattributes text
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Bug Report
about: Create a report to help us improve
labels: bug
---

**Describe your environment** Describe any aspect of your environment relevant to the problem, including your platform, build system, version numbers of installed dependencies, etc. If you're reporting a problem with a specific version of a library in this repo, please check whether the problem has been fixed on main branch.

**Steps to reproduce**
Describe exactly how to reproduce the error. Include a code sample if applicable.

**What is the expected behavior?**
What did you expect to see?

**What is the actual behavior?**
What did you see instead?

**Additional context**
Add any other context about the problem here.
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Feature Request
about: Suggest an idea for this project
labels: feature-request
---

Before opening a feature request against this repo, consider whether the feature should/could be implemented in the [other OpenTelemetry client libraries](https://github.com/open-telemetry/). If so, please [open an issue on opentelemetry-specification](https://github.com/open-telemetry/opentelemetry-specification/issues/new) first.

**Is your feature request related to a problem?**
If so, provide a concise description of the problem.

**Describe the solution you'd like**
What do you want to happen instead? What is the expected behavior?

**Describe alternatives you've considered**
Which alternative solutions or features have you considered?

**Additional context**
Add any other context about the feature request here.
45 changes: 45 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Ref. https://github.com/github/gitignore/blob/master/C%2B%2B.gitignore
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

# Bazel files
/bazel-*

# Mac
.DS_Store

# Output directories
/out
/out.*
# Indicator that the tools were deployed
.buildtools
62 changes: 62 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Contributing to opentelemetry-cpp-contrib

The OpenTelemetry C/C++ special interest group (SIG) meets regularly. See the
OpenTelemetry [community](https://github.com/open-telemetry/community#cc-sdk)
repo for information on this and other language SIGs.

See the [public meeting notes](https://docs.google.com/document/d/1i1E4-_y4uJ083lCutKGDhkpi3n4_e774SBLi9hPLocw/edit)
for a summary description of past meetings. To request edit access, join the
meeting or get in touch on [Gitter](https://gitter.im/open-telemetry/opentelemetry-cpp).

## Development

TBD

### Build and Run Code Examples

TBD

## Pull Requests

### How to Send Pull Requests

Everyone is welcome to contribute code to `opentelemetry-cpp-contrib` via GitHub pull
requests (PRs).

To create a new PR, fork the project in GitHub and clone the upstream repo:

```sh
git clone --recursive https://github.com/open-telemetry/opentelemetry-cpp-contrib.git
```

Add your fork as a remote:

```sh
git remote add fork https://github.com/YOUR_GITHUB_USERNAME/opentelemetry-cpp-contrib.git
```

Check out a new branch, make modifications and push the branch to your fork:

```sh
git checkout -b feature
# edit files
git commit
git push fork feature
```

Open a pull request against the main `opentelemetry-cpp-contrib` repo.

### How to Receive Comments

* If the PR is not ready for review, please put `[WIP]` in the title, tag it
as `work-in-progress`, or mark it as [`draft`](https://github.blog/2019-02-14-introducing-draft-pull-requests/).
* Make sure [CLA](https://identity.linuxfoundation.org/projects/cncf) is
signed and CI is clear.

### How to Get PRs Merged

This section needs to be written.

## Useful Resources

Please refer to main OpenTelemetry C++ SDK [contributing guidelines](https://github.com/open-telemetry/opentelemetry-cpp/blob/master/CONTRIBUTING.md) for more details.
29 changes: 28 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,28 @@
# opentelemetry-cpp-contrib
# OpenTelemetry C++ Contrib

This repository contains set of components extending functionality of the
OpenTelemetry SDK. Instrumentation libraries, exporters, and other components
can find their home here.

## Contributing

For information on how to contribute, consult [the contributing
guidelines](./CONTRIBUTING.md)

## Support

This repository accepts public contributions. Individual components are
developed by numerous contributors. Approvers and maintainers of the main
OpenTelemetry C++ SDK repository are not expected to directly contribute
to every component.

GitHub `CODEOWNER`S file is a simple way to automate away some of the pain
associated with the review system on github, by automatically assigning
reviewers to a pull request based on which files were modified. Individual
components are encouraged to propose changes to `CODEOWNER`S file following
the process [described here](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners).

Copy link
Member

@lalitb lalitb Jan 26, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably, we can bring more clarity ( in another PR ) on role of approvers and maintainers in PR review. I like the way it is done for opentelemetry-collector-contrib (https://github.com/open-telemetry/opentelemetry-collector-contrib):
News PRs will be automatically associated with the reviewers based on CODEOWNERS. PRs will be also automatically assigned to one of the maintainers or approvers for facilitation. The facilitator is responsible for helping the PR author and reviewers to make progress or if progress cannot be made for closing the PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do this in a follow-up PR

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we want to follow what folks are doing here https://github.com/open-telemetry/opentelemetry-dotnet-contrib#support.
I don't think we should assume the opentelemetry/cpp-maintainers and opentelemetry/cpp-approvers are the right group for this contrib repo.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed the notion of opentelemetry/cpp-maintainers and opentelemetry/cpp-approvers, and added a reference to the CODEOWNERS process instead.

This repository is great for community supported components. Vendor specific
code that requires a higher supportability guarantees needs to be placed in
vendor's repository. Packages in vendor repositories would be prefixed with the
vendor name to signify the difference from community-supported components.
3 changes: 3 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Documentation

This directory contains OpenTelemetry C++ contrib documentation.
3 changes: 3 additions & 0 deletions examples/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Examples

This directory contains OpenTelemetry C++ contrib examples.
3 changes: 3 additions & 0 deletions exporters/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Exporters

This directory contains OpenTelemetry C++ community-supported exporters.
4 changes: 4 additions & 0 deletions tools/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Tools

This directory contains OpenTelemetry C++ contrib tools.