https://github.com/stuartleeks/virtual-kubelet-web-mock-csharp
Mock API for the Virtual Kubelet web provider written in C#
https://github.com/stuartleeks/virtual-kubelet-web-mock-csharp
Last synced: 10 months ago
JSON representation
Mock API for the Virtual Kubelet web provider written in C#
- Host: GitHub
- URL: https://github.com/stuartleeks/virtual-kubelet-web-mock-csharp
- Owner: stuartleeks
- License: mit
- Created: 2018-08-24T06:49:21.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-12-09T09:06:03.000Z (over 7 years ago)
- Last Synced: 2025-05-15T11:13:40.146Z (about 1 year ago)
- Language: C#
- Homepage:
- Size: 551 KB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Virtual Kubelet Web Provider C# Mock Implementation
This project is a sample API implementation for the [Virtual Kubelet](https://github.com/virtual-kubelet/virtual-kubelet) [web provider](https://github.com/virtual-kubelet/virtual-kubelet/tree/master/providers/web) written in C# on .NET Core
This API simply stores the a list of the pods that it has been requested to create, marks them as started and serves up their status
```
+----------------+ +---------------------------+ +------------------------------+
| | | | HTTP | |
| Kubernetes | <-----> | Virtual Kubelet: Web | <------> | This sample/mock API |
| | | | | |
+----------------+ +---------------------------+ +------------------------------+
```
## Running the API via docker
To run the Mock API via docker run
```bash
docker run -p 5000:5000 stuartleeks/vk-web-mock
```
This will expose the API on http://localhost:5000.
## Running locally for development
To run the API locally, run `dotnet run` (or `dotnet watch run` to monitor for file changes and automatically restart the site)
## Connecting the API with Virtual Kubelet locally
To connect Virtual Kubelet to the API, set the `WEB_ENDPOINT_URL` environment variable to `http://localhost:5000/` (or whatever you have exposed the API as)
```bash
export WEB_ENDPOINT_URL=http://localhost:5000/
```
Then run `virtual-kubelet` with the `--provider web` switch. This will run Virtual Kubelet on your local machine. It will connect to Kubernetes based on the kubectl config, and connect to the API defined in the `WEB_ENDPOINT_URL` environment variable
## Visualising the API state
You can use `kubectl` commands to query running pods, but you can also run [Virtual Kubelet Web UI](https://github.com/stuartleeks/virtual-kubelet-web-ui) to connect to the API directly and show details of the running pods and their status.