-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
π§βπ» π¨ π§ π· Mise, Kind, and Tilt #955
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18364a2
to
47b7bdb
Compare
70eb385
to
9dbfc52
Compare
4012113
to
d5ada9e
Compare
8acc6cc
to
8ce73f7
Compare
6e92f95
to
0ff8e2d
Compare
9316d9b
to
f5440b1
Compare
K8s Regression Test Coverage
|
* Use Mise to install and manage tools * Use Mise Tasks to install module dependencies * Activate Mise managed Python venv * Make Poetry version a build arg, disable pip caching Docker Pull Through Caching * Add Docker pull-through caching for: * docker.io * gcr.io * ghcr.io * quay.io * registry.k8s.io * Delete docker cache container `kind:destroy` * Only delete the actual cache on `kind:destroy-all` Setup DBs, enable mise experimental * Set mise experimental in `.mise.toml` * Try cloning charts via SSH, fallback to HTTPS if failed * Setup Redis, Postgres, and PGAdmin for CloudAPI Setup Ledger * Detect system CPU Architecture * If `x86_64` then we deploy Ledger Nodes/Browser into Kind * Otherwise we use Docker Compose to build and deploy Ledger Nodes/Browser Istio K8s Native Sidecars * Enable Native Sidecars * Also reduce Istiod replicas from 2 to 1 Tilt CI Deploy NATS * Install Nats CLI via Mise * Bump Metrics Server `7.2.13` -> `7.2.14` * Bump Postgres `14.2.18` -> `14.2.23` * Add NATS NATS Wrapper chart * Create a small NATS wrapper chart with a post-install hook * Post install hook currently only bootstraps NATS KVs and Streams Remove Manage Script Disable Ledger Nodes/Browser Kind deployment * Ledger Nodes/Browser is just too unstable in K8s * Especially in resource constrained (github runners) environments
* Increase maximum parallel updates * Benthos depends on Redis and NATS * Resource Labels to make tilt navigation easier
* Pin Go and NATS CLI * Add Mise Task to run `tilt down -- --destroy` * Increase k8s upsert timeout in Tilt * Add tiltfile to recommended vscode extensions * Add notes about Windows and WSL for Mise and Kind
* Restore original Docker Compose and Manage script * Add Notes in Readme about deprecation of Docker Compose * Restore Makefile * Don't build ledger nodes if build is disabled
* Fix `tilt down` * Add some more mise tasks: * `tilt:down` - runs `tilt down` * `tilt:down:destroy` - runs `tilt down` and deletes Kind cluster * `tilt:down:destroy:all` - same as `destroy` but also deletes docker cache * `kind:create` depends on `kind:install:registry` and `kind:install:pull-through`
* Add steps for correct env vars to run tests * Ensure env vars on `mise run tests`
* Install Istio and Ingress Nginx at the same time * Make things depend on Ingress Nginx * Reduce parallel updates for improved stability * Get Docker Cache Logs Depend on Istio * Everything depends on Istio * Disable Auto Init on PGAdmin and Metrics Server * Remove `gcr.io` from docker cache
f5440b1
to
b020e4d
Compare
|
K8s Test Coverage
|
K8s Regression Test Coverage
|
K8s Test Coverage
|
K8s Regression Test Coverage
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Well, this is a big one...
It's finally here, the migration away from
./manage up
and Docker Compose πStandardize everything around Mise, Kind, and Tilt, enabling Kubernetes Native Development with live reloading.
Still to discuss: Migrate Helm Charts from private repo to this repo.
This will make maintaining the Helm Charts much easier.
Potential future improvements:
This will mean we can run multiple PRs at the same time, accelerating dev.
Mise, Kind, and Tilt
Docker Pull Through Caching
Add Docker pull-through caching for:
Delete docker cache container
kind:destroy
Only delete the actual cache on
kind:destroy-all
Setup DBs, enable mise experimental
.mise.toml
Setup Ledger
especially on resource restricted environments (github runners),
maintain using Docker Compose but only for Ledger Nodes/Browser
WRT Ledger Nodes/Browser:
I could add a check to see host resources (number of CPU cores) and
then decide whether or not to deploy Ledger Nodes/Browser in Kind.
Alternatively, I can add a CLI arg to decide between Compose Ledger
vs Kind Ledger.