├── samples
├── .gitignore
├── apps-with-core-angular
│ ├── MoviesApp
│ │ ├── src
│ │ │ ├── assets
│ │ │ │ └── .gitkeep
│ │ │ ├── app
│ │ │ │ ├── app.component.scss
│ │ │ │ ├── models
│ │ │ │ │ └── movie.ts
│ │ │ │ ├── app.component.html
│ │ │ │ ├── app-routing.module.ts
│ │ │ │ └── movies.service.ts
│ │ │ ├── styles.scss
│ │ │ ├── favicon.ico
│ │ │ ├── environments
│ │ │ │ └── environment.prod.ts
│ │ │ ├── index.html
│ │ │ └── main.ts
│ │ ├── .dockerignore
│ │ ├── Dockerfile
│ │ ├── e2e
│ │ │ ├── tsconfig.json
│ │ │ └── src
│ │ │ │ └── app.po.ts
│ │ ├── tsconfig.app.json
│ │ ├── .editorconfig
│ │ ├── tsconfig.spec.json
│ │ └── browserslist
│ ├── Movies.Shared
│ │ ├── Movies.Shared.csproj
│ │ └── Movie.cs
│ ├── .gitignore
│ ├── MoviesAPI
│ │ ├── appsettings.Development.json
│ │ ├── MoviesAPI.csproj
│ │ └── Controllers
│ │ │ └── MoviesController.cs
│ └── tye.yaml
├── dapr
│ ├── service-invocation
│ │ ├── UppercaseService
│ │ │ ├── .dockerignore
│ │ │ ├── package.json
│ │ │ ├── Dockerfile
│ │ │ └── uppercase.js
│ │ ├── SentenceApp
│ │ │ ├── wwwroot
│ │ │ │ ├── favicon.ico
│ │ │ │ └── css
│ │ │ │ │ └── open-iconic
│ │ │ │ │ └── font
│ │ │ │ │ └── fonts
│ │ │ │ │ ├── open-iconic.eot
│ │ │ │ │ ├── open-iconic.otf
│ │ │ │ │ ├── open-iconic.ttf
│ │ │ │ │ └── open-iconic.woff
│ │ │ ├── appsettings.json
│ │ │ ├── appsettings.Development.json
│ │ │ ├── Shared
│ │ │ │ └── MainLayout.razor
│ │ │ ├── _Imports.razor
│ │ │ ├── App.razor
│ │ │ └── SentenceApp.csproj
│ │ ├── Shared
│ │ │ ├── Shared.csproj
│ │ │ └── ConvertedResult.cs
│ │ ├── LowercaseService
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ └── LowercaseService.csproj
│ │ └── TitlecaseService
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ └── TitlecaseService.csproj
│ └── pub-sub
│ │ ├── store
│ │ ├── wwwroot
│ │ │ ├── favicon.ico
│ │ │ └── css
│ │ │ │ └── open-iconic
│ │ │ │ └── font
│ │ │ │ └── fonts
│ │ │ │ ├── open-iconic.eot
│ │ │ │ ├── open-iconic.otf
│ │ │ │ ├── open-iconic.ttf
│ │ │ │ └── open-iconic.woff
│ │ ├── appsettings.json
│ │ ├── appsettings.Development.json
│ │ ├── store.csproj
│ │ ├── Product.cs
│ │ ├── Shared
│ │ │ └── MainLayout.razor
│ │ ├── App.razor
│ │ ├── _Imports.razor
│ │ ├── Order.cs
│ │ └── Pages
│ │ │ └── Index.razor
│ │ ├── orders
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── orders.csproj
│ │ ├── products
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── products.csproj
│ │ └── components
│ │ ├── pubsub.yaml
│ │ └── statestore.yaml
├── azure-functions
│ ├── typescript
│ │ ├── tye.yaml
│ │ └── HttpExample
│ │ │ ├── local.settings.json
│ │ │ ├── tsconfig.json
│ │ │ ├── host.json
│ │ │ ├── HttpExample
│ │ │ └── function.json
│ │ │ └── package.json
│ ├── voting
│ │ ├── vote
│ │ │ ├── wwwroot
│ │ │ │ └── favicon.ico
│ │ │ ├── Pages
│ │ │ │ └── _ViewImports.cshtml
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ └── vote.csproj
│ │ ├── results
│ │ │ ├── wwwroot
│ │ │ │ ├── favicon.ico
│ │ │ │ └── css
│ │ │ │ │ └── open-iconic
│ │ │ │ │ └── font
│ │ │ │ │ └── fonts
│ │ │ │ │ ├── open-iconic.eot
│ │ │ │ │ ├── open-iconic.otf
│ │ │ │ │ ├── open-iconic.ttf
│ │ │ │ │ └── open-iconic.woff
│ │ │ ├── Shared
│ │ │ │ └── MainLayout.razor
│ │ │ ├── appsettings.json
│ │ │ ├── appsettings.Development.json
│ │ │ ├── Data
│ │ │ │ └── VotingResults.cs
│ │ │ ├── _Imports.razor
│ │ │ └── App.razor
│ │ ├── worker-function
│ │ │ ├── local.settings.json
│ │ │ ├── host.json
│ │ │ └── Startup.cs
│ │ └── tye.yaml
│ └── frontend-backend
│ │ ├── backend
│ │ ├── local.settings.json
│ │ └── host.json
│ │ ├── frontend
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── frontend.csproj
│ │ ├── tye.yaml
│ │ └── README.md
├── voting
│ ├── vote
│ │ ├── wwwroot
│ │ │ └── favicon.ico
│ │ ├── Pages
│ │ │ └── _ViewImports.cshtml
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── vote.csproj
│ ├── results
│ │ ├── wwwroot
│ │ │ ├── favicon.ico
│ │ │ └── css
│ │ │ │ └── open-iconic
│ │ │ │ └── font
│ │ │ │ └── fonts
│ │ │ │ ├── open-iconic.eot
│ │ │ │ ├── open-iconic.otf
│ │ │ │ ├── open-iconic.ttf
│ │ │ │ └── open-iconic.woff
│ │ ├── Shared
│ │ │ └── MainLayout.razor
│ │ ├── appsettings.json
│ │ ├── appsettings.Development.json
│ │ ├── Data
│ │ │ └── VotingResults.cs
│ │ ├── _Imports.razor
│ │ └── App.razor
│ └── worker
│ │ ├── appsettings.json
│ │ ├── appsettings.Development.json
│ │ ├── ResultsHub.cs
│ │ ├── Properties
│ │ └── launchSettings.json
│ │ └── VoteCount.cs
├── dockercompose
│ ├── vote
│ │ ├── wwwroot
│ │ │ └── favicon.ico
│ │ ├── Pages
│ │ │ └── _ViewImports.cshtml
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── vote.csproj
│ ├── results
│ │ ├── wwwroot
│ │ │ ├── favicon.ico
│ │ │ └── css
│ │ │ │ └── open-iconic
│ │ │ │ └── font
│ │ │ │ └── fonts
│ │ │ │ ├── open-iconic.eot
│ │ │ │ ├── open-iconic.otf
│ │ │ │ ├── open-iconic.ttf
│ │ │ │ └── open-iconic.woff
│ │ ├── Shared
│ │ │ └── MainLayout.razor
│ │ ├── appsettings.json
│ │ ├── appsettings.Development.json
│ │ ├── Data
│ │ │ └── VotingResults.cs
│ │ ├── _Imports.razor
│ │ └── App.razor
│ ├── worker
│ │ ├── appsettings.json
│ │ ├── appsettings.Development.json
│ │ ├── Properties
│ │ │ └── launchSettings.json
│ │ ├── ResultsHub.cs
│ │ └── VoteCount.cs
│ ├── docker-compose.yaml
│ └── ingress.yml
├── liveness-and-readiness
│ ├── webapi
│ │ ├── webapi.csproj
│ │ ├── appsettings.Development.json
│ │ └── appsettings.json
│ └── tye.yaml
├── nginx-ingress
│ ├── ApplicationA
│ │ ├── ApplicationA.csproj
│ │ ├── appsettings.Development.json
│ │ └── appsettings.json
│ ├── ApplicationB
│ │ ├── ApplicationB.csproj
│ │ ├── appsettings.Development.json
│ │ └── appsettings.json
│ └── tye.yaml
├── apps-with-ingress
│ ├── ApplicationA
│ │ ├── ApplicationA.csproj
│ │ ├── appsettings.Development.json
│ │ └── appsettings.json
│ └── ApplicationB
│ │ ├── ApplicationB.csproj
│ │ ├── appsettings.Development.json
│ │ └── appsettings.json
├── redis
│ └── tye.yaml
├── frontend-backend
│ ├── backend
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── backend.csproj
│ ├── frontend
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── frontend.csproj
│ └── tye.yaml
├── app-with-targetframeworks
│ ├── MultipleTargetFrameworks
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ └── MultipleTargetFrameworks.csproj
│ └── tye.yaml
└── mongo-sample
│ └── tye.yaml
├── test
├── UnitTests
│ └── testassets
│ │ ├── envfile_b.env
│ │ └── envfile_a.env
├── E2ETest
│ ├── testassets
│ │ ├── projects
│ │ │ ├── apps-with-ingress
│ │ │ │ ├── ApplicationC-UI
│ │ │ │ │ ├── wwwroot
│ │ │ │ │ │ └── index.html
│ │ │ │ │ ├── ApplicationC-UI.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── ApplicationA
│ │ │ │ │ ├── ApplicationA.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── ApplicationB
│ │ │ │ │ ├── ApplicationB.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── tye-ui.yaml
│ │ │ │ └── tye-ip_test.yaml
│ │ │ ├── web-app
│ │ │ │ ├── Pages
│ │ │ │ │ ├── _ViewStart.cshtml
│ │ │ │ │ ├── _ViewImports.cshtml
│ │ │ │ │ └── Index.cshtml
│ │ │ │ ├── wwwroot
│ │ │ │ │ └── favicon.ico
│ │ │ │ ├── web-app.csproj
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── tye.yaml
│ │ │ │ └── Program.cs
│ │ │ ├── multi-project
│ │ │ │ ├── frontend
│ │ │ │ │ ├── Pages
│ │ │ │ │ │ ├── _ViewStart.cshtml
│ │ │ │ │ │ ├── _ViewImports.cshtml
│ │ │ │ │ │ ├── Privacy.cshtml
│ │ │ │ │ │ ├── Shared
│ │ │ │ │ │ │ └── _ValidationScriptsPartial.cshtml
│ │ │ │ │ │ └── Index.cshtml
│ │ │ │ │ ├── wwwroot
│ │ │ │ │ │ ├── favicon.ico
│ │ │ │ │ │ └── js
│ │ │ │ │ │ │ └── site.js
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ ├── IOrderService.cs
│ │ │ │ │ └── frontend.csproj
│ │ │ │ ├── worker
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── Properties
│ │ │ │ │ │ └── launchSettings.json
│ │ │ │ ├── backend
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── IOrderService.cs
│ │ │ │ └── tye.yaml
│ │ │ ├── multirepo
│ │ │ │ ├── vote
│ │ │ │ │ ├── wwwroot
│ │ │ │ │ │ └── favicon.ico
│ │ │ │ │ ├── Pages
│ │ │ │ │ │ └── _ViewImports.cshtml
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── tye.yaml
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── vote.csproj
│ │ │ │ ├── results
│ │ │ │ │ ├── wwwroot
│ │ │ │ │ │ ├── favicon.ico
│ │ │ │ │ │ └── css
│ │ │ │ │ │ │ └── open-iconic
│ │ │ │ │ │ │ └── font
│ │ │ │ │ │ │ └── fonts
│ │ │ │ │ │ │ ├── open-iconic.eot
│ │ │ │ │ │ │ ├── open-iconic.otf
│ │ │ │ │ │ │ ├── open-iconic.ttf
│ │ │ │ │ │ │ └── open-iconic.woff
│ │ │ │ │ ├── tye.yaml
│ │ │ │ │ ├── Shared
│ │ │ │ │ │ └── MainLayout.razor
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── Data
│ │ │ │ │ │ └── VotingResults.cs
│ │ │ │ │ ├── _Imports.razor
│ │ │ │ │ └── App.razor
│ │ │ │ └── worker
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── Properties
│ │ │ │ │ └── launchSettings.json
│ │ │ │ │ ├── ResultsHub.cs
│ │ │ │ │ ├── VoteCount.cs
│ │ │ │ │ └── tye.yaml
│ │ │ ├── single-phase-dockerfile
│ │ │ │ ├── Dockerfile
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── single-phase-dockerfile.csproj
│ │ │ │ └── tye.yaml
│ │ │ ├── dapr
│ │ │ │ ├── dapr.csproj
│ │ │ │ ├── tye.yaml
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ └── appsettings.json
│ │ │ ├── single-phase-dockerfile-args
│ │ │ │ ├── Dockerfile
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── single-phase-dockerfile-args.csproj
│ │ │ │ └── tye.yaml
│ │ │ ├── single-phase-dockerfile-multi-args
│ │ │ │ ├── Dockerfile
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── single-phase-dockerfile-multi-args.csproj
│ │ │ │ └── tye.yaml
│ │ │ ├── project-types
│ │ │ │ ├── app
│ │ │ │ │ ├── app.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── class-library
│ │ │ │ │ └── class-library.csproj
│ │ │ │ └── test-project
│ │ │ │ │ └── UnitTest1.cs
│ │ │ ├── single-phase-dockerfile-args-duplicates
│ │ │ │ ├── Dockerfile
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── single-phase-dockerfile-args.csproj
│ │ │ │ └── tye.yaml
│ │ │ ├── health-checks
│ │ │ │ ├── api
│ │ │ │ │ ├── api.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── tye-none.yaml
│ │ │ │ ├── tye-liveness.yaml
│ │ │ │ └── tye-readiness.yaml
│ │ │ ├── generate-named-binding
│ │ │ │ ├── frontend
│ │ │ │ │ ├── frontend.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── generate-uri-dependency
│ │ │ │ ├── frontend
│ │ │ │ │ ├── frontend.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── nginx-ingress
│ │ │ │ ├── ApplicationA
│ │ │ │ │ ├── ApplicationA.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ ├── ApplicationB
│ │ │ │ │ ├── ApplicationB.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── azure-functions
│ │ │ │ ├── backend
│ │ │ │ │ ├── local.settings.json
│ │ │ │ │ └── host.json
│ │ │ │ ├── frontend
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── frontend.csproj
│ │ │ │ ├── tye.yaml
│ │ │ │ ├── tye-debug-configuration.yaml
│ │ │ │ └── tye-release-configuration.yaml
│ │ │ ├── generate-connectionstring-dependency
│ │ │ │ ├── frontend
│ │ │ │ │ ├── frontend.csproj
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── single-project
│ │ │ │ ├── tye.yaml
│ │ │ │ └── test-project
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── test-project.csproj
│ │ │ │ │ └── appsettings.json
│ │ │ ├── single-project-5.0
│ │ │ │ ├── tye.yaml
│ │ │ │ └── test-project
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── test-project.csproj
│ │ │ │ │ └── appsettings.json
│ │ │ ├── volume-test
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── volume-test.csproj
│ │ │ │ ├── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── dockerfile
│ │ │ │ ├── frontend
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── frontend.csproj
│ │ │ │ ├── backend
│ │ │ │ │ ├── app.js
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── Dockerfile
│ │ │ │ └── tye.yaml
│ │ │ ├── frontend-backend
│ │ │ │ ├── backend
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── backend.csproj
│ │ │ │ ├── frontend
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── frontend.csproj
│ │ │ │ ├── tye.yaml
│ │ │ │ ├── tye-wrong-projectpath.yaml
│ │ │ │ ├── tye-debug-configuration.yaml
│ │ │ │ └── tye-release-configuration.yaml
│ │ │ ├── multi-phase-dockerfile
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── multi-phase-dockerfile.csproj
│ │ │ │ └── tye.yaml
│ │ │ ├── Console.Normalization.svc.Name
│ │ │ │ ├── Console.Normalization.svc.Name.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── non-standard-dashboard-port
│ │ │ │ ├── test-project
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── test-project.csproj
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ ├── multi-targetframeworks
│ │ │ │ ├── multi-targetframeworks
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── appsettings.json
│ │ │ │ │ └── multi-targetframeworks.csproj
│ │ │ │ ├── tye-no-buildproperties.yaml
│ │ │ │ ├── tye-with-netcoreapp21.yaml
│ │ │ │ └── tye-with-netcoreapp31.yaml
│ │ │ ├── non-standard-dashboard-port-5.0
│ │ │ │ ├── test-project
│ │ │ │ │ ├── appsettings.Development.json
│ │ │ │ │ ├── test-project.csproj
│ │ │ │ │ └── appsettings.json
│ │ │ │ └── tye.yaml
│ │ │ └── Directory.Build.props
│ │ └── init
│ │ │ ├── project-types.yaml
│ │ │ ├── frontend-backend.yaml
│ │ │ ├── console-normalization-svc-name.yaml
│ │ │ └── multi-project.yaml
│ └── Properties
│ │ └── AssemblyInfo.cs
├── Directory.Build.props
└── Test.Infrastructure
│ ├── StringExtensions.cs
│ ├── xunit
│ ├── IEnvironmentVariable.cs
│ ├── ITestCondition.cs
│ ├── OperatingSystems.cs
│ ├── RuntimeFrameworks.cs
│ ├── ConditionalFactAttribute.cs
│ └── ConditionalTheoryAttribute.cs
│ ├── ITestCondition.cs
│ ├── Logging
│ └── BeginScopeContext.cs
│ └── ConditionalFactAttribute.cs
├── .gitattributes
├── docs
└── recipes
│ └── images
│ ├── actions_recipe_dash.png
│ └── nginx_ingress_action.png
├── eng
├── common
│ ├── dotnet-install.cmd
│ ├── CIBuild.cmd
│ ├── sdl
│ │ ├── packages.config
│ │ └── NuGet.config
│ ├── init-tools-native.cmd
│ ├── templates
│ │ ├── steps
│ │ │ ├── run-on-unix.yml
│ │ │ ├── run-on-windows.yml
│ │ │ ├── add-build-to-channel.yml
│ │ │ └── build-reason.yml
│ │ ├── variables
│ │ │ └── sdl-variables.yml
│ │ └── post-build
│ │ │ └── trigger-subscription.yml
│ ├── cross
│ │ ├── armel
│ │ │ ├── sources.list.jessie
│ │ │ └── tizen
│ │ │ │ └── tizen.patch
│ │ └── armv6
│ │ │ └── sources.list.buster
│ ├── internal
│ │ └── Directory.Build.props
│ ├── PSScriptAnalyzerSettings.psd1
│ └── cibuild.sh
├── Publishing.props
├── PoliCheckExclusions.xml
├── Versions.props
└── StagingRelease.md
├── src
├── Microsoft.Tye.Hosting
│ ├── wwwroot
│ │ ├── favicon.ico
│ │ ├── css
│ │ │ └── open-iconic
│ │ │ │ └── font
│ │ │ │ └── fonts
│ │ │ │ ├── open-iconic.eot
│ │ │ │ ├── open-iconic.otf
│ │ │ │ ├── open-iconic.ttf
│ │ │ │ └── open-iconic.woff
│ │ └── js
│ │ │ └── utilities.js
│ ├── Model
│ │ ├── RunInfo.cs
│ │ ├── V1
│ │ │ ├── V1DockerVolume.cs
│ │ │ ├── V1MetricMetadata.cs
│ │ │ ├── V1RunInfoType.cs
│ │ │ ├── V1ConfigurationSource.cs
│ │ │ ├── V1Metric.cs
│ │ │ ├── V1Application.cs
│ │ │ ├── V1ServiceMetrics.cs
│ │ │ └── V1ServiceStatus.cs
│ │ ├── ReplicaState.cs
│ │ ├── ServiceType.cs
│ │ ├── ReplicaBinding.cs
│ │ ├── ServiceStatus.cs
│ │ ├── IngressStatus.cs
│ │ └── ReplicaEvent.cs
│ ├── Dashboard
│ │ ├── App.razor
│ │ ├── _Imports.razor
│ │ └── Shared
│ │ │ └── MainLayout.razor
│ ├── Properties
│ │ └── launchSettings.json
│ ├── Watch
│ │ ├── IFileSet.cs
│ │ ├── IFileSetFactory.cs
│ │ └── Internal
│ │ │ └── FileWatcher
│ │ │ └── FileWatcherFactory.cs
│ └── IApplicationProcessor.cs
├── tye
│ └── Properties
│ │ └── launchSettings.json
├── tye-diag-agent
│ ├── Properties
│ │ └── launchSettings.json
│ ├── appsettings.Development.json
│ ├── appsettings.json
│ └── Dockerfile
├── Directory.Build.props
├── Microsoft.Tye.Extensions
│ └── Microsoft.Tye.Extensions.csproj
├── Microsoft.Tye.Core
│ ├── IngressOutput.cs
│ ├── ServiceOutput.cs
│ ├── Secret.cs
│ ├── Step.cs
│ ├── Verbosity.cs
│ ├── Source.cs
│ ├── DeploymentKind.cs
│ ├── ConfigModel
│ │ ├── ContainerEngineType.cs
│ │ ├── BuildProperty.cs
│ │ ├── ConfigConfigurationSource.cs
│ │ ├── ConfigIngressBinding.cs
│ │ └── ConfigVolume.cs
│ ├── ServiceSource.cs
│ ├── IYamlManifestOutput.cs
│ ├── Extension.cs
│ ├── HelmChartStep.cs
│ ├── Templates
│ │ └── Helm
│ │ │ └── templates
│ │ │ └── service.yaml
│ ├── ExternalServiceBuilder.cs
│ ├── IngressRuleBuilder.cs
│ ├── IngressBindingBuilder.cs
│ ├── ProjectPublishOutput.cs
│ ├── ContainerRegistry.cs
│ ├── ServiceManifestInfo.cs
│ ├── CommandException.cs
│ ├── DeploymentManifestInfo.cs
│ ├── ProbeBuilder.cs
│ └── BindingBuilder.cs
├── Microsoft.Tye.Extensions.Configuration
│ └── Microsoft.Tye.Extensions.Configuration.csproj
├── Microsoft.Tye.Hosting.Diagnostics
│ ├── DiagnosticOptions.cs
│ └── Metrics
│ │ └── ICounterPayload.cs
├── Microsoft.Tye.Hosting.Runtime
│ ├── HostingRuntimeHelpers.cs
│ └── Microsoft.Tye.Hosting.Runtime.csproj
└── schema
│ └── README.md
├── .github
├── ISSUE_TEMPLATE
│ ├── discussion.md
│ ├── idea.md
│ ├── feedback.md
│ └── bug.md
└── CODEOWNERS
├── restore.sh
├── .config
├── dotnet-tools.json
└── CredScanSuppressions.json
├── restore.cmd
├── CODE-OF-CONDUCT.md
├── clean.cmd
├── global.json
└── NuGet.config
/samples/.gitignore:
--------------------------------------------------------------------------------
1 | .logs/
2 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/assets/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/test/UnitTests/testassets/envfile_b.env:
--------------------------------------------------------------------------------
1 | env3 = "long string"
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/app/app.component.scss:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/UppercaseService/.dockerignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | npm-debug.log
--------------------------------------------------------------------------------
/test/UnitTests/testassets/envfile_a.env:
--------------------------------------------------------------------------------
1 | env1=value1
2 | # Ignore comment
3 | env2 = value2
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationC-UI/wwwroot/index.html:
--------------------------------------------------------------------------------
1 | Hello world
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | *.cs text=auto diff=csharp
3 | *.sh text eol=lf
4 | *.sln text eol=crlf
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/Pages/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_Layout";
3 | }
4 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/.dockerignore:
--------------------------------------------------------------------------------
1 | **/node_modules
2 | **/package-lock.json
3 | **/.vs/
4 |
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/tye.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | - name: HttpExample
3 | azureFunction: HttpExample/
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/Pages/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_Layout";
3 | }
4 |
--------------------------------------------------------------------------------
/samples/voting/vote/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/vote/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/docs/recipes/images/actions_recipe_dash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/docs/recipes/images/actions_recipe_dash.png
--------------------------------------------------------------------------------
/samples/voting/results/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/results/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/docs/recipes/images/nginx_ingress_action.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/docs/recipes/images/nginx_ingress_action.png
--------------------------------------------------------------------------------
/eng/common/dotnet-install.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0dotnet-install.ps1""" %*"
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/pub-sub/store/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/samples/dockercompose/vote/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/vote/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/src/Microsoft.Tye.Hosting/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/discussion.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Discussion
3 | about: Ask a question or start a discussion
4 | labels: discussion
5 | ---
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/styles.scss:
--------------------------------------------------------------------------------
1 | /* You can add global styles to this file, and also import other style files */
2 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/results/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/apps-with-core-angular/MoviesApp/src/favicon.ico
--------------------------------------------------------------------------------
/samples/azure-functions/voting/vote/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/vote/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/results/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/eng/common/CIBuild.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*"
--------------------------------------------------------------------------------
/eng/common/sdl/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/restore.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
6 | "$DIR/eng/common/build.sh" --restore "$@"
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/web-app/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/eng/common/init-tools-native.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 | powershell -NoProfile -NoLogo -ExecutionPolicy ByPass -command "& """%~dp0init-tools-native.ps1""" %*"
3 | exit /b %ErrorLevel%
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/HttpExample/local.settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "IsEncrypted": false,
3 | "Values": {
4 | "FUNCTIONS_WORKER_RUNTIME": "node"
5 | }
6 | }
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/service-invocation/SentenceApp/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using web_app
2 | @namespace web_app.Pages
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/backend/local.settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "IsEncrypted": false,
3 | "Values": {
4 | "FUNCTIONS_WORKER_RUNTIME": "dotnet"
5 | }
6 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/vote/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/eng/Publishing.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 3
5 |
6 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true,
3 | apiUrl: 'https://localhost:5001/api/'
4 | };
5 |
--------------------------------------------------------------------------------
/samples/voting/results/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using Frontend
2 | @namespace Frontend.Pages
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/results/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/samples/voting/vote/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using Vote
2 | @using Microsoft.Extensions.Configuration
3 | @namespace Vote.Pages
4 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
5 |
--------------------------------------------------------------------------------
/eng/common/templates/steps/run-on-unix.yml:
--------------------------------------------------------------------------------
1 | parameters:
2 | agentOs: ''
3 | steps: []
4 |
5 | steps:
6 | - ${{ if ne(parameters.agentOs, 'Windows_NT') }}:
7 | - ${{ parameters.steps }}
8 |
--------------------------------------------------------------------------------
/eng/common/templates/steps/run-on-windows.yml:
--------------------------------------------------------------------------------
1 | parameters:
2 | agentOs: ''
3 | steps: []
4 |
5 | steps:
6 | - ${{ if eq(parameters.agentOs, 'Windows_NT') }}:
7 | - ${{ parameters.steps }}
8 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
8 |
--------------------------------------------------------------------------------
/samples/dockercompose/vote/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using Vote
2 | @using Microsoft.Extensions.Configuration
3 | @namespace Vote.Pages
4 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
5 |
--------------------------------------------------------------------------------
/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multi-project/frontend/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
8 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/pub-sub/store/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/src/Microsoft.Tye.Hosting/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/tye.yaml:
--------------------------------------------------------------------------------
1 | name: VotingSample
2 | services:
3 | - name: worker
4 | include: ../worker/tye.yaml
5 | - name: results
6 | project: results.csproj
7 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
2 | WORKDIR /app
3 | COPY . /app
4 | ENTRYPOINT ["dotnet", "single-phase-dockerfile.dll"]
--------------------------------------------------------------------------------
/samples/azure-functions/voting/vote/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using Vote
2 | @using Microsoft.Extensions.Configuration
3 | @namespace Vote.Pages
4 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
5 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dockercompose/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/samples/liveness-and-readiness/webapi/webapi.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | netcoreapp3.1
4 |
5 |
--------------------------------------------------------------------------------
/eng/common/cross/armel/sources.list.jessie:
--------------------------------------------------------------------------------
1 | # Debian (jessie) # Stable
2 | deb http://ftp.debian.org/debian/ jessie main contrib non-free
3 | deb-src http://ftp.debian.org/debian/ jessie main contrib non-free
4 |
--------------------------------------------------------------------------------
/eng/common/cross/armv6/sources.list.buster:
--------------------------------------------------------------------------------
1 | deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
2 | deb-src http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
3 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/app/models/movie.ts:
--------------------------------------------------------------------------------
1 | export interface IMovie {
2 | movieId: number;
3 | movieName: string;
4 | directorName: string;
5 | releaseYear: number;
6 | }
7 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dapr/dapr.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
2 | WORKDIR /app
3 | COPY . /app
4 | ENTRYPOINT ["dotnet", "single-phase-dockerfile-args.dll"]
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/Shared/Shared.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using Vote
2 | @using Microsoft.Extensions.Configuration
3 | @namespace Vote.Pages
4 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
5 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-multi-args/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
2 | WORKDIR /app
3 | COPY . /app
4 | ENTRYPOINT ["dotnet", "single-phase-dockerfile-args.dll"]
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationA/ApplicationA.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationB/ApplicationB.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dapr/tye.yaml:
--------------------------------------------------------------------------------
1 | name: dapr_test_application
2 | extensions:
3 | - name: dapr
4 | config: tracing
5 | log-level: debug
6 | services:
7 | - name: dapr-test-project
8 | project: dapr.csproj
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/project-types/app/app.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args-duplicates/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
2 | WORKDIR /app
3 | COPY . /app
4 | ENTRYPOINT ["dotnet", "single-phase-dockerfile-args.dll"]
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationA/ApplicationA.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationB/ApplicationB.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/azure-functions/voting/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/api/api.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # Users referenced in this file will automatically be requested as reviewers for PRs that modify the given paths.
2 | # See https://help.github.com/articles/about-code-owners/
3 |
4 | * @philliphoff @ravipal
5 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/idea.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Idea
3 | about: Ideas, feature requests, and wishes
4 | labels: idea
5 | ---
6 |
7 | ### What should we add or change to make your life better?
8 |
9 | ### Why is this important to you?
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/Movies.Shared/Movies.Shared.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/worker-function/local.settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "IsEncrypted": false,
3 | "Values": {
4 | "AzureWebJobsStorage": "UseDevelopmentStorage=true",
5 | "FUNCTIONS_WORKER_RUNTIME": "dotnet"
6 | }
7 | }
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/samples/dapr/service-invocation/SentenceApp/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/samples/redis/tye.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | - name: redis
3 | image: redis
4 | bindings:
5 | - port: 6379
6 | connectionString: ${host}:${port}
7 | - name: redis-cli
8 | image: redis
9 | args: "redis-cli -h redis MONITOR"
--------------------------------------------------------------------------------
/eng/PoliCheckExclusions.xml:
--------------------------------------------------------------------------------
1 |
2 | LINUX_TEST_RESULTS|MACOS_TEST_RESULTS|WINDOWS_TEST_RESULTS|LINUX_TEST_LOGS|MACOS_TEST_LOGS|WINDOWS_TEST_LOGS
3 |
4 |
--------------------------------------------------------------------------------
/samples/voting/worker/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/tye/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "tye": {
4 | "commandName": "Project",
5 | "commandLineArgs": "run",
6 | "workingDirectory": "..\\..\\samples\\frontend-backend\\"
7 | }
8 | }
9 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-named-binding/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-uri-dependency/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationA/ApplicationA.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationB/ApplicationB.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationA/ApplicationA.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationB/ApplicationB.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.eot
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.otf
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf
--------------------------------------------------------------------------------
/.config/dotnet-tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 1,
3 | "isRoot": true,
4 | "tools": {
5 | "dotnet-format": {
6 | "version": "3.3.111304",
7 | "commands": [
8 | "dotnet-format"
9 | ]
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/orders/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Debug",
5 | "Microsoft": "Debug",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dockercompose/worker/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/wwwroot/js/utilities.js:
--------------------------------------------------------------------------------
1 | /** Scroll to the bottom of the input element */
2 | function scrollToBottom(elementId) {
3 | var elem = document.getElementById(elementId);
4 |
5 | elem.scrollTop = elem.scrollHeight;
6 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationC-UI/ApplicationC-UI.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nirzaf/tye/HEAD/test/E2ETest/testassets/projects/multirepo/results/wwwroot/css/open-iconic/font/fonts/open-iconic.woff
--------------------------------------------------------------------------------
/.config/CredScanSuppressions.json:
--------------------------------------------------------------------------------
1 | {
2 | "tool": "Credential Scanner",
3 | "suppressions": [
4 | {
5 | "placeholder": "pass@word1",
6 | "_justification": "This is a fake password used in samples."
7 | }
8 | ]
9 | }
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/products/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Debug",
5 | "Microsoft": "Debug",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/voting/vote/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/voting/worker/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/backend/local.settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "IsEncrypted": false,
3 | "Values": {
4 | "AzureWebJobsStorage": "UseDevelopmentStorage=true",
5 | "FUNCTIONS_WORKER_RUNTIME": "dotnet"
6 | }
7 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-connectionstring-dependency/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/dockercompose/worker/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/voting/worker/ResultsHub.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using Microsoft.AspNetCore.SignalR;
5 |
6 | namespace Worker
7 | {
8 | public class ResultsHub : Hub
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/HttpExample/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "es6",
5 | "outDir": "dist",
6 | "rootDir": ".",
7 | "sourceMap": true,
8 | "strict": false
9 | }
10 | }
--------------------------------------------------------------------------------
/samples/dockercompose/vote/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/frontend-backend/backend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/frontend-backend/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationA/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationB/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/voting/worker/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "worker": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "DOTNET_ENVIRONMENT": "Development"
7 | }
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: single-project
4 | services:
5 | - name: test-project
6 | project: test-project/test-project.csproj
7 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/web-app.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | web_app
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/.gitignore:
--------------------------------------------------------------------------------
1 | obj
2 | bin
3 | *.db
4 | appsettings.json
5 | *.rdb
6 | settings.json
7 | publish
8 | wwwroot
9 | .idea
10 | API.csproj.user
11 | sports-center - Web Deploy.pubxml
12 | sports-center - Web Deploy.pubxml.user
13 | db.lock
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationA/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationB/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/vote/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dockercompose/worker/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "worker": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "DOTNET_ENVIRONMENT": "Development"
7 | }
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dockercompose/worker/ResultsHub.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using Microsoft.AspNetCore.SignalR;
5 |
6 | namespace Worker
7 | {
8 | public class ResultsHub : Hub
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/samples/liveness-and-readiness/webapi/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/voting/results/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/src/tye-diag-agent/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "tye_diag_agent": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "DOTNET_ENVIRONMENT": "Development"
7 | }
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dapr/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/Pages/Privacy.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @model PrivacyModel
3 | @{
4 | ViewData["Title"] = "Privacy Policy";
5 | }
6 | @ViewData["Title"]
7 |
8 | Use this page to detail your site's privacy policy.
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project-5.0/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: single-project
4 | services:
5 | - name: test-project
6 | project: test-project/test-project.csproj
7 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesAPI/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/orders/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/tye-none.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: health-checks
4 | services:
5 | - name: health-none
6 | project: api/api.csproj
7 | replicas: 3
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/worker/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/volume-test/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/volume-test/volume-test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | volume_test
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/products/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/LowercaseService/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/Shared/ConvertedResult.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Shared
4 | {
5 | public class ConvertedResult
6 | {
7 | public string Sentence { get; set; }
8 | public string Original { get; set; }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/TitlecaseService/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/frontend-backend/backend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/frontend-backend/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/src/tye-diag-agent/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Debug",
5 | "Microsoft": "Warning",
6 | "Microsoft.Tye": "Debug",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/tye-diag-agent/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Tye": "Information",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/Pages/Shared/_ValidationScriptsPartial.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/eng/common/internal/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationA/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/apps-with-ingress/ApplicationB/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/frontend-backend/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | - name: frontend
8 | project: frontend/frontend.csproj
--------------------------------------------------------------------------------
/samples/liveness-and-readiness/webapi/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationA/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/ApplicationB/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/voting/results/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dapr/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/api/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/backend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/worker/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/project-types/app/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/restore.cmd:
--------------------------------------------------------------------------------
1 | @ECHO OFF
2 | SETLOCAL
3 | PowerShell -NoProfile -NoLogo -ExecutionPolicy ByPass -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0eng\common\Build.ps1' -restore %*; exit $LASTEXITCODE"
--------------------------------------------------------------------------------
/samples/app-with-targetframeworks/MultipleTargetFrameworks/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:alpine as node
2 |
3 | WORKDIR /src
4 | COPY . .
5 |
6 | RUN npm install && npm run build
7 |
8 | FROM nginx:alpine
9 | COPY nginx.conf /etc/nginx/nginx.conf
10 | COPY --from=node /src/dist /usr/share/nginx/html
11 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/src/tye-diag-agent/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/core/runtime:3.1
2 | WORKDIR /app
3 |
4 | # We need `ps`
5 | RUN apt-get update \
6 | && apt-get install -y procps \
7 | && rm -rf /var/lib/apt/lists/*
8 |
9 | COPY . .
10 | ENTRYPOINT ["dotnet", "tye-diag-agent.dll"]
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/backend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-phase-dockerfile/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "worker": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "DOTNET_ENVIRONMENT": "Development"
7 | }
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/ResultsHub.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using Microsoft.AspNetCore.SignalR;
5 |
6 | namespace Worker
7 | {
8 | public class ResultsHub : Hub
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationA/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationB/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/project-types/class-library/class-library.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | class_library
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/components/pubsub.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: dapr.io/v1alpha1
2 | kind: Component
3 | metadata:
4 | name: messagebus
5 | spec:
6 | type: pubsub.redis
7 | metadata:
8 | - name: redisHost
9 | value: localhost:6379
10 | - name: redisPassword
11 | value: ""
12 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/LowercaseService/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/TitlecaseService/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/Console.Normalization.svc.Name/Console.Normalization.svc.Name.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | net6.0
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationA/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationB/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-named-binding/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/worker/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "worker": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "DOTNET_ENVIRONMENT": "Development"
7 | }
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project-5.0/test-project/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project/test-project/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project/test-project/test-project.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | test_project
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/volume-test/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/CODE-OF-CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Code of Conduct
2 |
3 | This project has adopted the code of conduct defined by the Contributor Covenant
4 | to clarify expected behavior in our community.
5 |
6 | For more information, see the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct).
7 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | azureFunction: backend/
7 | - name: frontend
8 | project: frontend/frontend.csproj
9 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationC-UI/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-uri-dependency/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/api/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/project-types/app/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/project-types/test-project/UnitTest1.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Xunit;
3 |
4 | namespace test_project
5 | {
6 | public class UnitTest1
7 | {
8 | [Fact]
9 | public void Test1()
10 | {
11 |
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/app-with-targetframeworks/MultipleTargetFrameworks/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/backend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-phase-dockerfile/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/backend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port/test-project/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port/test-project/test-project.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | test_project
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project-5.0/test-project/test-project.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp5.0
5 | test_project
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/clean.cmd:
--------------------------------------------------------------------------------
1 | @ECHO OFF
2 | SETLOCAL
3 | PowerShell -NoProfile -NoLogo -ExecutionPolicy ByPass -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = ''; try { & '%~dp0clean.ps1' %*; exit $LASTEXITCODE } catch { write-host $_; exit 1 }"
4 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationA/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationB/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-connectionstring-dependency/frontend/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-phase-dockerfile/multi-phase-dockerfile.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | multi_phase_dockerfile
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/wwwroot/js/site.js:
--------------------------------------------------------------------------------
1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | // for details on configuring this project to bundle and minify static web assets.
3 |
4 | // Write your Javascript code.
5 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/multi-targetframeworks/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationA/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/ApplicationB/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port-5.0/test-project/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile/single-phase-dockerfile.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | single_phase_dockerfile
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project/test-project/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/ApplicationC-UI/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | - name: frontend
8 | project: frontend/frontend.csproj
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-named-binding/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-uri-dependency/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "DetailedErrors": true,
3 | "Logging": {
4 | "LogLevel": {
5 | "Default": "Information",
6 | "Microsoft": "Warning",
7 | "Microsoft.Hosting.Lifetime": "Information"
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port-5.0/test-project/test-project.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp5.0
5 | test_project
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: non-standard-dashboard-port
4 | dashboardPort: 8005
5 | services:
6 | - name: test-project
7 | project: test-project/test-project.csproj
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-multi-args/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-project-5.0/test-project/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 |
{{title}}
3 |
4 |
5 | {{movie.movieName}} - {{movie.directorName}} - {{movie.releaseYear}}
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | true
6 | Embedded
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/tye.yaml:
--------------------------------------------------------------------------------
1 | name: VotingSample
2 | services:
3 | - name: vote
4 | project: vote.csproj
5 | - name: worker
6 | include: ../worker/tye.yaml
7 | - name: redis
8 | image: redis
9 | bindings:
10 | - port: 6379
11 | connectionString: ${host}:${port}
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port-5.0/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: non-standard-dashboard-port
4 | dashboardPort: 8006
5 | services:
6 | - name: test-project
7 | project: test-project/test-project.csproj
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port/test-project/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args-duplicates/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/worker-function/host.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0",
3 | "logging": {
4 | "applicationInsights": {
5 | "samplingExcludedTypes": "Request",
6 | "samplingSettings": {
7 | "isEnabled": true
8 | }
9 | }
10 | }
11 | }
--------------------------------------------------------------------------------
/samples/voting/vote/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*",
10 | "OptionA": "Dogs",
11 | "OptionB": "Cats"
12 | }
13 |
--------------------------------------------------------------------------------
/test/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | false
6 | false
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-connectionstring-dependency/frontend/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/multi-targetframeworks/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/non-standard-dashboard-port-5.0/test-project/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args/single-phase-dockerfile-args.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | single_phase_dockerfile_args
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/backend/host.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0",
3 | "logging": {
4 | "applicationInsights": {
5 | "samplingExcludedTypes": "Request",
6 | "samplingSettings": {
7 | "isEnabled": true
8 | }
9 | }
10 | }
11 | }
--------------------------------------------------------------------------------
/samples/dockercompose/vote/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*",
10 | "OptionA": "Dogs",
11 | "OptionB": "Cats"
12 | }
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/Console.Normalization.svc.Name/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Console.Normalization.svc.Name
4 | {
5 | class Program
6 | {
7 | static void Main(string[] args)
8 | {
9 | Console.WriteLine("Hello World!");
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/e2e/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "../out-tsc/e2e",
5 | "module": "commonjs",
6 | "target": "es5",
7 | "types": [
8 | "jasmine",
9 | "jasminewd2",
10 | "node"
11 | ]
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/orders/orders.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/store.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/voting/worker/VoteCount.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Worker
7 | {
8 | public class VoteCount
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/backend/host.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0",
3 | "logging": {
4 | "applicationInsights": {
5 | "samplingExcludedTypes": "Request",
6 | "samplingSettings": {
7 | "isEnabled": true
8 | }
9 | }
10 | }
11 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/tye-wrong-projectpath.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend1/backend.csproj
7 | - name: frontend
8 | project: frontend/frontend.csproj
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args-duplicates/single-phase-dockerfile-args.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | single_phase_dockerfile_args
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./out-tsc/app",
5 | "types": []
6 | },
7 | "files": [
8 | "src/main.ts",
9 | "src/polyfills.ts"
10 | ],
11 | "include": [
12 | "src/**/*.d.ts"
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/vote/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*",
10 | "OptionA": "Dogs",
11 | "OptionB": "Cats"
12 | }
13 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/products/products.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-multi-args/single-phase-dockerfile-multi-args.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | single_phase_dockerfile_args
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/dockercompose/worker/VoteCount.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Worker
7 | {
8 | public class VoteCount
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/components/statestore.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: dapr.io/v1alpha1
2 | kind: Component
3 | metadata:
4 | name: default
5 | spec:
6 | type: state.redis
7 | metadata:
8 | - name: redisHost
9 | value: localhost:6379
10 | - name: redisPassword
11 | value: ""
12 | - name: actorStateStore
13 | value: "true"
14 |
--------------------------------------------------------------------------------
/samples/voting/results/Data/VotingResults.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Results
7 | {
8 | public class VotingResult
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/init/project-types.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: project-types
8 | services:
9 | - name: app
10 | project: app/app.csproj
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Information",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*",
10 | "OptionA": "Dogs",
11 | "OptionB": "Cats"
12 | }
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: web-app
8 | services:
9 | - name: web-app
10 | project: web-app.csproj
11 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/Product.cs:
--------------------------------------------------------------------------------
1 | namespace store
2 | {
3 | public class Product
4 | {
5 | public int Id { get; set; }
6 |
7 | public string Name { get; set; } = default!;
8 |
9 | public string Description { get; set; } = default!;
10 |
11 | public decimal Price { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/backend/app.js:
--------------------------------------------------------------------------------
1 | var express = require('express');
2 | var http = require('http');
3 | var app = express();
4 |
5 | app.get('/', function (req, res) {
6 | res.send('Hello World!');
7 | });
8 | http.createServer(app).listen(80, function () {
9 | console.log('Example app listening on port 80!');
10 | });
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesAPI/MoviesAPI.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | netcoreapp3.1
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/Data/VotingResults.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Results
7 | {
8 | public class VotingResult
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Extensions/Microsoft.Tye.Extensions.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/Pages/Index.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @model IndexModel
3 | @{
4 | ViewData["Title"] = "Home page";
5 | }
6 |
7 |
11 |
--------------------------------------------------------------------------------
/eng/common/templates/variables/sdl-variables.yml:
--------------------------------------------------------------------------------
1 | variables:
2 | # The Guardian version specified in 'eng/common/sdl/packages.config'. This value must be kept in
3 | # sync with the packages.config file.
4 | - name: DefaultGuardianVersion
5 | value: 0.109.0
6 | - name: GuardianPackagesConfigFile
7 | value: $(Build.SourcesDirectory)\eng\common\sdl\packages.config
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/.editorconfig:
--------------------------------------------------------------------------------
1 | # Editor configuration, see https://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | indent_style = space
7 | indent_size = 2
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
11 | [*.md]
12 | max_line_length = off
13 | trim_trailing_whitespace = false
14 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/Data/VotingResults.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Results
7 | {
8 | public class VotingResult
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/LowercaseService/LowercaseService.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/TitlecaseService/TitlecaseService.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/tye-no-buildproperties.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: multi-targetframeworks
4 | services:
5 | - name: multi-targetframeworks
6 | project: multi-targetframeworks/multi-targetframeworks.csproj
7 | bindings:
8 | - port: 7000
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/VoteCount.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Worker
7 | {
8 | public class VoteCount
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/app/app-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { Routes, RouterModule } from '@angular/router';
3 |
4 |
5 | const routes: Routes = [];
6 |
7 | @NgModule({
8 | imports: [RouterModule.forRoot(routes)],
9 | exports: [RouterModule]
10 | })
11 | export class AppRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/IngressOutput.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public abstract class IngressOutput
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ServiceOutput.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public abstract class ServiceOutput
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/Data/VotingResults.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Results
7 | {
8 | public class VotingResult
9 | {
10 | public string Vote { get; set; }
11 | public int Count { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/StringExtensions.cs:
--------------------------------------------------------------------------------
1 | namespace System
2 | {
3 | public static class StringExtensions
4 | {
5 | public static string NormalizeNewLines(this string value)
6 | {
7 | return value
8 | .Replace("\r\n", "\n")
9 | .Replace("\n", Environment.NewLine);
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/RunInfo.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public abstract class RunInfo
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/backend/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "backend",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "app.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "express": "^4.17.1"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "allowPrerelease": true
4 | },
5 | "tools": {
6 | "dotnet": "6.0.100",
7 | "runtimes": {
8 | "dotnet": [
9 | "6.0.0"
10 | ],
11 | "aspnetcore": [
12 | "6.0.0"
13 | ]
14 | }
15 | },
16 | "msbuild-sdks": {
17 | "Microsoft.DotNet.Arcade.Sdk": "7.0.0-beta.21630.1"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | dockerFile: backend/Dockerfile
7 | bindings:
8 | - containerPort: 80
9 | protocol: http
10 | - name: frontend
11 | project: frontend/frontend.csproj
12 |
--------------------------------------------------------------------------------
/samples/nginx-ingress/tye.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | - name: nginx
3 | image: nginx
4 | bindings:
5 | - protocol: http
6 | volumes:
7 | - source: nginx.conf
8 | target: /etc/nginx/conf.d/default.conf
9 | - name: appA
10 | project: ApplicationA/ApplicationA.csproj
11 | replicas: 2
12 | - name: appB
13 | project: ApplicationB/ApplicationB.csproj
14 | replicas: 2
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Secret.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public class Secret
8 | {
9 | public string? Name { get; set; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Extensions.Configuration/Microsoft.Tye.Extensions.Configuration.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/voting/results/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using Results
9 | @using Results.Shared
10 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
6 |
7 |
8 |
11 |
12 |
13 | @Body
14 |
15 |
16 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using Results
9 | @using Results.Shared
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | azureFunction: backend/
7 | pathToFunc: /npm/node_modules/node_modules/azure-functions-core-tools/bin/func.dll
8 | - name: frontend
9 | project: frontend/frontend.csproj
10 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/IEnvironmentVariable.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | namespace Microsoft.AspNetCore.Testing
5 | {
6 | internal interface IEnvironmentVariable
7 | {
8 | string Get(string name);
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Step.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public abstract class Step
8 | {
9 | public abstract string DisplayName { get; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-phase-dockerfile/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: multi-phase-dockerfile
8 | services:
9 | - name: multi-phase-dockerfile
10 | project: multi-phase-dockerfile.csproj
11 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/e2e/src/app.po.ts:
--------------------------------------------------------------------------------
1 | import { browser, by, element } from 'protractor';
2 |
3 | export class AppPage {
4 | navigateTo(): Promise {
5 | return browser.get(browser.baseUrl) as Promise;
6 | }
7 |
8 | getTitleText(): Promise {
9 | return element(by.css('app-root .content span')).getText() as Promise;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/HttpExample/host.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0",
3 | "logging": {
4 | "applicationInsights": {
5 | "samplingSettings": {
6 | "isEnabled": true,
7 | "excludedTypes": "Request"
8 | }
9 | }
10 | },
11 | "extensionBundle": {
12 | "id": "Microsoft.Azure.Functions.ExtensionBundle",
13 | "version": "[1.*, 2.0.0)"
14 | }
15 | }
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using Results
9 | @using Results.Shared
10 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Verbosity.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public enum Verbosity
8 | {
9 | Quiet,
10 | Info,
11 | Debug,
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: single-phase-dockerfile
8 | services:
9 | - name: single-phase-dockerfile
10 | project: single-phase-dockerfile.csproj
11 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "outDir": "./out-tsc/spec",
5 | "types": [
6 | "jasmine",
7 | "node"
8 | ]
9 | },
10 | "files": [
11 | "src/test.ts",
12 | "src/polyfills.ts"
13 | ],
14 | "include": [
15 | "src/**/*.spec.ts",
16 | "src/**/*.d.ts"
17 | ]
18 | }
19 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Source.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public abstract class Source
8 | {
9 | internal Source()
10 | {
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/nginx-ingress/tye.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | - name: nginx
3 | image: nginx
4 | bindings:
5 | - protocol: http
6 | volumes:
7 | - source: nginx.conf
8 | target: /etc/nginx/conf.d/default.conf
9 | - name: appA
10 | project: ApplicationA/ApplicationA.csproj
11 | replicas: 2
12 | - name: appB
13 | project: ApplicationB/ApplicationB.csproj
14 | replicas: 2
15 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
6 |
7 |
8 |
11 |
12 |
13 | @Body
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/DeploymentKind.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public enum DeploymentKind
8 | {
9 | None,
10 | Kubernetes,
11 | Oam,
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/tye-with-netcoreapp21.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: multi-targetframeworks
4 | services:
5 | - name: multi-targetframeworks
6 | project: multi-targetframeworks/multi-targetframeworks.csproj
7 | buildProperties:
8 | - name: TargetFramework
9 | value: netcoreapp2.1
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/tye-with-netcoreapp31.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: multi-targetframeworks
4 | services:
5 | - name: multi-targetframeworks
6 | project: multi-targetframeworks/multi-targetframeworks.csproj
7 | buildProperties:
8 | - name: TargetFramework
9 | value: netcoreapp3.1
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using Results
9 | @using Results.Shared
10 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/volume-test/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: volume-test
8 | services:
9 | - name: volume-test
10 | project: volume-test.csproj
11 | volumes:
12 | - name: data-vol
13 | target: /data
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using SentenceApp
9 | @using SentenceApp.Shared
10 |
--------------------------------------------------------------------------------
/samples/voting/results/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sorry, there's nothing at this address.
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/init/frontend-backend.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: frontend-backend
8 | services:
9 | - name: backend
10 | project: backend/backend.csproj
11 | - name: frontend
12 | project: frontend/frontend.csproj
13 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/ITestCondition.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | namespace Microsoft.AspNetCore.Testing
5 | {
6 | public interface ITestCondition
7 | {
8 | bool IsMet { get; }
9 |
10 | string SkipReason { get; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/Movies.Shared/Movie.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace Movies.Shared
6 | {
7 | public class Movie
8 | {
9 | public int MovieId { get; set; }
10 | public string MovieName { get; set; }
11 | public string DirectorName { get; set; }
12 | public int ReleaseYear { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Movies App with Microservices
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/UppercaseService/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "uppercase-service",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "uppercase.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "node uppercase.js"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "express": "^4.17.1"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/samples/dockercompose/results/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sorry, there's nothing at this address.
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/init/console-normalization-svc-name.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: console.normalization.svc.name
8 | services:
9 | - name: console-normalization-svc-name
10 | project: Console.Normalization.svc.Name.csproj
11 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: single-phase-dockerfile-args
8 | services:
9 | - name: web
10 | dockerFile: Dockerfile
11 | dockerFileArgs:
12 | - pat: thisisapat
13 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Sorry, there's nothing at this address.
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ConfigModel/ContainerEngineType.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.ConfigModel
6 | {
7 | public enum ContainerEngineType
8 | {
9 | Docker,
10 | Podman
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Dashboard/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sorry, there's nothing at this address.
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1DockerVolume.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Microsoft.Tye.Hosting.Model.V1
7 | {
8 | public class V1DockerVolume
9 | {
10 | public string? Name { get; set; }
11 | public string? Source { get; set; }
12 | public string? Target { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/app-with-targetframeworks/MultipleTargetFrameworks/MultipleTargetFrameworks.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1;netcoreapp2.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/results/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sorry, there's nothing at this address.
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using store
9 | @using store.Shared
10 | @using Dapr.Client
11 | @using System.Threading
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1MetricMetadata.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public class V1MetricMetadata
8 | {
9 | public string? Instance { get; set; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Sorry, there's nothing at this address.
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/frontend-backend/backend/backend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net5.0
5 | Backend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/frontend-backend/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net5.0
5 | Frontend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/results/App.razor:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Sorry, there's nothing at this address.
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/ITestCondition.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Test.Infrastructure
6 | {
7 | public interface ITestCondition
8 | {
9 | bool IsMet { get; }
10 |
11 | string SkipReason { get; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ServiceSource.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public enum ServiceSource
8 | {
9 | Unknown = 0,
10 | Configuration,
11 | Extension,
12 | Host
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1RunInfoType.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public enum V1RunInfoType
8 | {
9 | Project,
10 | Executable,
11 | Docker
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting.Diagnostics/DiagnosticOptions.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using Microsoft.Extensions.Logging;
6 |
7 | namespace Microsoft.Tye.Hosting.Diagnostics
8 | {
9 | public class DiagnosticOptions
10 | {
11 |
12 |
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting.Runtime/HostingRuntimeHelpers.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Runtime
6 | {
7 | // This exists solely as a way to locate this dll
8 | public class HostingRuntimeHelpers
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/IYamlManifestOutput.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using YamlDotNet.RepresentationModel;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | internal interface IYamlManifestOutput
10 | {
11 | YamlDocument Yaml { get; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(MSBuildThisFileDirectory)..\..\..\..\src\
7 |
8 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/Pages/Index.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @model IndexModel
3 | @{
4 | ViewData["Title"] = "Home page";
5 | }
6 |
7 |
11 |
12 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/OperatingSystems.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AspNetCore.Testing
7 | {
8 | [Flags]
9 | public enum OperatingSystems
10 | {
11 | Linux = 1,
12 | MacOSX = 2,
13 | Windows = 4,
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": false,
4 | "anonymousAuthentication": true
5 | },
6 | "profiles": {
7 | "Tye.Hosting": {
8 | "commandName": "Project",
9 | "launchBrowser": true,
10 | "environmentVariables": {
11 | "ASPNETCORE_ENVIRONMENT": "Development"
12 | },
13 | "applicationUrl": "http://localhost:5001"
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/src/schema/README.md:
--------------------------------------------------------------------------------
1 | # Schema
2 |
3 | Configuring a schema for tye.yaml
4 |
5 | 1. Install the [Yaml](https://marketplace.visualstudio.com/items?itemName=redhat.vscode-yaml) extension.
6 | 2. Open VS Code's settings (`CTRL+,`)
7 | 3. Add a mapping for our schema.
8 |
9 | ```js
10 | {
11 | "yaml.schemas": {
12 | "https://raw.githubusercontent.com/dotnet/tye/main/src/schema/tye-schema.json": [
13 | "tye.yaml"
14 | ]
15 | }
16 | }
17 | ```
18 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | Frontend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-args-duplicates/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: single-phase-dockerfile-args
8 | services:
9 | - name: web
10 | dockerFile: Dockerfile
11 | dockerFileArgs:
12 | - pat: thisisapat
13 | - pat: thisisapat
14 |
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 | Frontend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using Xunit;
6 |
7 | // We have numerous tests that manipulate machine-wide state (docker, ports, etc)
8 | [assembly: CollectionBehavior(CollectionBehavior.CollectionPerAssembly, DisableTestParallelization = true)]
9 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | Frontend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/backend/backend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | Backend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | Frontend
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/tye-liveness.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: health-checks
4 | services:
5 | - name: health-liveness
6 | project: api/api.csproj
7 | replicas: 3
8 | liveness:
9 | http:
10 | path: /healthy
11 | initialDelay: 5
12 | period: 1
13 | timeout: 1
14 | successThreshold: 1
15 | failureThreshold: 1
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/health-checks/tye-readiness.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: health-checks
4 | services:
5 | - name: health-readiness
6 | project: api/api.csproj
7 | replicas: 3
8 | readiness:
9 | http:
10 | path: /ready
11 | initialDelay: 5
12 | period: 1
13 | timeout: 1
14 | successThreshold: 1
15 | failureThreshold: 1
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/main.ts:
--------------------------------------------------------------------------------
1 | import { enableProdMode } from '@angular/core';
2 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
3 |
4 | import { AppModule } from './app/app.module';
5 | import { environment } from './environments/environment';
6 |
7 | if (environment.production) {
8 | enableProdMode();
9 | }
10 |
11 | platformBrowserDynamic().bootstrapModule(AppModule)
12 | .catch(err => console.error(err));
13 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting.Runtime/Microsoft.Tye.Hosting.Runtime.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 | Runtime helpers for tye host platform
6 | Microsoft.Tye.Hosting.Runtime
7 | Microsoft.Tye.Hosting.Runtime
8 | disable
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/init/multi-project.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: multi-project
8 | services:
9 | - name: backend
10 | project: backend/backend.csproj
11 | - name: frontend
12 | project: frontend/frontend.csproj
13 | - name: worker
14 | project: worker/worker.csproj
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Watch/IFileSet.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Collections.Generic;
6 |
7 | namespace Microsoft.DotNet.Watcher
8 | {
9 | public interface IFileSet : IEnumerable
10 | {
11 | bool Contains(string filePath);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/eng/common/sdl/NuGet.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/HttpExample/HttpExample/function.json:
--------------------------------------------------------------------------------
1 | {
2 | "bindings": [
3 | {
4 | "authLevel": "function",
5 | "type": "httpTrigger",
6 | "direction": "in",
7 | "name": "req",
8 | "methods": [
9 | "get",
10 | "post"
11 | ]
12 | },
13 | {
14 | "type": "http",
15 | "direction": "out",
16 | "name": "res"
17 | }
18 | ],
19 | "scriptFile": "../dist/HttpExample/index.js"
20 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/tye-debug-configuration.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | buildProperties:
8 | - name: Configuration
9 | value: Debug
10 | - name: frontend
11 | project: frontend/frontend.csproj
12 | buildProperties:
13 | - name: Configuration
14 | value: Debug
15 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/tye-debug-configuration.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | buildProperties:
8 | - name: Configuration
9 | value: Debug
10 | - name: frontend
11 | project: frontend/frontend.csproj
12 | buildProperties:
13 | - name: Configuration
14 | value: Debug
15 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/azure-functions/tye-release-configuration.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | buildProperties:
8 | - name: Configuration
9 | value: Release
10 | - name: frontend
11 | project: frontend/frontend.csproj
12 | buildProperties:
13 | - name: Configuration
14 | value: Release
15 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/frontend-backend/tye-release-configuration.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: frontend-backend
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | buildProperties:
8 | - name: Configuration
9 | value: Release
10 | - name: frontend
11 | project: frontend/frontend.csproj
12 | buildProperties:
13 | - name: Configuration
14 | value: Release
15 |
--------------------------------------------------------------------------------
/samples/app-with-targetframeworks/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: app-with-targetframeworks
8 | services:
9 | - name: multipletargetframeworks
10 | project: MultipleTargetFrameworks/MultipleTargetFrameworks.csproj
11 | buildProperties:
12 | - name: TargetFramework
13 | value: netcoreapp3.1
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1ConfigurationSource.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public class V1ConfigurationSource
8 | {
9 | public string? Name { get; set; }
10 | public string? Value { get; set; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/single-phase-dockerfile-multi-args/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: single-phase-dockerfile-args
8 | services:
9 | - name: web
10 | dockerFile: Dockerfile
11 | dockerFileArgs:
12 | - pat: thisisapat
13 | number_of_replicas: 2
14 | number_of_shards: 5
15 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/RuntimeFrameworks.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AspNetCore.Testing
7 | {
8 | [Flags]
9 | public enum RuntimeFrameworks
10 | {
11 | None = 0,
12 | Mono = 1 << 0,
13 | CLR = 1 << 1,
14 | CoreCLR = 1 << 2
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Extension.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Threading.Tasks;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public abstract class Extension
10 | {
11 | public abstract Task ProcessAsync(ExtensionContext context, ExtensionConfiguration config);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting.Diagnostics/Metrics/ICounterPayload.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Diagnostics.Metrics
6 | {
7 | internal interface ICounterPayload
8 | {
9 | public string Name { get; }
10 | public string Value { get; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/ReplicaState.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public enum ReplicaState
8 | {
9 | Removed,
10 | Added,
11 | Started,
12 | Stopped,
13 | Healthy,
14 | Ready
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-named-binding/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: generate-named-binding
8 | services:
9 | - name: frontend
10 | project: frontend/frontend.csproj
11 | - name: dependency
12 | image: fake-image # not actually used for running
13 | bindings:
14 | - name: myBinding
--------------------------------------------------------------------------------
/test/Test.Infrastructure/Logging/BeginScopeContext.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Extensions.Logging.Testing
6 | {
7 | public class BeginScopeContext
8 | {
9 | public object Scope { get; set; }
10 |
11 | public string LoggerName { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/dockerfile/backend/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:10
2 |
3 | # Create app directory
4 | WORKDIR /usr/src/app
5 |
6 | # Install app dependencies
7 | # A wildcard is used to ensure both package.json AND package-lock.json are copied
8 | # where available (npm@5+)
9 | COPY package*.json ./
10 |
11 | RUN npm install
12 | # If you are building your code for production
13 | # RUN npm ci --only=production
14 |
15 | # Bundle app source
16 | COPY . .
17 |
18 | CMD [ "node", "app.js" ]
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/src/app/movies.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 | import { environment } from 'src/environments/environment';
3 | import { HttpClient } from '@angular/common/http';
4 |
5 | @Injectable({
6 | providedIn: 'root'
7 | })
8 | export class MoviesService {
9 | baseUrl = environment.apiUrl;
10 |
11 | constructor(private http: HttpClient) { }
12 |
13 | getMovies() {
14 | return this.http.get(this.baseUrl + 'movies');
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/samples/liveness-and-readiness/tye.yaml:
--------------------------------------------------------------------------------
1 | name: liveness-and-readiness
2 | ingress:
3 | - name: ingress
4 | bindings:
5 | - port: 8080
6 | rules:
7 | - path: /
8 | service: simple-webapi
9 | services:
10 | - name: simple-webapi
11 | project: webapi/webapi.csproj
12 | replicas: 2
13 | liveness:
14 | http:
15 | path: /lively
16 | initialDelay: 1
17 | readiness:
18 | http:
19 | path: /ready
20 | initialDelay: 1
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/ServiceType.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public enum ServiceType
8 | {
9 | External,
10 | Project,
11 | Executable,
12 | Container,
13 | Function,
14 | Ingress
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/HelmChartStep.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public sealed class HelmChartStep : Step
8 | {
9 | public override string DisplayName => "Building Helm Chart...";
10 |
11 | public string ChartName { get; set; } = default!;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-targetframeworks/multi-targetframeworks/multi-targetframeworks.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1;netcoreapp2.1
5 | MultiTargetFrameworks
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/UppercaseService/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:14
2 |
3 | # Create app directory
4 | WORKDIR /usr/src/app
5 |
6 | # Install app dependencies
7 | # A wildcard is used to ensure both package.json AND package-lock.json are copied
8 | # where available (npm@5+)
9 | COPY package*.json ./
10 |
11 | RUN npm install
12 | # If you are building your code for production
13 | # RUN npm ci --only=production
14 |
15 | # Bundle app source
16 | COPY . .
17 |
18 | EXPOSE 80
19 | CMD [ "node", "uppercase.js" ]
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesApp/browserslist:
--------------------------------------------------------------------------------
1 | # This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
2 | # For additional information regarding the format and rule options, please see:
3 | # https://github.com/browserslist/browserslist#queries
4 |
5 | # You can see what browsers were selected by your queries by running:
6 | # npx browserslist
7 |
8 | > 0.5%
9 | last 2 versions
10 | Firefox ESR
11 | not dead
12 | not IE 9-11 # For IE 9-11 support, remove 'not'.
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/ReplicaBinding.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public class ReplicaBinding
8 | {
9 | public int Port { get; set; }
10 | public int ExternalPort { get; set; }
11 | public string? Protocol { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/worker/tye.yaml:
--------------------------------------------------------------------------------
1 | name: VotingSample
2 | services:
3 | - name: redis
4 | image: redis
5 | bindings:
6 | - port: 6379
7 | connectionString: ${host}:${port}
8 | - name: worker
9 | project: worker.csproj
10 | - name: postgres
11 | image: postgres
12 | env:
13 | - name: POSTGRES_PASSWORD
14 | value: "pass@word1"
15 | bindings:
16 | - port: 5432
17 | connectionString: Server=${host};Port=${port};User Id=postgres;Password=${env:POSTGRES_PASSWORD};
18 |
--------------------------------------------------------------------------------
/eng/common/templates/steps/add-build-to-channel.yml:
--------------------------------------------------------------------------------
1 | parameters:
2 | ChannelId: 0
3 |
4 | steps:
5 | - task: PowerShell@2
6 | displayName: Add Build to Channel
7 | inputs:
8 | filePath: $(Build.SourcesDirectory)/eng/common/post-build/add-build-to-channel.ps1
9 | arguments: -BuildId $(BARBuildId)
10 | -ChannelId ${{ parameters.ChannelId }}
11 | -MaestroApiAccessToken $(MaestroApiAccessToken)
12 | -MaestroApiEndPoint $(MaestroApiEndPoint)
13 | -MaestroApiVersion $(MaestroApiVersion)
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Dashboard/_Imports.razor:
--------------------------------------------------------------------------------
1 | @using System.Net.Http
2 | @using Microsoft.AspNetCore.Authorization
3 | @using Microsoft.AspNetCore.Components.Authorization
4 | @using Microsoft.AspNetCore.Components.Forms
5 | @using Microsoft.AspNetCore.Components.Routing
6 | @using Microsoft.AspNetCore.Components.Web
7 | @using Microsoft.JSInterop
8 | @using Microsoft.Tye.Hosting
9 | @using Microsoft.Tye.Hosting.Dashboard.Shared
10 | @using Microsoft.Tye.Hosting.Dashboard.Pages
11 | @using Microsoft.Tye.Hosting.Model
12 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1Metric.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public class V1Metric
8 | {
9 | public string? Name { get; set; }
10 | public string? Value { get; set; }
11 | public V1MetricMetadata? Metadata { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Watch/IFileSetFactory.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Threading;
6 | using System.Threading.Tasks;
7 |
8 | namespace Microsoft.DotNet.Watcher
9 | {
10 | public interface IFileSetFactory
11 | {
12 | Task CreateAsync(CancellationToken cancellationToken);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/eng/Versions.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 0.11.0
6 | alpha
7 |
8 | false
9 | true
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: project-tye
8 | services:
9 | - name: moviesapi
10 | project: MoviesAPI/MoviesAPI.csproj
11 | bindings:
12 | - protocol: https
13 | port: 5001
14 |
15 | - name: moviesapp
16 | dockerFile: MoviesApp/Dockerfile
17 | bindings:
18 | - protocol: http
19 | port: 4400
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/Templates/Helm/templates/service.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: {{ include "thischart.name" . }}
5 | labels:
6 | app.kubernetes.io/name: {{ include "thischart.name" . }}
7 | app.kubernetes.io/instance: {{ .Release.Name }}
8 | spec:
9 | selector:
10 | app.kubernetes.io/name: {{ include "thischart.name" . }}
11 | app.kubernetes.io/instance: {{ .Release.Name }}
12 | ports:
13 | - name: http
14 | protocol: TCP
15 | port: 80
16 | type: LoadBalancer
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1Application.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public class V1Application
8 | {
9 | public string? Id { get; set; }
10 |
11 | public string? Name { get; set; }
12 |
13 | public string? Source { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/backend/IOrderService.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.ServiceModel;
6 | using System.Threading.Tasks;
7 |
8 | namespace Shared
9 | {
10 | [ServiceContract]
11 | public interface IOrderService
12 | {
13 | ValueTask PlaceOrderAsync(Order order);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/IOrderService.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.ServiceModel;
6 | using System.Threading.Tasks;
7 |
8 | namespace Shared
9 | {
10 | [ServiceContract]
11 | public interface IOrderService
12 | {
13 | ValueTask PlaceOrderAsync(Order order);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ExternalServiceBuilder.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public sealed class ExternalServiceBuilder : ServiceBuilder
8 | {
9 | public ExternalServiceBuilder(string name, ServiceSource source)
10 | : base(name, source)
11 | {
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1ServiceMetrics.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Collections.Generic;
6 |
7 | namespace Microsoft.Tye.Hosting.Model.V1
8 | {
9 | public class V1ServiceMetrics
10 | {
11 | public string? Service { get; set; }
12 | public List? Metrics { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/eng/common/templates/post-build/trigger-subscription.yml:
--------------------------------------------------------------------------------
1 | parameters:
2 | ChannelId: 0
3 |
4 | steps:
5 | - task: PowerShell@2
6 | displayName: Triggering subscriptions
7 | inputs:
8 | filePath: $(Build.SourcesDirectory)/eng/common/post-build/trigger-subscriptions.ps1
9 | arguments: -SourceRepo $(Build.Repository.Uri)
10 | -ChannelId ${{ parameters.ChannelId }}
11 | -MaestroApiAccessToken $(MaestroAccessToken)
12 | -MaestroApiEndPoint $(MaestroApiEndPoint)
13 | -MaestroApiVersion $(MaestroApiVersion)
14 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-uri-dependency/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: generate-uri-dependency
8 | services:
9 | - name: frontend
10 | project: frontend/frontend.csproj
11 | - name: dependency
12 | image: fake-image # not actually used for running
13 | bindings:
14 | - port: 8001 # need something here to create a binding
15 |
--------------------------------------------------------------------------------
/eng/common/cross/armel/tizen/tizen.patch:
--------------------------------------------------------------------------------
1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so
2 | --- a/usr/lib/libc.so 2016-12-30 23:00:08.284951863 +0900
3 | +++ b/usr/lib/libc.so 2016-12-30 23:00:32.140951815 +0900
4 | @@ -2,4 +2,4 @@
5 | Use the shared library, but some functions are only in
6 | the static library, so try that secondarily. */
7 | OUTPUT_FORMAT(elf32-littlearm)
8 | -GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.3 ) )
9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux.so.3 ) )
10 |
--------------------------------------------------------------------------------
/samples/voting/vote/vote.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net5.0
5 | Vote
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/eng/common/PSScriptAnalyzerSettings.psd1:
--------------------------------------------------------------------------------
1 | @{
2 | IncludeRules=@('PSAvoidUsingCmdletAliases',
3 | 'PSAvoidUsingWMICmdlet',
4 | 'PSAvoidUsingPositionalParameters',
5 | 'PSAvoidUsingInvokeExpression',
6 | 'PSUseDeclaredVarsMoreThanAssignments',
7 | 'PSUseCmdletCorrectly',
8 | 'PSStandardDSCFunctionsInResource',
9 | 'PSUseIdenticalMandatoryParametersForDSC',
10 | 'PSUseIdenticalParametersForDSC')
11 | }
--------------------------------------------------------------------------------
/samples/dockercompose/vote/vote.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 | Vote
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/vote/vote.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 | Vote
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/worker-function/Startup.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.Azure.Functions.Extensions.DependencyInjection;
2 | using Microsoft.Extensions.DependencyInjection;
3 |
4 | [assembly: FunctionsStartup(typeof(worker_function.Startup))]
5 |
6 | namespace worker_function
7 | {
8 | public class Startup : FunctionsStartup
9 | {
10 | // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
11 | public override void Configure(IFunctionsHostBuilder builder)
12 | {
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/tye-ui.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: apps-with-ingress-ui
8 | ingress:
9 | - name: ingress
10 | bindings:
11 | - port: 8080
12 | rules:
13 | - host: ui.example.com
14 | service: appC-ui
15 |
16 | services:
17 | - name: appC-ui
18 | project: ApplicationC-UI/ApplicationC-UI.csproj
19 | replicas: 2
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/generate-connectionstring-dependency/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: generate-connectionstring-dependency
8 | services:
9 | - name: frontend
10 | project: frontend/frontend.csproj
11 | - name: dependency
12 | image: fake-image # not actually used for running
13 | bindings:
14 | - connectionString: test # need something here to create a binding
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/tye.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | name: multi-project
4 | services:
5 | - name: backend
6 | project: backend/backend.csproj
7 | bindings:
8 | - port: 7000
9 | - name: frontend
10 | project: frontend/frontend.csproj
11 | replicas: 2
12 | bindings:
13 | - port: 8000
14 | - name: worker
15 | project: worker/worker.csproj
16 | - name: rabbit
17 | image: rabbitmq:3-management
18 | bindings:
19 | - protocol: amqp
20 | port: 5672
--------------------------------------------------------------------------------
/samples/azure-functions/frontend-backend/README.md:
--------------------------------------------------------------------------------
1 | # Frontend-backend example
2 | A simple example showing a frontend and backend function app.
3 |
4 | ## For running
5 |
6 | Simply execute `tye run` and navigate to the frontend. You should see a response with information from the frontend and backend.
7 |
8 | > :bulb: Note, you may need to create a [local.settings.json](https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local?tabs=windows%2Ccsharp%2Cbash#local-settings-file) file to specify the language default. Tye currently doesn't specify the language by default.
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/IApplicationProcessor.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Threading.Tasks;
6 | using Microsoft.Tye.Hosting.Model;
7 |
8 | namespace Microsoft.Tye.Hosting
9 | {
10 | public interface IApplicationProcessor
11 | {
12 | Task StartAsync(Application application);
13 |
14 | Task StopAsync(Application application);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multirepo/vote/vote.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | Vote
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/samples/dockercompose/docker-compose.yaml:
--------------------------------------------------------------------------------
1 | version: "3"
2 | services:
3 | redis:
4 | image: redis:alpine
5 | ports:
6 | - "6379"
7 | postgres: # TODO needed to switch name here for some reason
8 | image: postgres:9.4
9 | ports:
10 | - "5432"
11 | environment:
12 | POSTGRES_PASSWORD: "postgres"
13 | vote:
14 | build:
15 | context: ./vote
16 | ports:
17 | - 5000:80
18 | result:
19 | build:
20 | context: ./results
21 | ports:
22 | - 5001:80
23 | worker:
24 | build:
25 | context: ./worker
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/IngressRuleBuilder.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public sealed class IngressRuleBuilder
8 | {
9 | public string? Path { get; set; }
10 | public string? Host { get; set; }
11 | public bool PreservePath { get; set; }
12 |
13 | public string Service { get; set; } = default!;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/IngressBindingBuilder.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public sealed class IngressBindingBuilder
8 | {
9 | public string? Name { get; set; }
10 | public int? Port { get; set; }
11 | public string? Protocol { get; set; } // HTTP or HTTPS
12 | public string? IPAddress { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Watch/Internal/FileWatcher/FileWatcherFactory.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System;
6 |
7 | namespace Microsoft.DotNet.Watcher.Internal
8 | {
9 | public static class FileWatcherFactory
10 | {
11 | public static IFileSystemWatcher CreateWatcher(string watchedDirectory)
12 | => new DotnetFileWatcher(watchedDirectory);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/apps-with-core-angular/MoviesAPI/Controllers/MoviesController.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Mvc;
2 |
3 | namespace MoviesAPI.Controllers
4 | {
5 | [ApiController]
6 | [Route("api/[controller]")]
7 | public class MoviesController : ControllerBase
8 | {
9 | private readonly MoviesService _moviesService;
10 | public MoviesController(MoviesService moviesService)
11 | => _moviesService = moviesService;
12 |
13 | [HttpGet]
14 | public IActionResult GetMovies()
15 | => Ok(_moviesService.GetMovies());
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/ServiceStatus.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public class ServiceStatus
8 | {
9 | public string? ProjectFilePath { get; set; }
10 | public string? ExecutablePath { get; set; }
11 | public string? Args { get; set; }
12 | public string? WorkingDirectory { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/Order.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace store
4 | {
5 | public class Order
6 | {
7 | public string OrderId { get; set; } = default!;
8 | public int ProductId { get; set ; }
9 | }
10 |
11 | public class OrderConfirmation
12 | {
13 | public string OrderId { get; set; } = default!;
14 |
15 | public DateTime? DeliveryDate { get; set; }
16 |
17 | public bool Confirmed { get; set; }
18 |
19 | public int BackorderCount { get; set; }
20 |
21 | public int RemainingCount { get; set; }
22 | }
23 | }
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ConfigModel/BuildProperty.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.ComponentModel.DataAnnotations;
6 |
7 | namespace Microsoft.Tye.ConfigModel
8 | {
9 | public class BuildProperty
10 | {
11 | [Required]
12 | public string Name { get; set; } = default!;
13 |
14 | [Required]
15 | public string Value { get; set; } = default!;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ProjectPublishOutput.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.IO;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public class ProjectPublishOutput : ServiceOutput
10 | {
11 | public ProjectPublishOutput(DirectoryInfo directory)
12 | {
13 | Directory = directory;
14 | }
15 |
16 | public DirectoryInfo Directory { get; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feedback.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feedback
3 | about: Tell us what you think!
4 | labels: feedback
5 | ---
6 |
7 | ### Some details
8 |
9 | **How many services are in your application? (including things like databases, redis):**
10 |
11 | - [ ] 1-2
12 | - [ ] 3-5
13 | - [ ] 6-10
14 | - [ ] 10+
15 |
16 | **What did you use tye for?**
17 |
18 | - [ ] Local development
19 | - [ ] Deployment
20 |
21 | **How is your code organized?**
22 |
23 | - [ ] One service per repo
24 | - [ ] Many services in one big repo
25 | - [ ] Other (please explain)
26 |
27 | ### What did you think of tye?
28 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/V1/V1ServiceStatus.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model.V1
6 | {
7 | public class V1ServiceStatus
8 | {
9 | public string? ProjectFilePath { get; set; }
10 | public string? ExecutablePath { get; set; }
11 | public string? Args { get; set; }
12 | public string? WorkingDirectory { get; set; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/multi-project/frontend/frontend.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report about something that is not working
4 | labels: bug
5 | ---
6 |
7 | ### Describe the bug
8 | A clear and concise description of what the bug is.
9 |
10 | ### To Reproduce
11 |
17 |
18 | ### Further technical details
19 |
20 | - Include the output of `tye --version`
21 | - If possible rerun the command with `-v debug` and include the output
22 | - The platform (Linux/macOS/Windows)
23 |
--------------------------------------------------------------------------------
/eng/common/cibuild.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | source="${BASH_SOURCE[0]}"
4 |
5 | # resolve $SOURCE until the file is no longer a symlink
6 | while [[ -h $source ]]; do
7 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
8 | source="$(readlink "$source")"
9 |
10 | # if $source was a relative symlink, we need to resolve it relative to the path where
11 | # the symlink file was located
12 | [[ $source != /* ]] && source="$scriptroot/$source"
13 | done
14 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
15 |
16 | . "$scriptroot/build.sh" --restore --build --test --pack --publish --ci $@
--------------------------------------------------------------------------------
/eng/common/templates/steps/build-reason.yml:
--------------------------------------------------------------------------------
1 | # build-reason.yml
2 | # Description: runs steps if build.reason condition is valid. conditions is a string of valid build reasons
3 | # to include steps (',' separated).
4 | parameters:
5 | conditions: ''
6 | steps: []
7 |
8 | steps:
9 | - ${{ if and( not(startsWith(parameters.conditions, 'not')), contains(parameters.conditions, variables['build.reason'])) }}:
10 | - ${{ parameters.steps }}
11 | - ${{ if and( startsWith(parameters.conditions, 'not'), not(contains(parameters.conditions, variables['build.reason']))) }}:
12 | - ${{ parameters.steps }}
13 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ContainerRegistry.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public sealed class ContainerRegistry
10 | {
11 | public ContainerRegistry(string hostname)
12 | {
13 | Hostname = hostname ?? throw new ArgumentNullException(nameof(hostname));
14 | }
15 |
16 | public string Hostname { get; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/NuGet.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/azure-functions/voting/tye.yaml:
--------------------------------------------------------------------------------
1 | name: VotingSample
2 | services:
3 | - name: vote
4 | project: vote/vote.csproj
5 | - name: worker
6 | azureFunction: worker-function/
7 | - name: azure-storage
8 | external: true
9 | bindings:
10 | - connectionString: "UseDevelopmentStorage=true"
11 | - name: postgres
12 | image: postgres
13 | env:
14 | - name: POSTGRES_PASSWORD
15 | value: "pass@word1"
16 | bindings:
17 | - port: 5432
18 | connectionString: Server=${host};Port=${port};User Id=postgres;Password=${env:POSTGRES_PASSWORD};
19 | - name: results
20 | project: results/results.csproj
21 |
--------------------------------------------------------------------------------
/samples/dockercompose/ingress.yml:
--------------------------------------------------------------------------------
1 | apiVersion: networking.k8s.io/v1
2 | kind: Ingress
3 | metadata:
4 | name: ingress-basic
5 | namespace: default
6 | annotations:
7 | kubernetes.io/ingress.class: nginx
8 | nginx.ingress.kubernetes.io/ssl-redirect: "false"
9 | nginx.ingress.kubernetes.io/rewrite-target: /$2
10 | spec:
11 | rules:
12 | - http:
13 | paths:
14 | - backend:
15 | serviceName: vote
16 | servicePort: 80
17 | path: /vote(/|$)(.*)
18 | - backend:
19 | serviceName: results
20 | servicePort: 80
21 | path: /results(/|$)(.*)
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ServiceManifestInfo.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Collections.Generic;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public sealed class ServiceManifestInfo
10 | {
11 | public Dictionary Annotations { get; } = new Dictionary();
12 |
13 | public Dictionary Labels { get; } = new Dictionary();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/apps-with-ingress/tye-ip_test.yaml:
--------------------------------------------------------------------------------
1 | # tye application configuration file
2 | # read all about it at https://github.com/dotnet/tye
3 | #
4 | # when you've given us a try, we'd love to know what you think:
5 | # https://aka.ms/AA7q20u
6 | #
7 | name: apps-with-ingress-allip-ui
8 | ingress:
9 | - name: ingress
10 | bindings:
11 | - port: 8080
12 | ip: __TEST_IP_STRING__
13 | rules:
14 | - host: ui.example.com
15 | service: appC-ui
16 |
17 | services:
18 | - name: appC-ui
19 | project: ApplicationC-UI/ApplicationC-UI.csproj
20 | replicas: 2
--------------------------------------------------------------------------------
/samples/dapr/pub-sub/store/Pages/Index.razor:
--------------------------------------------------------------------------------
1 | @page "/"
2 | @inject DaprClient Dapr
3 |
4 | Welcome to our awesome store!
5 | Please browse the products at your leisure.
6 |
7 | @if (products == null)
8 | {
9 | Loading...
10 | }
11 | else
12 | {
13 | foreach (var product in products)
14 | {
15 |
16 | }
17 | }
18 |
19 | @code {
20 | Product[]? products;
21 |
22 | protected async override Task OnInitializedAsync()
23 | {
24 | products = await Dapr.InvokeMethodAsync("products", "list");
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/SentenceApp/SentenceApp.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/CommandException.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public class CommandException : Exception
10 | {
11 | public CommandException(string message)
12 | : base(message)
13 | { }
14 |
15 | public CommandException(string message, Exception inner)
16 | : base(message, inner)
17 | { }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ConfigModel/ConfigConfigurationSource.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.ComponentModel.DataAnnotations;
6 |
7 | namespace Microsoft.Tye.ConfigModel
8 | {
9 | public class ConfigConfigurationSource
10 | {
11 | [Required]
12 | public string Name { get; set; } = default!;
13 |
14 | [Required]
15 | public string Value { get; set; } = default!;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/DeploymentManifestInfo.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.Collections.Generic;
6 |
7 | namespace Microsoft.Tye
8 | {
9 | public sealed class DeploymentManifestInfo
10 | {
11 | public Dictionary Annotations { get; } = new Dictionary();
12 |
13 | public Dictionary Labels { get; } = new Dictionary();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/IngressStatus.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System;
6 | using System.Collections.Generic;
7 | using System.Linq;
8 | using System.Threading.Tasks;
9 |
10 | namespace Microsoft.Tye.Hosting.Model
11 | {
12 | public class IngressStatus : ReplicaStatus
13 | {
14 | public IngressStatus(Service service, string name) : base(service, name)
15 | {
16 | }
17 |
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/samples/azure-functions/typescript/HttpExample/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "",
3 | "version": "",
4 | "scripts": {
5 | "build": "tsc",
6 | "build:production": "npm run prestart && npm prune --production",
7 | "watch": "tsc --w",
8 | "prestart": "npm run build && func extensions install",
9 | "start:host": "func start",
10 | "start": "npm-run-all --parallel start:host watch",
11 | "test": "echo \"No tests yet...\""
12 | },
13 | "description": "",
14 | "devDependencies": {
15 | "@azure/functions": "^1.0.1-beta1",
16 | "npm-run-all": "^4.1.5",
17 | "typescript": "^3.3.3"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ConfigModel/ConfigIngressBinding.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.ConfigModel
6 | {
7 | public class ConfigIngressBinding
8 | {
9 | public string? Name { get; set; }
10 | public int? Port { get; set; }
11 | public string? Protocol { get; set; } // HTTP or HTTPS
12 | public string? IPAddress { get; set; } // Can be * or any address to listen on
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ConfigModel/ConfigVolume.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System.ComponentModel.DataAnnotations;
6 |
7 | namespace Microsoft.Tye.ConfigModel
8 | {
9 | public class ConfigVolume
10 | {
11 | public string Source { get; set; } = default!;
12 |
13 | public string Name { get; set; } = default!;
14 |
15 | [Required]
16 | public string Target { get; set; } = default!;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/samples/dapr/service-invocation/UppercaseService/uppercase.js:
--------------------------------------------------------------------------------
1 | const express = require('express')
2 | const app = express()
3 | const port = 80
4 |
5 | app.get('/', (req, res) => {
6 | res.send('Hello World!')
7 | })
8 |
9 | app.get('/uppercase', (req, res) => {
10 | console.log(`Uppercase Service receieved request: ${JSON.stringify(req.query)}`)
11 | var result = {
12 | original: req.query['sentence'],
13 | sentence: req.query['sentence'].toUpperCase()
14 | };
15 | res.send(result);
16 | })
17 |
18 | app.listen(port, () => {
19 | console.log(`Uppercase Service listening at http://localhost:${port}`)
20 | })
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/ConditionalFactAttribute.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | using System;
5 | using Xunit;
6 | using Xunit.Sdk;
7 |
8 | namespace Microsoft.AspNetCore.Testing
9 | {
10 | [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
11 | [XunitTestCaseDiscoverer("Microsoft.AspNetCore.Testing." + nameof(ConditionalFactDiscoverer), "Microsoft.AspNetCore.Testing")]
12 | public class ConditionalFactAttribute : FactAttribute
13 | {
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/eng/StagingRelease.md:
--------------------------------------------------------------------------------
1 | # Guide on releasing tye
2 |
3 | ## Releasing binary
4 |
5 | 1. Grab latest build off dnceng/internal.
6 | 2. Download it locally.
7 | 3. `dotnet nuget push --source https://api.nuget.org/v3/index.json -k `
8 |
9 | ## Updating repo to next version
10 |
11 | - Update [getting started](/docs/getting_started.md) and other places in tutorial to just released version.
12 | - Update [Working with CI builds](docs/getting_started.md) with next version.
13 | - Update [Version.props](eng/Versions.props) to next version.
14 |
15 | ## Tag release
16 |
17 | - `git tag release/`
18 | - `git push --tags`
19 |
--------------------------------------------------------------------------------
/test/E2ETest/testassets/projects/web-app/Program.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Hosting;
2 | using Microsoft.Extensions.Hosting;
3 |
4 | namespace web_app
5 | {
6 | public class Program
7 | {
8 | public static void Main(string[] args)
9 | {
10 | CreateHostBuilder(args).Build().Run();
11 | }
12 |
13 | public static IHostBuilder CreateHostBuilder(string[] args) =>
14 | Host.CreateDefaultBuilder(args)
15 | .ConfigureWebHostDefaults(webBuilder =>
16 | {
17 | webBuilder.UseStartup();
18 | });
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/ConditionalFactAttribute.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | using System;
6 | using Xunit;
7 | using Xunit.Sdk;
8 |
9 | namespace Test.Infrastructure
10 | {
11 | [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
12 | [XunitTestCaseDiscoverer("Test.Infrastructure." + nameof(ConditionalFactDiscoverer), "Test.Infrastructure")]
13 | public class ConditionalFactAttribute : FactAttribute
14 | {
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/test/Test.Infrastructure/xunit/ConditionalTheoryAttribute.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation. All rights reserved.
2 | // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3 |
4 | using System;
5 | using Xunit;
6 | using Xunit.Sdk;
7 |
8 | namespace Microsoft.AspNetCore.Testing
9 | {
10 | [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
11 | [XunitTestCaseDiscoverer("Microsoft.AspNetCore.Testing." + nameof(ConditionalTheoryDiscoverer), "Microsoft.AspNetCore.Testing")]
12 | public class ConditionalTheoryAttribute : TheoryAttribute
13 | {
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/ProbeBuilder.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public class ProbeBuilder
8 | {
9 | public HttpProberBuilder? Http { get; set; }
10 | public int InitialDelay { get; set; }
11 | public int Period { get; set; }
12 | public int Timeout { get; set; }
13 | public int SuccessThreshold { get; set; }
14 | public int FailureThreshold { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/samples/mongo-sample/tye.yaml:
--------------------------------------------------------------------------------
1 | name: mongo-sample
2 | services:
3 | - name: mongo
4 | image: mongo
5 | env:
6 | - name: ME_CONFIG_MONGODB_ADMINUSERNAME
7 | value: root
8 | - name: ME_CONFIG_MONGODB_ADMINPASSWORD
9 | value: example
10 | bindings:
11 | - port: 27017
12 | connectionString: "mongodb://${host}:${port}"
13 | - name: mongo-express
14 | image: mongo-express
15 | bindings:
16 | - port: 8081
17 | containerPort: 8081
18 | protocol: http
19 | env:
20 | - name: ME_CONFIG_MONGODB_ADMINUSERNAME
21 | value: root
22 | - name: ME_CONFIG_MONGODB_ADMINPASSWORD
23 | value: example
24 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Core/BindingBuilder.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye
6 | {
7 | public sealed class BindingBuilder
8 | {
9 | public string? Name { get; set; }
10 | public string? ConnectionString { get; set; }
11 | public int? Port { get; set; }
12 | public int? ContainerPort { get; set; }
13 | public string? Host { get; set; }
14 | public string? Protocol { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Dashboard/Shared/MainLayout.razor:
--------------------------------------------------------------------------------
1 | @inherits LayoutComponentBase
2 |
3 |
6 |
7 |
8 |
16 |
17 |
18 | @Body
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/Microsoft.Tye.Hosting/Model/ReplicaEvent.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 | // See the LICENSE file in the project root for more information.
4 |
5 | namespace Microsoft.Tye.Hosting.Model
6 | {
7 | public readonly struct ReplicaEvent
8 | {
9 | public ReplicaState State { get; }
10 | public ReplicaStatus Replica { get; }
11 |
12 | public ReplicaEvent(ReplicaState state, ReplicaStatus replica)
13 | {
14 | State = state;
15 | Replica = replica;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------