v0.30.4
Release 0.30.4
What's New
ziti edge quickstart
- Edge SDK terminator improvements
- host.v1 and host.v2 connectTimeout/connectTimeoutSeconds
- edge/fabric merge
ziti edge quickstart
-
ziti edge quickstart
](#1298). You can now download
theziti
CLI and have a functioning network with just one command. The network it creates is
ephemeral and is intended to be torn down when the process exits. It is intended for quick
evaluation and testing of an overlay network. It supports the following flags:--already-initialized Specifies the PKI does not need to be created and the db does not need to be initialized. Recommended to be combined with --home. If --home is not specified the environment will be destroyed on shutdown! default: false --ctrl-address string Sets the advertised address for the control plane and API --ctrl-port int16 Sets the port to use for the control plane and API -h, --help help for quickstart --home string Sets the directory the environment should be installed into. Defaults to a temporary directory. If specified, the environment will not be removed on exit. -p, --password string Password to use for authenticating to the Ziti Edge Controller. default: admin --router-address string Sets the advertised address for the integrated router --router-port int16 Sets the port to use for the integrated router -u, --username string Username to use when creating the Ziti Edge Controller. default: admin
Example Usage:
ziti edge quickstart \ --ctrl-address potato \ --ctrl-port 12345 \ --router-address avacado \ --router-port 23456 \ --home $HOME/.ziti/pet-ziti \ --already-initialized \ --username someOtherUsername \ --password someOtherPassword
Edge SDK Terminator Improvements
There was a race condition in edge sdk terminator handling, where if sdk noticed a broken connection
before the router did, it would reconnect and rebind while the router still though it had the old
connection and old binding. Because we were using the session token to key terminator state in the
router, the new terminator information would overwrite the old terminator information in the router.
However, in the controller, the information wouldn't get overridden, since we use a UUID to key
things in the controller. When the router noticed the old connection was gone it would try to clean
things up, but since the state had been overwritten, it couldn't and the controller would be left
with an orphaned terminator.
The router now uses a UUID as well so there shouldn't be any more orphaned terminators.
host.v1/host.v2 change
The host.v2 config type was mostly a collection of host.v1 instances. However, there was a one small
difference. The host.v1 type had connectTimeoutSeconds
in listenOptions
, where host.v2
had connectTimeout
, defined as a duration.
To bring them into alignment, both attributes are now supported in both config types.
However, connectTimeout
will take precedence if both are present. connectTimeout
is not yet
supported by all tunnelers. The following still need to be updated:
- ziti-edge-tunnel
- Desktop Edge for Windows
- Desktop Edge for Mac
- Mobile Edge for Android
- Mobile Edge for IOS
Once it is supported, we will deprecate connectTimeoutSeconds
with a lengthy deprecation period.
At the end of the deprecation period we will migrate any remaining connectTimeoutSeconds
values
to connectTimeout
.
Edge and Fabric Merges
The code from the fabric and edge repositories has been merged into the ziti repository. Once issues have been migrated, those two projects will be archived.
Component Updates and Bug Fixes
-
github.com/openziti/channel/v2: v2.0.95 -> v2.0.99
-
github.com/openziti/edge: v0.24.404 -> v0.24.420
- Issue #1610 - Don't update identity on auth if sdkInfo and envInfo haven't changed
- Issue #1611 - Some entity changes events are unattributed when generated from edge client rest endpoint
- Issue #1616 - host.v1 and host.v2 are out of sync
- Issue #1599 - entityChange events should mask or redact jwt token
- Issue #1607 - remove enrollment tokens
not before
- Issue #1310 - router run --extend doesn't wait for control channel
-
github.com/openziti/edge-api: v0.25.33 -> v0.25.37
- Issue #44 - create session can return 404 if service id is invalid
-
github.com/openziti/fabric: v0.24.23 -> v0.24.36
- Issue #799 - Alll controllers to advertise capabilities to routers/other controllers
- Issue #796 - Make link heartbeats configurable, including an unresponive close timeout
- Issue #794 - Add output file to ziti agent controller snapshot-db command
- Issue #792 - include raft index in DB snapshot filename
- Issue #791 - FieldError Reason field not parsed correct when transmitted from cluster node to cluster node
- Issue #789 - Retransmitting prevents circuit from being idle checked
-
github.com/openziti/foundation/v2: v2.0.30 -> v2.0.32
-
github.com/openziti/identity: v1.0.61 -> v1.0.63
-
github.com/openziti/metrics: v1.2.33 -> v1.2.35
-
github.com/openziti/runzmd: v1.0.30 -> v1.0.32
-
github.com/openziti/sdk-golang: v0.20.101 -> v0.20.116
- Issue #431 - sdk can panic when re-authenticating and rebinding at the same time
- Issue #238 - service binding needs to restart if service is recreated
- Issue #115 - Don't use hostname for CN in CSR
- Issue #429 - error handling is broken, so we don't properly retry
-
github.com/openziti/secretstream: v0.1.11 -> v0.1.12
-
github.com/openziti/storage: v0.2.14 -> v0.2.18
- Issue #31 - Fix ANTLR int overflow error on arm 32
-
github.com/openziti/transport/v2: v2.0.103 -> v2.0.107
-
github.com/openziti/ziti: v0.30.3 -> v0.30.4
- Fixed an issue causing router configs to be rewritten when docker compose was brought up with existing configs