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

Cloud Foundry Buildpack for Collector #1404

Merged
merged 16 commits into from
Apr 19, 2022

Conversation

crobert-1
Copy link
Contributor

This is a deployment of the OpenTelemetry Collecter in the format of a
Cloud Foundry buildpack. This buildpack supplies the Collector to the
app it is used for. When the app is deployed it can run and configure
the Collector as a sidecar (as described in the README). This will allow
the Collector to observe the given app as well as the whole environment's
metrics.

@crobert-1 crobert-1 requested review from a team as code owners March 25, 2022 21:40
@crobert-1 crobert-1 requested a review from keitwb March 25, 2022 21:44
deployments/cloudfoundry/buildpack/README.md Outdated Show resolved Hide resolved
deployments/cloudfoundry/buildpack/README.md Outdated Show resolved Hide resolved
deployments/cloudfoundry/buildpack/bin/supply Outdated Show resolved Hide resolved
deployments/cloudfoundry/buildpack/bin/supply Outdated Show resolved Hide resolved
@jeffreyc-splunk
Copy link
Contributor

Maybe outside of the scope of this PR, but is there anything we can add for CI testing?

@crobert-1 crobert-1 marked this pull request as draft March 29, 2022 18:22
@crobert-1 crobert-1 marked this pull request as ready for review April 7, 2022 23:27
@crobert-1
Copy link
Contributor Author

@jeffreyc-splunk In regards to adding CI testing, I don't think the actual functionality can be automated at this point. The problem is that this requires a Tanzu Application Service (TAS) instance, which currently needs to be created by specific users through a VMware dashboard. I don't believe the current usage agreement would allow for spinning up instances for testing. I'll check to make sure my understanding is correct, but that's why I hadn't implemented anything at this point.

@jeffreyc-splunk
Copy link
Contributor

@jeffreyc-splunk In regards to adding CI testing, I don't think the actual functionality can be automated at this point. The problem is that this requires a Tanzu Application Service (TAS) instance, which currently needs to be created by specific users through a VMware dashboard. I don't believe the current usage agreement would allow for spinning up instances for testing. I'll check to make sure my understanding is correct, but that's why I hadn't implemented anything at this point.

Maybe at a minimum, would it be possible to add a job to just create the buildpack and ensure that the supply script runs correctly?

deployments/cloudfoundry/buildpack/README.md Outdated Show resolved Hide resolved
deployments/cloudfoundry/buildpack/README.md Outdated Show resolved Hide resolved
deployments/cloudfoundry/buildpack/README.md Outdated Show resolved Hide resolved
@crobert-1
Copy link
Contributor Author

@jeffreyc-splunk In regards to adding CI testing, I don't think the actual functionality can be automated at this point. The problem is that this requires a Tanzu Application Service (TAS) instance, which currently needs to be created by specific users through a VMware dashboard. I don't believe the current usage agreement would allow for spinning up instances for testing. I'll check to make sure my understanding is correct, but that's why I hadn't implemented anything at this point.

Maybe at a minimum, would it be possible to add a job to just create the buildpack and ensure that the supply script runs correctly?

That should be doable, I'll work on adding that.

@crobert-1 crobert-1 marked this pull request as draft April 13, 2022 22:19
@crobert-1 crobert-1 marked this pull request as ready for review April 13, 2022 22:49
@crobert-1
Copy link
Contributor Author

crobert-1 commented Apr 13, 2022

@jeffreyc-splunk I've added a basic CI test that just makes sure the supply script runs successfully. I wanted to also make sure the buildpack is built successfully, but unfortunately that also requires a Cloud Foundry instance to be running, so it isn't feasible.

I'm not very familiar with GitHub automation, so please let me know if there's anything to fix!

This is a deployment of the OpenTelemetry Collecter in the format of a
Cloud Foundry buildpack. This buildpack supplies the Collector to the
app it is used for. When the app is deployed it can run and configure
the Collector as a sidecar (as described in the README). This will allow
the Collector to observe the given app as well as the whole environment's
metrics.
- Remove SignalFX references in favor of Splunk
- Output wget errors and document wget dependency
- Add example error to troubleshooting
- Fix typos
- Remove unecessary variables
- Use binary file rather than tar.gz to install
- Use splunk distribution instead of upstream
- Update variable reference in readme to match script usage
- Move URL variables in README to required section for clarity
- Use Splunk distribution, not core
- Use latest version (unless specified otherwise), instead of
preset values
- Clean up variable names
- Add documentation references
- Add CI tests for buildpack. Just runs supply script and checks
if it's successful.
- Add Splunk to all Otel collector references
- Setup patch interpreter for SignalFx Smart Agent, this makes sure
signalfxreceiver will work properly.
Use absolute paths instead of relative. Also, mkdir instead of creating
files, which was incorrect.
- Add smart agent variable to README
- Add Splunk to OpenTelemetry references
- Update OS variable information
- Update dependencies in README
- Don't install smart agent patch interpreter if OS isn't
supported.
- Moved version checking so output messages would include OS
properly.
- `RLP_GATEWAY_ENDPOINT` - The URL of the RLP gateway that acts as the proxy for the firehose,
e.g. `https://log-stream.sys.<TAS environment name>.cf-app.com`
- `UAA_ENDPOINT` - The URL of UAA provider,
e.g. `https://uaa.sys.<TAS environment name>.cf-app.com`
Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Will do, thanks for pointing this out!

@crobert-1 crobert-1 merged commit c5d9954 into signalfx:main Apr 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants