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

docs: Add integrations/Packs doc for ngrok Kubernetes Ingress Controller #1612

Closed
wants to merge 8 commits into from

Conversation

joelhans
Copy link
Contributor

Describe the Change

This PR adds a new document for the ngrok Kubernetes Ingress Controller, which is available as a Pack for Palette. For context, I'm working with the ngrok team on improving the documentation where this Controller integrates with another product/platform, to improve the developer experience for anyone who wants to deploy it via Palette.

The Prerequisites and Usage includes some unique settings I found were necessary during my test deployments, and the Usage section showcases a basic deployment that works with the Pack's configuration, which you can still check out at https://handy-firm-aphid.ngrok-free.app/.

Review Changes

💻 Add Preview URL

🎫 Jira Ticket

@netlify
Copy link

netlify bot commented Sep 26, 2023

Deploy Preview for docs-spectrocloud failed.

Built without sensitive environment variables

Name Link
🔨 Latest commit f95745d
🔍 Latest deploy log https://app.netlify.com/sites/docs-spectrocloud/deploys/651cb5e9cf52d9000814a401

Copy link
Contributor

@karl-cardenas-coding karl-cardenas-coding left a comment

Choose a reason for hiding this comment

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

@joelhans Awesome start to this reference. I added some suggestions and guidance for how we can improve this content. If we make the suggested changes, then this will help address a lot of the common questions users will have.

docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
tags: ["packs", "ngrok", "network", "kubernetes"]
---

The ngrok [Ingress Controller for Kubernetes](https://github.com/ngrok/kubernetes-ingress-controller) is the official
Copy link
Contributor

Choose a reason for hiding this comment

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

@joelhans the word "official" raises a minor concern. Can we change this sentence so it's more apparent that it's ngrok's official ingress controller? Right now, it could potentially be perceived that this is our official ingress controller or the Kubernetes ecosystem's official controller.

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 changed this initial sentence to remove "official" entirely—your concern is completely understandable!

docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Show resolved Hide resolved
Comment on lines 128 to 136

Apply the `2048.yaml` manifest to your cluster in Palette.

```bash
kubectl apply -f 2048.yaml
```

Access your 2048 demo app by navigating to the your `NGROK_DOMAIN`, e.g. `https://one-two-three.ngrok-free.app`. ngrok's
edge and your Ingress Controller will route traffic to your app from any device or external network.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Apply the `2048.yaml` manifest to your cluster in Palette.
```bash
kubectl apply -f 2048.yaml
```
Access your 2048 demo app by navigating to the your `NGROK_DOMAIN`, e.g. `https://one-two-three.ngrok-free.app`. ngrok's
edge and your Ingress Controller will route traffic to your app from any device or external network.

We don't need these steps, because this is not intended to be a tutorial. You can link to your actual tutorial if the user wants to learn more through a hands-on example. The important thing here is for the user to understand that they need to add the pack to the cluster profile, configure the pack YAML, and then for their application, they need to create a ingress service definition.

The question I would ask as a newer users is. How do I create the ingress service for my application, assuming the pack is in the cluster profile. That's the piece we are missing. And for that, the answer is to create a manifest layer.

Like this:

CleanShot.2023-09-27.at.07.47.31.mp4

This is really want the usage section should be about.

docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
@joelhans
Copy link
Contributor Author

Hi @karl-cardenas-coding! Thanks for the comprehensive feedback, which I've addressed in the latest commits and a few comments above.

Your video in particular was quite helpful, as I hadn't even realized you could create manifest layers for defining ingress or apps—I was doing so with kubectl, hence that step in the original draft. Hopefully my changes to the Usage section make it more immediately understandable to a new Palette user.

I'll keep an eye out for any follow-on feedback!

Copy link
Contributor

@karl-cardenas-coding karl-cardenas-coding left a comment

Choose a reason for hiding this comment

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

@joelhans Awesome changes Joel. I provided some minor suggestion for minor clean-up. Once these are fixed, let me know so I can generate a preview and get it merged :)

docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
docs/docs-content/integrations/ngrok.md Outdated Show resolved Hide resolved
@joelhans
Copy link
Contributor Author

joelhans commented Oct 3, 2023

@karl-cardenas-coding Added the rest of your suggestions and pushed them here—should be ready for your preview! Thanks again for the feedback.

@karl-cardenas-coding
Copy link
Contributor

@joelhans I'm gonna close this PR. PR #1640 carries over your commits and gives us the ability to create a preview URL 😄
I also added the ngrok logo so that it's displayed in the Pack lists.

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.

2 participants