mirror of https://github.com/dapr/docs.git
101 lines
3.5 KiB
Markdown
101 lines
3.5 KiB
Markdown
---
|
|
type: docs
|
|
title: "Contributing with GitHub Codespaces"
|
|
linkTitle: "GitHub Codespaces"
|
|
weight: 60
|
|
description: "How to contribute to the Dapr project with GitHub Codespaces"
|
|
aliases:
|
|
- "/contributing/codespaces/"
|
|
- "/developing-applications/ides/codespaces/"
|
|
---
|
|
|
|
[GitHub Codespaces](https://github.com/features/codespaces) is the easiest way to get up and running for contributing to a Dapr repo. In as little as a single click, you can have an environment with all of the prerequisites ready to go in your browser.
|
|
|
|
## Features
|
|
|
|
- **Click and Run**: Get a dedicated and sandboxed environment with all of the required frameworks and packages ready to go.
|
|
- **Usage-based Billing**: Only pay for the time you spend developing in the Codespaces. Environments are spun down automatically when not in use.
|
|
- **Portable**: Run in your browser or in Visual Studio Code, or connect to it using SSH.
|
|
|
|
## Open a Dapr repo in a Codespace
|
|
|
|
To open a Dapr repository in a Codespace, select "Code" from the repo homepage and "Open with Codespaces":
|
|
|
|
<img src="/images/codespaces-create.png" alt="Screenshot of creating a Dapr Codespace" width="300">
|
|
|
|
If you haven't already forked the repo, creating the Codespace will also create a fork for you and use it inside the Codespace.
|
|
|
|
## Supported repos
|
|
|
|
- [dapr/dapr](https://github.com/dapr/dapr)
|
|
- [dapr/components-contrib](https://github.com/dapr/components-contrib)
|
|
- [dapr/cli](https://github.com/dapr/cli)
|
|
- [dapr/docs](https://github.com/dapr/docs)
|
|
- [dapr/python-sdk](https://github.com/dapr/python-sdk)
|
|
|
|
## Developing Dapr Components in a Codespace
|
|
|
|
Developing a new Dapr component requires working with both the [dapr/components-contrib](https://github.com/dapr/components-contrib) and [dapr/dapr](https://github.com/dapr/dapr) repos. It is recommended to place both folders inside the `/workspaces` directory, side-by-side.
|
|
|
|
### If you created a Codespace from `dapr/dapr`
|
|
|
|
If your Codespaces was started from the `dapr/dapr` repo or a fork of that, you will need to clone the `dapr/components-contrib` repository (or your fork of that) inside `/workspaces/components-contrib`.
|
|
|
|
First, make sure you've authenticated with the GitHub CLI:
|
|
|
|
```sh
|
|
# Run this command and follow the prompts
|
|
# Most users should accept the default choices
|
|
gh auth login
|
|
```
|
|
|
|
Clone the repo:
|
|
|
|
```sh
|
|
# If you want to use your fork of dapr/components-contrib, replace this with your fork (e.g. "yourusername/components-contrib")
|
|
# Make sure you've forked the repo before doing this
|
|
REPO=dapr/components-contrib
|
|
cd /workspaces
|
|
gh repo clone "$REPO" /workspaces/components-contrib
|
|
```
|
|
|
|
Then, add the folder to current workspace:
|
|
|
|
```sh
|
|
code -a /workspaces/components-contrib
|
|
```
|
|
|
|
### If you created a Codespace from `dapr/components-contrib`
|
|
|
|
If your Codespaces was started from the `dapr/components-contrib` repo or a fork of that, you will need to clone the `dapr/dapr` repository (or your fork of that) inside `/workspaces/dapr`.
|
|
|
|
First, make sure you've authenticated with the GitHub CLI:
|
|
|
|
```sh
|
|
# Run this command and follow the prompts
|
|
# Most users should accept the default choices
|
|
gh auth login
|
|
```
|
|
|
|
Clone the repo:
|
|
|
|
```sh
|
|
# If you want to use your fork of dapr/dapr, replace this with your fork (e.g. "yourusername/dapr")
|
|
# Make sure you've forked the repo before doing this
|
|
REPO=dapr/dapr
|
|
cd /workspaces
|
|
gh repo clone "$REPO" /workspaces/dapr
|
|
```
|
|
|
|
Then, add the folder to current workspace:
|
|
|
|
```sh
|
|
code -a /workspaces/dapr
|
|
```
|
|
|
|
|
|
## Related links
|
|
<!-- IGNORE_LINKS -->
|
|
- [GitHub documentation](https://docs.github.com/codespaces/overview)
|
|
<!-- END_IGNORE -->
|