\* When specifying `placement-port`, the placement host address will become `localhost:<placement-port>`.
The following Dapr arguments can be specified only at the service level:
| Yaml Key | Dapr Argument
| ------------ | -------------
| app-id | app-id
| grpc-port | dapr-grpc-port
| http-port | dapr-http-port
| metrics-port | metrics-port
| profile-port | profile-port
In addition, the key `enabled` can be specified (with `true` or `false`) to
enable or disable the related service.
## Deploying the sample to Kubernetes
**:warning: The current Dapr dotnet-sdk release has an issue where its default settings don't work when deployed with mTLS enabled. This will be resolved as part of the upcoming 0.6.0 release. For now you can work around this by disabling mTLS as part of Dapr installation.**
@ -60,16 +60,9 @@ Configures the name of the application. This will appear in some Kubernetes labe
If the name name is not specified, then the lowercased directory name containing the `tye.yaml` file will be used as the default.
#### `registry` (string)
#### `registry` (`Registry`)
Allows storing the name of the container registry in configuration. This is used when building and deploying images for two purposes:
- Determining how to tag the images
- Determining where to push the images
The registry could be a DockerHub username (`exampleuser`) or the hostname of a container registry (`example.azurecr.io`).
If this is not specified in configuration, interactive deployments will prompt for it.
Allows storing the name of the container registry and optional credentials secret in configuration.
#### `namespace` (string)
@ -105,6 +98,33 @@ Specifies the list of services. Applications must have at least one service.
Indicates the solution file (.sln) or filter (.slnf) to use when building project-based services in watch mode. If omitted, those services will be built individually. Specifying the solution [filter] can help reduce repeated builds of shared libraries when in watch mode.
## Registry
Allows storing the name of the container registry in configuration. This is used when building and deploying images for two purposes:
- Determining how to tag the images
- Determining where to push the images
If this is not specified in configuration, interactive deployments will prompt for it.
### Registry Example
```yaml
registry:
name: example.azurecr.io
pullSecret: acr-secret
```
### Registry Properties
#### `name` (string) *required*
The `name` could be a DockerHub username (`exampleuser`) or the hostname of a container registry (`example.azurecr.io`).
#### `pullSecret` (string)
Specifies the optional secret, that Kubernetes should get the credentials from to pull the image from a private registry.
## Service
`Service` elements appear in a list within the `services` root property.
The above configures redis to the configuration string for the `redis` service injected by the `tye` host.
@ -87,7 +86,7 @@ We just showed how `tye` makes it easier to communicate between 2 applications r
image: redis
bindings:
- port: 6379
connectionString: "${host}:${port}"
connectionString: "${host}:${port}"
- name: redis-cli
image: redis
args: "redis-cli -h redis MONITOR"
@ -97,9 +96,7 @@ We just showed how `tye` makes it easier to communicate between 2 applications r
> :bulb: The `"${host}:${port}"` format in the `connectionString` property will substitute the values of the host and port number to produce a connection string that can be used with StackExchange.Redis.
5. Run the `tye` command line in the solution root
> :bulb: Make sure your command-line is in the `microservice/` directory. One of the previous steps had you change directories to edit a specific project.
5. Run the `tye run` command
```
tye run
@ -186,3 +183,10 @@ We just showed how `tye` makes it easier to communicate between 2 applications r
4. Clean-up
At this point, you may want to undeploy the application by running `tye undeploy`.
Also clean up the Redis deployment and service by running
Write-Host" -warnAsError <value> Sets warnaserror msbuild parameter ('true' or 'false')"
Write-Host" -msbuildEngine <value> Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
Write-Host" -excludePrereleaseVS Set to exclude build engines in prerelease versions of Visual Studio"
Write-Host" -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
Write-Host""
Write-Host"Command line arguments not listed above are passed thru to msbuild."
echo"CodeName - optional, Code name for Linux, can be: xenial(default), zesty, bionic, alpine, alpine3.13 or alpine3.14. If BuildArch is armel, LinuxCodeName is jessie(default) or tizen."
echo" for FreeBSD can be: freebsd12, freebsd13"
echo" for illumos can be: illumos."
echo" for illumos can be: illumos"
echo" for Haiku can be: haiku."
echo"lldbx.y - optional, LLDB version, can be: lldb3.9(default), lldb4.0, lldb5.0, lldb6.0 no-lldb. Ignored for alpine and FreeBSD"
echo"llvmx[.y] - optional, LLVM version for LLVM related packages."
echo"--skipunmount - optional, will skip the unmount of rootfs folder."
echo"--use-mirror - optional, use mirror URL to fetch resources, when available."
$jsonWinformsTemplateFiles=Get-ChildItem-Recurse-Path"$SourcesDirectory"|Where-Object{$_.FullName-Match"en\\strings\.json"}# current winforms pattern
$wxlFiles=Get-ChildItem-Recurse-Path"$SourcesDirectory"|Where-Object{$_.FullName-Match"\\.+\.wxl"-And-Not($_.Directory.Name-Match"\d{4}")}# localized files live in four digit lang ID directories; this excludes them
if(-not$wxlFiles){
$wxlEnFiles=Get-ChildItem-Recurse-Path"$SourcesDirectory"|Where-Object{$_.FullName-Match"\\1033\\.+\.wxl"}# pick up en files (1033 = en) specifically so we can copy them to use as the neutral xlf files
Write-Error"Unable to find binpath.txt in '$($ToolDirectory.FullName)' ($ToolName $ToolVersion); artifact is either installed incorrectly or is not a bootstrappable tool."
@ -111,9 +113,11 @@ try {
$ToolPath=Convert-Path-Path$BinPath
Write-Host"Adding $ToolName to the path ($ToolPath)..."
Write-PipelineTelemetryError -category "Build" -type "warning""Found clang version $majorVersion which is not supported on arm/armel architectures, falling back to use clang from PATH."
echo"Warning: Found clang version $majorVersion which is not supported on arm/armel architectures, falling back to use clang from PATH."
CC="$(command -v "$compiler")"
CXX="$(command -v "$cxxCompiler")"
else
Write-PipelineTelemetryError -category "Build""Found clang version $majorVersion which is not supported on arm/armel architectures, and there is no clang in PATH."
echo"Found clang version $majorVersion which is not supported on arm/armel architectures, and there is no clang in PATH."