Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/artifacts-helper/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ Configures Codespace to authenticate with Azure Artifact feeds
| npmAlias | Create alias for npm | boolean | true |
| yarnAlias | Create alias for yarn | boolean | true |

## Customizations

### VS Code Extensions

- `ms-codespaces-tools.ado-codespaces-auth`

This installs [Azure Artifacts Credential Provider](https://github.com/microsoft/artifacts-credprovider)
and optionally configures an alias for `dotnet`, `nuget`, `npm`, and `yarn` that dynamically sets an authentication token
for pulling artifacts from a feed before running the command.
Expand Down
6 changes: 6 additions & 0 deletions src/docfx/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,12 @@ Installs docfx tools



## Customizations

### VS Code Extensions

- `yzhang.markdown-all-in-one`

This feature currently only supports installing the latest published version
of DocFX. If support for older versions are required please file an Issue or
send a pull request.
Expand Down
30 changes: 28 additions & 2 deletions src/external-repository/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Configures Codespace to work with an external Git repository

```json
"features": {
"ghcr.io/microsoft/codespace-features/external-repository:2": {}
"ghcr.io/microsoft/codespace-features/external-repository:3": {}
}
```

Expand All @@ -16,7 +16,7 @@ Configures Codespace to work with an external Git repository
| Options Id | Description | Type | Default Value |
|-----|-----|-----|-----|
| gitProvider | Git Provider | string | azuredevops |
| cloneUrl | Clone URL without username: https://dev.azure.com/{organization}/{project}/_git/{repository} | string | - |
| cloneUrl | Clone URL without username: https://dev.azure.com/{organization}/{project}/_git/{repository}. Separate multiple URLs with comma. | string | - |
| folder | Specify the workspace path in the devcontainer for the clone | string | /workspaces/external-repos |
| username | Username for clone (if required) | string | codespaces |
| cloneSecret | Name of the Codespaces repository secret that contains the token or password for clone. Example: ADO_PAT | string | - |
Expand All @@ -28,6 +28,12 @@ Configures Codespace to work with an external Git repository
| timeout | Timeout for the clone operation | string | 30m |
| telemetrySource | Configure source of Git commit telemetry | string | none |

## Customizations

### VS Code Extensions

- `ms-codespaces-tools.ado-codespaces-auth`

This feature standardizes and simplifies the proces of setting up a Codespace
to work with an external repository -- meaning a Git repository other than
the one that defines your Codespace. This is being primarily developed to
Expand Down Expand Up @@ -84,6 +90,26 @@ If a user configures a Codespaces User Secret named `ADO_SECRET` and assigns thi
Codespace, then the value of that secret will be used as a PAT for authentication. If the secret
is not defined by the user it will fallback to the browser login.

## Multiple Repository Support

As of version 3, you can clone multiple repositories by separating the URL's with a comma. In this
mode all of the repositories will be cloned to the folder. Each will get a local folder name from the
last part of the clone URL so this value has to be unique for each repository specified.

## AzDO Branch Support

When `external-git config` is executed it will check the branch name of the Codespaces bridge repository
and if it begins with "azdo/" then it will treat the rest of the branch name as an AzDO branch name
to checkout on the external repository. The idea here is that a utility could be created in AzDO that
would let you open a Pull Request in a Codespace. The process would create a new branch in the bridge
repository named "azdo/branch/name" and then create the Codespace on that branch name. When the Codespace
opens and clones the AzDO repository default branch it will then detect the need to fetch and checkout
the requested branch.

If a different process is desired for determining the branch name, then an environment variabled named
`AZDO_BRANCH` can be created with the name of the branch that should be checked out. When the `external-git config`
command runs it will also detect that this envvar is set and checkout that

## Usage Telemetry

If you are looking for ways to track usage of Codespaces within your team, we offer a mechanism
Expand Down