Releases
Highlights of v0.1.0 release
Specifying the exact resource to be manipulated
If you run commands targeting resources, such as Deployment, till now you were only able to use Name. This resulted in a lookup among the resources we currently handle. First we checked if Deployment of the matching name is available. If not - we looked up for DeploymentConfig.
With this release you can be exact:
$ ike create --deployment deployment/reviews-v1 --session bartek-icxzt --image docker.io/bmajsak/test:latest --route header:x=y
Better insights from the CLI
When you want to get details about the sessions available in your namespace, the built-in response for kubectl get sessions is rather brief:
$ kubectl get sessions
NAME AGE
bartek-jcsgl 9s
In this release we reworked it so you can easily see all the relevant information at hand.
$ kubectl get sessions
NAMESPACE NAME REF NAMES STRATEGIES HOSTS ROUTE AGE
test-001 bartek-jcsgl ["reviews-v1"] ["prepared-image"] ["feature-x.ike-demo.io"] header:ike-id=feature-y 9s
Better insights of internal work
We’ve also enhanced the way we track status of our controller work. When you inspect Session CRD you can now easily see the conditions which describe the actions performed by the controller.
This is also exposed in e.g. OpenShift Console
All changes in this release
Operator
New features
-
feat(operator): creates new destinationrules instead of manipulating (#799), by @aslakknutsen
-
feat(operator): supports kind as part of a ref name (#793), by @bartoszmajsak
-
feat(operator): enhances CLI output for CRD with custom columns (#786), by @bartoszmajsak
-
feat(operator): split action and success state in model (#785), by @bartoszmajsak
Project infrastructure
Bugs
-
fix(lint): enables goerr113 (#792), by @bartoszmajsak
-
fix(infra): run go mod tidy to match dependabot go.sum (#784), by @aslakknutsen
-
fix(tekton): ability to define base branch through env var when opening PR (#778), by @bartoszmajsak
Latest dependencies update
-
github.com/golang/protobuf to 1.5.2 (#789), by @dependabot
-
github.com/onsi/ginkgo to 1.16.0 (#788), by @dependabot
-
golangci/golangci-lint-action to v2.5.2 (#787), by @dependabot
-
google.golang.org/grpc to 1.36.1 (#771), by @dependabot
-
istio.io/client-go to 1.9.2 (#772), by @dependabot
Highlights of v0.0.10 release
Apart from quite a few dependency updates, the Session CRD now keeps conditions which makes it easier to view in e.g. Openshift.
All changes in this release
Operator
New features
-
feat(operator): adds conditions with type, status, reason and msg (#773), by @bartoszmajsak
-
feat(operator): add LastTransitionTime to status (#767), by @bartoszmajsak
-
fix(bundle): make CSV sample more realistic (#762), by @aslakknutsen
Bugs
-
fix(operator): set klog to unify loggers (#760), by @aslakknutsen
Project infrastructure
New features
-
feat(circleci): introduces env var to force cache invalidation (#768), by @bartoszmajsak
-
feat(circleci): caches snap deps (#763), by @bartoszmajsak
Testing
New features
-
feat(circleci): updates microk8s to 1.19 stream (#764), by @bartoszmajsak
Latest dependencies update
-
github.com/golang/protobuf to 1.5.1 (#750), by @dependabot
-
github.com/mikefarah/yq/v4 to 4.6.3 (#770), by @dependabot
-
github.com/onsi/ginkgo to 1.15.2 (#745), by @dependabot
-
hashicorp/go-multierror to 1.1.1 (#740), by @dependabot
-
k8s.io/apimachinery to 0.20.5 (#756), by @dependabot
-
k8s.io/client-go to 0.20.5 (#754), by @dependabot
-
k8s.io/code-generator to 0.20.5 (#759), by @dependabot
-
k8s.io/klog/v2 to 2.8.0 (#761), by @dependabot
-
prometheus/client_golang to 1.10.0 (#751), by @dependabot
Highlights of v0.0.9 release
Tekton / Openshift Pipeline Tasks
With this release you can now use istio-workspace within Tekton to make special routes for
either preview or testing purposes. See Tekton Integration docs for more details.
All changes in this release
Build System Integration
New features
-
feat: tekton task release scripts (#735), by @bartoszmajsak
-
feat: initial move of Tekton tasks (#728), by @bartoszmajsak
Command line
Bugs
-
fix: do not ignore errors when outputting in json (#741), by @bartoszmajsak
Documentation
New features
-
chore: rewords project description (#742), by @bartoszmajsak
-
feat(doc): add metadata and desc to Tekton Tasks (#736), by @aslakknutsen
Operator
Bugs
-
fix(operator): avoid reusing version in clone name (#743), by @aslakknutsen
-
fix: do not ignore errors when outputting in json (#741), by @bartoszmajsak
Project infrastructure
New features
-
fix(circle): updates executor machine to Ubuntu 20.04 (#734), by @bartoszmajsak
Testing
New features
-
feat(tekton): adds e2e tests for Tekton tasks (#738), by @aslakknutsen
Latest dependencies update
-
github.com/kisielk/errcheck to 1.6.0 (#722), by @dependabot
-
github.com/onsi/ginkgo to 1.15.1 (#732), by @dependabot
-
github.com/onsi/gomega to 1.11.0 (#733), by @dependabot
-
golangci/golangci-lint-action to v2.5.1. (#720), by @dependabot
-
google.golang.org/grpc to 1.36.0 (#721), by @dependabot
-
istio.io/client-go to 1.9.1 (#731), by @dependabot
Highlights of v0.0.8 release
Watch dependent resources for change
The operator will now watch all the dependent resources (DestinationRule, Gateway, VirtualService, Deployment)
and reconcile the Session on any change.
This means that even if a third-party tool reconfigures the current state, overwrites it, or pushes new releases, the operator will ensure that the special route is still operational.
All changes in this release
Command line
Bugs
-
fix(cli): guard against possible nil Route (#717), by @aslakknutsen
Documentation
New features
-
feat: automates sourcing CSV description from README (#718), by @bartoszmajsak
Operator
New features
-
feat(operator): watch manipulated resources for reconcile on change (#719), by @aslakknutsen
Bugs
-
fix(operator): move to use leader election by lease (#715), by @aslakknutsen
Latest dependencies update
-
k8s.io/apimachinery to 0.20.4 (#710), by @dependabot
-
k8s.io/client-go to 0.20.4 (#713), by @dependabot
-
k8s.io/code-generator to 0.20.4 (#709), by @dependabot
-
sigs.k8s.io/controller-tools to 0.5.0 (#708), by @dependabot
Highlights of v0.0.7 release
Route available in Status
You can use the Route option to define the criteria you want to use for this Session either via Session.Spec.Route or via the --route CLI option. If you don’t, the operator will calculate a route for you using header:x-workspace-route:"session.name".
You can now find the currently used Route reflected in Session.Status.Route.
Improvement to CustomResourceDefintion and ClusterServiceVersion
We’ve added better descriptions and some field-level documentation to the CustomResourceDefintion and the ClusterServiceVersion
All changes in this release
Documentation
New features
-
fix(doc): add better description to the crd (#704), by @aslakknutsen
Operator
New features
-
feat(operator): add description for crd in csv (#703), by @aslakknutsen
-
fix(operator): add route to status (#701), by @aslakknutsen
Project infrastructure
New features
-
chore(images): move pr builds to maistra-dev org (#700), by @aslakknutsen
Highlights of v0.0.6 release
Available in OperatorHub
Starting with this release you should be able to install istio-workspace in a new way;
either via the Openshift Console Operator Hub or https://operatorhub.io/
New contributors
In this release we’ve been so lucky to get a little help from our new friend Humphrey Shotton.
Thank you! :)
All changes in this release
Command line
New features
-
feat(cli): print usage hint including exposed hosts (#692), by @aslakknutsen
Operator
New features
-
feat(operator): support MultiNamespace install mode (#680), by @aslakknutsen
Project infrastructure
New features
-
feat(gh-actions): enables /help cmd for releases (#690), by @bartoszmajsak
-
feat(operator): automates operator bundle submission (#685), by @bartoszmajsak
Bugs
-
fix(release): enables operatorhub signed commits (#689), by @bartoszmajsak
-
fix(circle): uses custom gpg program to sign commits (#687), by @bartoszmajsak
Testing
New features
-
chore: sets err buffer to be captured for tests (#693), by @bartoszmajsak
Latest dependencies update
-
github.com/onsi/ginkgo to 1.15.0 (#669), by @dependabot
-
github.com/onsi/gomega to 1.10.5 (#668), by @dependabot
-
github.com/spf13/cobra to 1.1.3 (#697), by @dependabot
-
golangci/golangci-lint-action to v2.4.0 (#696), by @dependabot
Highlights of v0.0.5 release
The main focus of this release was to move to the new version of the Operator SDK and be able to leverage the Operator Lifecycle Manager as an installation process. This will allow us to make the project available for easy consumption via the Operator Hub.
All changes in this release
Command line
Bugs
-
fix(cli): watch run command status and log errors (#650), by @aslakknutsen
-
fix(cli): print full url to image being used for install (#638), by @aslakknutsen
Operator
New features
-
fix(log): add log caller to structured logger (#651), by @aslakknutsen
-
feat(operator): introduces operator-sdk bundle creation (#648), by @aslakknutsen
Project infrastructure
New features
-
chore: moves dev images to rely on maistra-dev repo (#652), by @bartoszmajsak
Testing
New features
-
chore: moves dev images to rely on maistra-dev repo (#652), by @bartoszmajsak
-
fix(e2e): replace usage of ruby with python to limit dev container size (#640), by @aslakknutsen
Bugs
-
fix(circle): tree hash propagates properly to avoid redundant job runs (#657), by @bartoszmajsak
Latest dependencies update
-
github.com/go-logr/logr to 0.4.0 (#647), by @dependabot
-
github.com/go-logr/zapr to 0.4.0 (#645), by @dependabot
Highlights of v0.0.4 release
This release has been primarily focused on hardening our test infrastructure and use cases coverage. This obviously resulted in quite a bit of improvements in our infra as well as bug fixes which you can see in the complete changelog below. There are a few notable change though.
Host-based routing
Up until now we provided header-based routing, where you added your custom header (e.g. X-PR-Route: 461) based on which the traffic was routed to the changed services. This feature adds a subdomain host to the gateway and let you access your changed service by using just a URL, so you can easily use your browser to test it.
Get the structural response from the ike create command
For simplicity and automation you might want to get the Session object that was created by the ike create command as part of the response. You can now do that by including the --json argument, and the resulting Session object will be printed to stdout.
ike install-operator is now ike install
We decided to rename installation command for two simple reasons - it’s obviously shorter, but it also better reflects what is happening under the hood. It installs istio-workspace controller, the same way as an operator would do.
All changes in this release
New features
-
feat: reworks k8s manifests generation to rely on kubebuilder (#538), by @bartoszmajsak
-
feat: enables defining strategy templates in custom folder (#602), by @bartoszmajsak
-
feat: add health and readiness endpoints + probe config (#556), by @aslakknutsen
-
feat: install command (#542), by @bartoszmajsak
-
docs: adds link to rhd blog (#545), by @bartoszmajsak
-
feat(client): make client wait condition configurable (#531), by @aslakknutsen
-
feat(operator): add 'existing' strategy (#529), by @aslakknutsen
-
chore: minor improvements in the docs (#520), by @bartoszmajsak
-
fix: temp directory creation in get-ike for OSX (#515), by @robertpanzer
-
chore: bumps golang to 1.14.7 (#513), by @bartoszmajsak
-
chore: process template during build using go code instead of oc (#509), by @bartoszmajsak
-
feat: csv generation in its own target (#508), by @bartoszmajsak
-
feat(cli): revert ref back to original on join (#492), by @aslakknutsen
-
feat: generates operator’s ClusterServiceVersion manifests (#490), by @bartoszmajsak
-
fix(cli): return structural response on cli (#489), by @aslakknutsen
-
fix(log): use a single instance of Logger (#488), by @aslakknutsen
-
feat(operator): expose host route in session status (#483), by @aslakknutsen
-
feat: expose session host route (#469), by @aslakknutsen
-
feat: hints how to reach new service (#467), by @bartoszmajsak
-
docs: adds demo video (#471), by @bartoszmajsak
-
fix: unifies logging usage through wrapper (#462), by @bartoszmajsak
-
fix(doc): explain passing multi value flags as repeated flags (#454), by @aslakknutsen
-
feat(cli): support multiple port expose bindings (#452), by @aslakknutsen
-
feat(cli): if no ports are defined, rely on auto expose from tp (#449), by @aslakknutsen
Bug fixes
-
fix(e2e): ensure we check if there are deployments incase pods are no… (#614), by @aslakknutsen
-
fix: reworks service execution logic and fixes gocmd channel/goroutines issues (#576), by @dependabot
-
fix(ci): uses
latesttag for master image builds (#572), by @bartoszmajsak -
fix(test-infra): updates github action commands in linter (#558), by @aslakknutsen
-
fix: sets registry to internal before running operator tests (#532), by @bartoszmajsak
-
fix: operator failure during multiple ref addition to session (#516), by @aslakknutsen
-
chore: streamlines assets generation (#510), by @bartoszmajsak
-
fix(dev): get_protobuf should use "pwd" (#472), by @aslakknutsen
-
fix: downloads protoc if not available (#463), by @bartoszmajsak
Latest dependencies update
-
actions/github-script to v3.1 (#575)
-
github.com/go-logr/logr to 0.3.0 (#577)
-
github.com/golang/protobuf to 1.4.3 (#579)
-
github.com/google/go-github to 32.1.0 (#507)
-
github.com/onsi/ginkgo to 1.14.2 (#554)
-
github.com/onsi/gomega to 1.10.4 (#611)
-
github.com/openshift/api to a843dc3 (#456)
-
github.com/operator-framework/operator-sdk to 0.17.1 (#451)
-
github.com/spf13/afero to 1.5.1 (#626)
-
github.com/spf13/cobra to 1.1.1 (#549)
-
github.com/spf13/viper to 1.7.1 (#530)
-
go.uber.org/goleak to
89d54f0(#524) -
go.uber.org/zap to 1.16.0 (#584)
-
google.golang.org/grpc to 1.35.0 (#624)
-
gopkg.in/h2non/gock.v1 to 1.0.16 (#578)
-
gopkg.in/yaml.v2 to 2.4.0 (#582)
-
k8s.io/apiextensions-apiserver to 0.20.2 (#621)
-
prometheus/client_golang to 1.8.0 (#580)
-
ubi8/ubi-minimal to 8.3 (#552)
Project infrastructure
-
feat(deps): updates to official dependabot v2 (#560), by @bartoszmajsak
-
feat(build): introduces go modules (#557), by @bartoszmajsak
-
chore: minor fixes from the linter (#548), by @bartoszmajsak
-
chore: bumps golang to 1.14.7 (#513), by @bartoszmajsak
-
chore: streamlines assets generation (#510), by @bartoszmajsak
-
chore: process template during build using go code instead of oc (#509), by @bartoszmajsak
-
feat: csv generation in its own target (#508), by @bartoszmajsak
-
feat(ci): adds golangci-lint as gh action (#476), by @bartoszmajsak
-
fix: downloads protoc if not available (#463), by @bartoszmajsak
Testing
-
fix(e2e): ensure we check if there are deployments incase pods are no… (#614), by @aslakknutsen
-
fix(test): resolve timing issue in exec test (#610), by @aslakknutsen
-
fix(ci): uses
latesttag for master image builds (#572), by @bartoszmajsak -
feat: introduces new job for building and pushing images (#564), by @bartoszmajsak
-
feat(gh-action): cleans up pr images on pr close (#571), by @bartoszmajsak
-
feat(test-infra): support running test suit on prebuilt images (#565), by @aslakknutsen
-
fix(tests): template/yaml tests asserts against yaml not string (#562), by @bartoszmajsak
-
fix(test-infra): updates github action commands in linter (#558), by @aslakknutsen
-
fix: sets registry to internal before running operator tests (#532), by @bartoszmajsak
-
feat(tests): introduces tests against MicroK8s (#505), by @bartoszmajsak
-
fix(test): propagate the default route header (#499), by @aslakknutsen
-
build(deps): bumps golangci-lint to latest (#496), by @bartoszmajsak
-
fix(dev): get_protobuf should use "pwd" (#472), by @aslakknutsen
-
feat(tests): builds and pushes test images before the test suite starts (#453), by @bartoszmajsak
Highlights of v0.0.3 release
This release is mainly focused around improving stability and refactorings, but there is one notable feature worth mentioning.
Resolution of host name for target Resource
As users are completely free to name Target Resource(Deployment or DeploymentConfig), Service and VirtualServices etc, we improved resolution strategy which previously relied on pattern matching.
By resolving Services that could possibly match the Target Resource, we look for all Virtual Services that specify that Service/Host.
Support full local cluster dns names
VirtualServices and DestinationRules can now be defined with both short form or full dns name using the Host field and istio-workspace will still be able to find the connections.
Example: ratings vs ratings.namespace.svc.cluster.local
|
All changes in this release
New features
-
fix(release): improvements in release shell script [skip-e2e] (#396), by @bartoszmajsak
-
feat(cmd): version cmd prints short semver info [skip-e2e] (#391), by @bartoszmajsak
-
feature(operator): find target hostnames via Services instead of nami… (#378), by @aslakknutsen
-
feat(operator): support fully qualified host names for vs and dr (#375), by @aslakknutsen
-
feat(github): introduces label sync action (#374), by @bartoszmajsak
-
chore: minor refactoring - context and logger (#379), by @aslakknutsen
-
feat: logs version when starting the operator (#344), by @bartoszmajsak
Bug fixes
-
fix(operator): remove args and command from telepresence clone (#393), by @aslakknutsen
-
fix(docs): proper install snippet [skip-e2e] (#388), by @bartoszmajsak
-
fix(operator): give istio-workspace SA auth to create metrics service (#387), by @aslakknutsen
-
fix: cleans up linter usage (#385), by @bartoszmajsak
-
fix(operator): revert all manipulated virtual service routes (#351), by @aslakknutsen
-
fix: cleans up session on error (wrong deployment) (#349), by @bartoszmajsak
-
fix(template): creates replica if not exists (#342), by @bartoszmajsak
Latest dependencies update
-
build(deps): to 0.14.0 (#356)
-
github.com/google/go-github to 29.0.3 (#364)
-
github.com/onsi/ginkgo to 1.12.0 (#360)
-
github.com/onsi/gomega to 1.9.0 (#362)
-
github.com/operator-framework/operator-sdk to 0.15.2 (#366)
-
github.com/spf13/cobra to 0.0.6 (#369)
-
github.com/spf13/viper to 1.6.2 (#352)
-
go.uber.org/goleak to
75e74d7(#377) -
gopkg.in/fsnotify.v1 to 1.4.9 (#384)
Project infrastructure
-
fix(release): improvements in release shell script [skip-e2e] (#396), by @bartoszmajsak
-
fix: cleans up linter usage (#385), by @bartoszmajsak
-
feat(github): introduces label sync action (#374), by @bartoszmajsak
-
fix(test): generate a suitable deployment resource for a pure k8s ins… (#376), by @aslakknutsen
-
chore: bumps golang to 1.14 (#372), by @bartoszmajsak
Testing
-
fix(tests): controls tp version env var (#392), by @bartoszmajsak
-
test(generator): use generator in int test scenario (#386), by @aslakknutsen
-
fix(e2e): add to the members array instead of replacing it (#380), by @aslakknutsen
-
fix(test): generate a suitable deployment resource for a pure k8s ins… (#376), by @aslakknutsen
-
fix: uses username defined by IKE_CLUSTER_USER instead of oc whoami (#355), by @bartoszmajsak
-
feat: introduces ENV_FILE var to overwrite variables used in tests (#354), by @bartoszmajsak
Highlights of v0.0.2 release
Below you will find an exhaustive list of all the improvements since last release, but those are the most important changes:
Support for multiple development strategies
In v0.0.1 we only supported preparation of a telepresence session. In this release we’ve expanded this to allow specifying a strategy per Ref in the Session object.
Currently, we support two strategies: telepresence for local development and prepared-image.
The new prepared-image strategy allow you to setup a route for a pre-built image. It is a perfect fit for a CI system.
When using ike cli, the develop command will use the telepresence strategy while create will use the
prepared-image strategy. The create command is non blocking compared to develop. The create command comes with
a companion command delete to clean up when e.g. PR is merged.
Installing operator locally
Now you also can deploy operator to your local namespace, so where your project lives. This way only your namespace is watched.
Simply invoke ike install -l
To learn more head over to the official docs.
All changes in this release
New features
-
chore: improves error msg when namespace is not retrievable (#314), by @bartoszmajsak
-
feat: supports global envs for config (#272), by @aslakknutsen
-
feat: adds ability to validate engine Patches (#302), by @bartoszmajsak
-
chore: sets current dir while running telepresence (#296), by @bartoszmajsak
-
chore: removes hardcoded tp version (#293), by @bartoszmajsak
-
feat: aligns telepresence version used by client and cluster (#292), by @bartoszmajsak
-
feat(operator): allow to update the configuration of a ref in a session (#279), by @aslakknutsen
-
feat(cli): support creation and deletion of session without keeping cli alive (#252), by @aslakknutsen
-
feat(scenario): add a demo scenario and gateway host support (#256), by @aslakknutsen
-
feat: logs in plain-text when running as CLI (#253), by @bartoszmajsak
-
feat(cli): prints version hint when outdated (#251), by @bartoszmajsak
-
feat(strategy): support setting up a route for a prepared image (#248), by @aslakknutsen
-
feat: introduces cloning strategies (#235), by @aslakknutsen
-
feat: installs operator locally to selected namespace (#217), by @aslakknutsen
-
feat: adds labels to operator deployment (#216), by @bartoszmajsak
-
feat(dev): deploy operator to single namespace (#215), by @aslakknutsen
-
chore: aligns API group with maistra.io (#209), by @bartoszmajsak
-
feat: adds opencontainers labels to operator image (#211), by @bartoszmajsak
-
feat(template): externalize cloning of target resource (#206), by @aslakknutsen
-
feat(scan): scan for more virtual services to mutate (#200), by @aslakknutsen
-
feat(vs): do a better job at setting up the correct route (#154), by @aslakknutsen
-
feat(api): add API between Locators and Mutation (#98), by @aslakknutsen
-
feat: ike bash and zsh autocomplete (#181), by @bartoszmajsak
-
chore: moves cmd logic to pkg/ (#180), by @bartoszmajsak
Bug fixes
-
fix(cmd): installs operator to current namespace when --local mode used and no ns defined (#312), by @bartoszmajsak
-
fix(operator): mutate route if subset is missing (#308), by @aslakknutsen
-
feat(cli): return non 0 exit code on failure (#276), by @aslakknutsen
-
fix: enables use of IKE_CONFIG env var to pass config file (#275), by @bartoszmajsak
-
fix(cli): add sync flags to create/delete to allow ENV variables (#269), by @aslakknutsen
-
fix: handles error coming from root cmd (#265), by @bartoszmajsak
-
fix(develop): allow to join / leave session (#220), by @aslakknutsen
-
fix(api): apply correct json tag to inline resource (#198), by @aslakknutsen
Latest dependencies update
-
github.com/coreos/prometheus-operator to 0.30.0 (#114)
-
github.com/go-cmd/cmd to 1.1.0 (#311)
-
github.com/google/go-github to 28.1.1 (#262)
-
github.com/google/shlex to
e7afc7f(#316) -
github.com/onsi/ginkgo to 1.10.3 (#297)
-
github.com/onsi/gomega to 1.7.1 (#299)
-
github.com/operator-framework/operator-sdk to 0.13.0 (#320)
-
github.com/spf13/viper to 1.6.1 (#317)
-
go.uber.org/goleak to
7380c5a(#310) -
sigs.k8s.io/controller-runtime to 0.3.0 (#287)
-
ubi8/ubi-minimal to 8.1 (#303)
Project infrastructure
-
fix: tunes options for linters (#266), by @bartoszmajsak
-
chore(circleci): bumps ocp client to 4.1.16 (#264), by @bartoszmajsak
-
chore: introduces lint-prepare target (#258), by @bartoszmajsak
-
chore(deps): locks down prometheus-operator (#249), by @aslakknutsen
-
fix(circleci): aligns golang version between jobs (#195), by @bartoszmajsak
-
chore(linter): disables gofmt (#191), by @bartoszmajsak
-
fix(make): takes first segment of GOPATH for operator-sdk (#194), by @bartoszmajsak
-
chore(make): gopath fix + self-install (#192), by @bartoszmajsak
-
chore(docker): update to rh ubi8 minimal base image (#187), by @aslakknutsen
-
fix(macos): ensures istio-workspace builds on MacOS (#185), by @bartoszmajsak
-
chore(circleci): bumps golang to latest and introduces yaml anchors (#183), by @bartoszmajsak
Testing
-
chore(tests): registers a project into smmr without using jq (#315), by @bartoszmajsak
-
feat(test): test service html ui (#268), by @aslakknutsen
-
chore: enables deployment config e2e tests (#295), by @bartoszmajsak
-
feat: introduces env var handling for tests (#294), by @bartoszmajsak
-
feat: cleans up ServiceMeshMemberRoll spec after test execution (#283), by @bartoszmajsak
-
feat: test infra enhancements (#278), by @bartoszmajsak
-
fix(tests): deletes namespace on failure (#267), by @bartoszmajsak
-
fix(test): proper namespaces in cli completion test (#254), by @bartoszmajsak
-
feat: dumps logs for failing e2e tests (#250), by @bartoszmajsak
-
feat(tests): adjusts e2e tests to be ran against 4.1 clusters (#227), by @bartoszmajsak
-
feat: adds opencontainers labels to test image (#213), by @bartoszmajsak
-
feat: updates project to be used against Maistra 0.12 (#207), by @bartoszmajsak
-
test(e2e): verifies production route (#205), by @bartoszmajsak
-
feat: aligns test scenario image creation variables & Add logging to test service (#199), by @aslakknutsen
Highlights of v0.0.1 release
Inspired by @bobbytables talk from OSCON 2018 we started hacking on open source tooling realizing the idea of safe development on production.
Now, after long weeks in the making, we are extremely happy to announce the first release of istio-workspace project.
With this toolkit, we strive to enable developers to:
Develop their microservices locally, using the tools they love!
Connect to other services in the cluster and test their changes!
All of that without interfering with other developers and users!
All of it based on CNCF open source projects such as Istio and Telepresence.
How does it work?
-
ike developwraps Telepresence and let you start local development while being connected to the real services in the cluster-
in addition, it will restart the process when any files have been changed (see
--watchflag)
-
-
istio-workspaceoperator takes care of configuring routes in Istio so that only you can hit your service under development
To learn more head over to the official docs.