Skip to content

Instantly share code, notes, and snippets.

@ytimocin
Last active June 19, 2024 19:58
Show Gist options
  • Save ytimocin/f4f8b77cba71d2dcac3f4d1899099dd2 to your computer and use it in GitHub Desktop.
Save ytimocin/f4f8b77cba71d2dcac3f4d1899099dd2 to your computer and use it in GitHub Desktop.
1. **Install Dapr**
	a. Update necessary Helm charts and permissions
	b. Add Dapr details to **pkg/cli/helm/cluster.go**
	c. Add a DaprClient in pkg/cli/helm package.
	d. Dapr type should be added to the client.Client scheme (pkg/cli/kubernetes/kubernetes.go).
	e. Dapr should be added to the Runtime Client constructor in pkg/kubeutil/client.go.
	f. Add tests.
	g. Update Docs:
		i. troubleshooting-installation.md.
2. Workflow updates
	a. Add a step to install Dapr to all workflows because new versions of Radius will be requiring Dapr.
3. State Store changes for the Data Operations
	a. Create DaprStateStoreClient (or something similar) that will implement the StorageClient we have.
	b. Add unit tests.
	c. Update configuration files, especially storageProvider entries, in cmd and deploy/Chart/templates packages:
		i. cmd/applications-rp/radius-cloud.yaml
		ii. cmd/applications-rp/radius-dev.yaml
		iii. cmd/applications-rp/radius-self-hosted.yaml
		iv. cmd/applications-rp/ucp-self-hosted-dev.yaml
		v. deploy/Chart/templates/controller/configmaps.yaml
		vi. deploy/Chart/templates/rp/configmaps.yaml
		vii. deploy/Chart/templates/ucp/configmaps.yaml
	d. You should make sure that all the functional tests are passing inthe PR that updates the configuration files (see above)
	e. Update the development docs / How will the development continue for the devs?
	e. (Optional) Delete all other storage clients.
	f. Update docs:
		i. docs/contributing/contributing-code/contributing-code-control-plane/configSettings.md
4. Pub/Sub updates for the Async Queue
	a. Add a new Client for Dapr Pub/Sub operations in pkg/ucp/queue package like inmemory queue.
	b. We have apiserver queue client which is used for testing purposes (not 100% sure about this information), we can also remove this and just use Dapr for testing purposes.
	c. After adding the client (in item a) update all the configurations to point to the new implementation. In the PR, make sure that all the functional tests are passing. Also add/update necessary unit tests.
	d. Update necessary docs.
	e. Delete unnecessary implementation(s).
5. Update other related documentations
@ytimocin
Copy link
Author

What is the difference between the pub/sub and message queue? Radius is using a message queue, but pub/sub is a little bit different.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment