Skip to content
This repository has been archived by the owner on Nov 20, 2023. It is now read-only.

Tye 0.2

Pre-release
Pre-release
Compare
Choose a tag to compare
@jkotalik jkotalik released this 08 May 18:25
bf3bc09

Tye 0.2 Release notes

These are the release notes for the 0.2 release of Tye.

The package version is: 0.2.0-alpha.20258.3

See getting started for installation instructions.

Notable changes and features

Ingress support

Tye now provides an opinionated and simple way of configuring ingress for local development, as well deploying to Kubernetes using the popular NGINX Ingress Controller for Kubernetes.

There's new documentation for ingress that describes how to setup ingress for both local development and deployment.

Multiple repository support

We've added support for running and deploying a tye application which consists of multiple repositories.

tye.yaml now supports composition. To compose, use the include directive specifying the name of the service you'd like in another tye.yaml.

name: multirepo-app
services:
- name: frontend
  project: ./frontend/frontend.csproj
- name: inventory
  include: ../inventoryRepo/tye.yaml

We also now support referencing another repository by specifying a URI, which tye will clone.

name: multirepo-app
services:
- name: frontend
   project: ./frontend/frontend.csproj
- name: inventory
   repository: https://github.com/MyOrg/InventoryRepo

The string given to repository is directly passed in after git clone, so if you need additional arguments to the call to git clone (for example, specifying branch), you can add it there.

Distributed Tracing using zipkin

Zipkin is a popular open-source distributed trace storage and query system. It can show you:

  • Which services were involved with an end-to-end operation
  • What are the trace IDs to reference logs for an operation
  • What were the timings of work done in each service for an operation

Tye can now get distributed tracing working easily without adding any SDKs or libraries to your services.

See our recipe on distributed tracing with zipkin for more details.

Logging with Elastic Stack

Elastic stack (aka ELK) is a popular log-aggregation system that gives you a powerful log search and dashboard engine with views across all of your services.

Tye can push logs to Elastic stack easily without the need for any SDKs or code changes in your services.

See our recipe on logging with Elastic Stack for more details.

New tye commands

We've added a new command, tye push, which will build all application containers and push them to a container registry, without deploying to Kubernetes. This command is useful if you want to use Tye to containerize .NET Core projects and manage deployment separately.

We've also added the tye build command, which will build all of an application's project services into containers without deploying or pushing the containers remotely. This command is useful for testing that all projects successfully build.

We've also added the tye undeploy command will delete a deployed application from Kubernetes. tye undeploy by default will:

  • List all resources that are part of an application
  • Print the list of resources (what-if)
  • Offer a choice to delete each resource (interactive)
  • Delete each resource (if applicable)

Misc changes

You can now specify build properties for a service in tye.yaml. These are properties that will be directly provided to dotnet build as MSBuild properties.

name: app
services:
- name: frontend
  project: frontend/frontend.csproj
  buildProperties:
  - name: Configuration
    value: Debug

We now support building projects in parallel when there are multiple projects that need to be built. This will speed up the time for tye run and tye deploy.

You can now specify a namespace to deploy to when running tye deploy.

tye deploy --namespace MyNamespace

We've added support to specifying a Dockerfile in tye.yaml for tye run.

name: app
services:
- name: frontend
  dockerFile: frontend/Dockerfile

You can also specify the Dockerfile context with dockerFileContext.

Documentation improvements

We've added some more documentation for various topics in tye. You can find this in the docs folder. This includes local development, deployment, and multiple repository scenarios.

We've also added new recipes for adding many different extensions to tye, including:

Community contributions

Below is a list of all the community contributions between April 09, 2020 and May 08, 2020 (UTC time). Thanks to all our contributors for their enthusiasm and support!