Important
This project has not reached v1.0.0 and as such provides no backwards compatibility guarantees between versions. Pre v1.0.0 minor bumps will repesent breaking changes.
- k8s/ctrl: separate controller from run to avoid race conditions that could drop events before controller was ready to run (1cec9cf)
- deps: update dependencies (b3173e5)
- internal/wasi: do not instantiate wasip1 for compiling (ac9fa81)
- atc: remove dry-run takeoff log during flight validation (1424987)
- atc: log desired version in crdconvert endpoint (218fa1a)
- k8s/ctrl: use retry watcher to handle watcher restarts gracefully (3151ff7)
- pkg/openapi: support inline structs (4920ebe)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- atc/testing: move setup only exit to after conversions are setup (9c9eb1a)
- yoke: check resource ownership for releases in different namespaces (2f0b573)
- yoke: fix atc dashboard and refactor (c1547e7)
- atc: refactor mayday invocation (4c6f626)
- yoke/blackbox: fix command to support releases from multiple namespaces (6bde033)
- yoke: breaking change: change releases to be namespaced (cbc42eb)
- yoke: breaking change: disallow multi namespace flights by default and add --multi-namespaces flag (066c74e)
- atc: attempt to clear airway cache dir on recompilation (67ff745)
- atc: refactor module loading logic (d540f74)
- atc-installer: add new options and break out logic into go-gettable package (31cef8e)
- atc: test validation webhook for airway custom resources (b2beb8c)
- atc: added generic flight validation handler (162d825)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- yoke: takeoff with export to stdout via -out flag is hierarchical by namespace, group, version, kind, name, instead of flat (c2bb52b)
- yoke: breaking change: use a forward slash to separate segments in internal canonical representation of resources (5068867)
- debug: split wasi execute debugging into two separate calls for compilating and execution (a3f98b7)
- yoke: rename takeoff flag test-run to stdout (a778860)
- atc: on airway removal do not drop converter module as we keep CRDs around (1bdd52f)
- atc: add airway finalizer (4eb520e)
- k9s/ctrl: simplify queue to not wait for dequeue but expose a public channel and fix watcher to exit on not found (e9edee5)
- atc: use a compiled module cache to improve performance (ffcddae)
- atc-installer: add a validation webhook configuration for airways and test (b05851d)
- atc: add airway admission validation logic to check crds (7953c38)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- atc: implement graceful shutdown for atc server (56a7bbc)
- atc: test conversion endpoint (f222c3b)
- deps: update deps (ac20ecf)
- atc: add conversion webhook registration when airway.spec.wasmurls.converter is present (d5665b8)
- atc: add basic handler for conversions (216a86d)
- atc: introduce wasmLock for locking flights and converters separately (188bb8b)
- atc: BREAKING CHANGE: change airway.spec.wasmUrls schema and support https atc server (22d5bcc)
- atc-installer: add tls certs (6d1fdc0)
- internal/releaser: fix gh release of cli (2ad5f27)
- yoke: fix atc back navigation from revision yaml view (6aefe85)
- yoke: fix atc back navigation in resource view (2de8600)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- yoke: breaking change: change yoke internal secret naming to support atc releases that include type flight information (654a14c)
- yoke: add initial draft of atc subcommand (511f31b)
- k8s/controller: use contextual logger in event loop (4ea004e)
- atc: restart watcher on kube events being closed (295621d)
- yoke: log to stderr after successful takeoff (01703c6)
- project: add code of conduct and contributing markdowns (cc42a37)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- internal/releaser: properly check latest tags (7fcd88e)
- yoke/testing: update tests to check labels (390e67f)
- internal/releaser: check for breaking changes and bump minor (ebf677c)
- yoke: ensure flight dependecies are labeled with yoke metadata (b9ba4b2)
- deps: update dependencies (3baadfc)
- yoke: breaking change: remove resource-mapping and use labels instead (2941bcf)
- yoke: fix segfault of wasm module close on invalid wasm inputs (5fd75ea)
76 commits
- internal/releaser: tag repo after dockerbuilds (79d1084)
- internal/releaser: fix target versions for wasm and docker releases (fc3435c)
- internal/releaser: support releasing from local branch (1596caa)
- atc/testing: make setup test compatible with nodeports for demos (9d09c61)
- workflows/pipeline: rename releaser to pipeline in workflows (dbe8bb6)
- yokecd: added yokecd suffix to yokecd Dockerfile (08a3016)
- atc: fixed mayday bug where updating status was not updating unstructuted object (c4f1755)
- refactor: reorder imports (087b4a7)
- atc/testing: fix backend example selector (019dd90)
- internal/releaser: check against non-prefixed tag when releasing yoke cli (8cf503e)
- internal/releaser: release yoke cli on change (24c55f9)
- internal/releaser: refactor (3d22efe)
- internal/releaser: revert back to main branch instead of main commit reference (6f18588)
- fix(git-state): bad merge/stash-apply were causing compilation errors (903a53d)
- internal/releaser: release dockerfiles (5b7e436)
- internal/releaser: compare binary data for releasing wasm (3455567)
- gha: install latest kind for testing (bc7695d)
- atc: commit wasmcache flight.wasm for compilation reasons (65bfb92)
- atc-installer: refactor (f2f5930)
- internal/k8s: add airway to readiness check (3e0d433)
- testing: e2e testing spawns take responsibility for spawning kind clusters (fc8394d)
- airway: refactor (d0a8bdd)
- airway: support wasmUrl per served version of crd (819bc01)
- atc: set default namespace on namespaced scope flights with empty namespace field (301bfec)
- atc: default to passing entire custom resource as input (7b86581)
- atc: less flaky status updates (3074ef2)
- pkg/openapi: support Enum and XValidations struct tags (0417d76)
- pkg/openapi: support basic validation via struct tags (ec9c794)
- atc: testing backend flight should use backendSpec (5234d6a)
- k8s/ctrl: queue no longer needs concurrency hint (119fd66)
- atc: first initial happy test (ac4752d)
- atc: refactor (25820eb)
- atc: add status to flights (2e1df1e)
- k8s/ctrl: unshift queue on dequeue (4145872)
- atc: do not leak any goroutines on cancelation (113558e)
- atc-installer: configure labels and annotations on atc deployment (b137cbe)
- k8s/ctrl: drop status events (77ddd41)
- atc: refactor (2465395)
- atc: update atc readme (30047b7)
- airway: fixDriftInterfal use go time.Duration format (9216572)
- k8s/ctrl: added jitter to exponentional backoff in reconcile loops (0186569)
- atc: rename fixDrift to fixDriftAfterSeconds (583a288)
- atc: add fixDrift in airway configuration (0bf391f)
- atc: use createCRDs configuration (38093d3)
- atc: remove Inprogress status (cc3073f)
- pkg/apis/airway/v1: proper type splitting for reuse in other packages (afe748a)
- atc-installer: make createCrds optional (0bd56f0)
- pkg/openapi: minimalistic kube style openapi generation (95e6a86)
- examples/kube: use k8s.io/api instead of client-go (1ea0d43)
- refactor: regorganize imports accross project (240ea82)
- atc-installer: use apimachinery yaml package for decoding (85ec233)
- atc: add createCrds to airway spec (43128b7)
- atc: introduced typed airway (5b5ffc2)
- atc: refactor (f6dbdce)
- k8s/controller: don't requeue active events until reconcile is done (0eaa7f7)
- atc: add support for airway status (2021634)
- atc: add atc teardown (7033ef6)
- atc: replace flight controllers on change to airway (b822c2c)
- atc: refactor and add loopId to reconcile loop attributes (0c9e620)
- k8s/controller: invalidate timers if new events are processed before a requeue is triggered (d554dcf)
- atc: add ownerReferences to flight resources produced by atc airway underlying flight (2ad489e)
- atc: implemented cleanup finalizer for flight resources (73e768d)
- atc: use rwlock for accessing cached wasm (27323e4)
- atc: refactor logic out of main run function into atc type (6f67787)
- atc: added inline first draft of atc controller logic (16704dd)
- atc-installer: fix airway crd scope to cluster (4caac50)
- refactor: moved controller logic from cmd/atc into internals/k8s/controller (4cd55d9)
- atc-installer: fix airway schema (3c2097a)
- atc-installer: add deployment and service account (a962bab)
- atc-installer: add first draft of airway crd (47d6f7e)
- atc: fix queue to act as a proper queue (51486c0)
- atc: add controller with simple loop and requeue impl (edc322f)
- atc: basic event queue impl (24a9a19)
- atc: worker wip (7d4fc02)
- atc: added shell for atc and atc-installer (3beffe2)
- cmd/atc: initial thoughts in readme (dce5d0f)
- yokecd-installer: update installer to use argo-helm/argo-cd chart 7.6.12 (e1085cb)
- yokecd-installer: use IfNotPresent for image pull policy (14e5554)
- yokecd: add secret reference templating support for wasm urls (66b6437)
- ownership: update org from davidmdm to yokecd (3a08306)
- yoke/takeoff: add compilation cache flag (1c05468)
- deps: use wazero v1.6.0 for fast wasm compile times (457dbe8)
- chore: update module version to go1.23.0 (65dca73)
- chore: update dependencies (c99881a)
- cmd/blackbox: fix active revision when listing release revisions (e08dd7f)
- chore: update dependencies (ec169ac)
- yokecd: use yoke.EvalFlight instad of low-level wasi.Execute to be more compatible with pkg/Flight helpers (87230e9)
- cmd/internal/changelog: add dates to tag (6163eae)
- cmd/internal/changelog: fix issue where multiple tags on same commit would only show one tag (dae2c54)
- cmd/internal/changelog: added internal command to generate changelog for project (c98628b)
Caution
This version contains breaking changes, and is not expected to be compatible with previous versions
- yoke: breaking change: represent revision history as multiple secrets (cde0d83)
- yoke/takeoff: switch default to true for --create-crds flag (4ffe721)
- cmd: added --poll flag to set poll interval for resource readiness during takeoff and descent (63a6437)
- yokecd-installer: bump argocd chart to version 7.1.3 (ea662ae)
- deps: update project dependencies (2785be6)
- pkg/helm: support subchart dependencies (969e592)
- cmd/takeoff: test --wait option (14f3c67)
- pkg/yoke: add wait option to descent (e7580be)
- pkg/yoke: add wait option to takeoff (2721de8)
- internal/k8s: support readiness checks for workloads resources like pods, deployments, statefulsets, replicasets, and so on (21d2e7c)
- pkg/yoke: move wasm related code into same file (2067753)
- yoke/debug: add debug timers to descent, mayday, and turbulence commands (f377a27)
- yoke/takeoff: wait for namespace created by -namespace to be ready (178bf8d)
- pkg/yoke: set release in env of flight; update pkg/flight accordingly (488985e)
- cmd/yoke: add create namespace and crd logic to takeoff (#20)
- cmd/yoke: add create namespace and crd logic to takeoff
- pkg/yoke: refactor move all takeoff command logic into commander.Takeoff (5aebdcc)
- pkg/helm: do not render test files (df2329f)
- yoke: use stdout to determine color defaults for takeoff and turbulence (164c7b7)
- yoke: concurrently apply resources during takeoff (50cad15)
- yoke: rename global -verbose flag to -debug (a9a803c)
- yoke: add takeoff diff-only tests (824d4fb)
- refactor: stdio, consolidate use of canonical object map (f5e2dff)
- formatting: fix import order (124d8a6)
- refactor: add contextual stdio for better testing (91c8391)
- yoke: update xcontext dependency (9c6c178)
- yoke: use canonical object map for takeoff diffs (7a9f0ff)
- Added --diff-only to takeoff command (#17) (e4c8a25)
- yoke: drift detection (3ab27a7)
- yoke: add drift detection (3e1e2a9)
- readme: add link to official documentation (bdf3565)
- yokecd-installer: make yokecd docker image version configurable (821d6e3)
- yoke: add namespace to debug timer (4e8ab04)
- refactor: fix import orderings (6d3a09f)
- yoke: ensure namespace exists before applying resources (8cee965)
- yoke: fix help text mistakes (a6657ae)
- yokecd: remove wasm after use in build mode (7dbd330)
- releaser: fix patch inference (960853a)
- pkg: added flight package with convenience functions for flight execution contexts (fd401ea)
- yokecd: require wasm field at config load time (660a913)
- yoke: added verbose mode with debug timings for functions (2f87cef)
- yoke: improve takeoff help text (b74f17d)
- yoke: add wazero to version output (af90ae6)
- releaser: release patch versions from now on (eac2db4)
- update dependencies (44a6dd7)
- yoke: fix force conflicts flag not propagated (a8a086c)
- yoke: interpret http path suffixes with .gz as gzipped content (e68f8ba)
- yokecd: use argo-helm/argocd for installer (a3fe4df)
- yoke: use secrets instead of configmaps for storing revision state (5e39717)
- add tests to workflow (01608f8)
- revert wazero to v1.6.0 and use compiler (c5d48bf)
11 commits
- fix compressor (5dc59c0)
- fix download err (2552acb)
- release yokecd-installer (ed4d68d)
- release yokecd as gz (95e83db)
- add yokecd releaser workflow (579ca0c)
- yokecd: remove leading slashes for wasm parameter (9a69c9e)
- support one parameter wasm instead of wasmURL and wasmPath (02245e2)
- yoke: add resource ownership conflict test (8809ad7)
- yoke: support gzip wasms (8d3dbb1)
- yokecd: add suport for wasmPath parameter (cfc3952)
- test simplified yokecd application (70c44d3)
23 commits
- hardcode yokecd as plugin name, and simplified plugin definition (0de06a9)
- removed yoke exec in favor of takeoff --test-run (a88793b)
- use wazero interpreter instead of compiler (f87011a)
- fix http proto check for wasm loading (b8cd522)
- added yoke exec for debugging wasm (e77f607)
- revert wazero to v1.6.0 (5402e44)
- updates deps (e69bbfd)
- make flight marshalling less verbose by omitting app source (2eaa0db)
- remove website (407617c)
- update debug logs (da35b1e)
- fix sync policy support (0c99311)
- add basic syncPolicy support (9361903)
- add plugin parameter (602a6e7)
- fixed flight rendering logic in yokecd (12351c1)
- make flight spec embed application spec (fd744d5)
- yokecd in progress (541cdac)
- add more debug info to yokecd (34e269a)
- add yokecd example flight with patched argocd-repo-server (d24024b)
- fix go.sum (1327974)
- basic code for yokecd (396ccfc)
- add version to helm2go (08bfcac)
- update helm2go to default to map[string]any if cannot generate values type (48b3a22)
- add force-conflicts flag for takeoff (c058acb)
14 commits
- use server-side apply patch (68f1d97)
- use official argocd install yaml for argo example (bb46eb3)
- try create before apply (172fc7f)
- support non-namespaced resources (abcd57a)
- add skipDryRun and namespace flags to takeoff (86d2081)
- minor refactor of k8s client (1c5f65a)
- udpated helm2go output and added mongodb example (7227a24)
- add schema bool flag to helm2go (cd9b074)
- helm2go: infer from values (a00cb9c)
- redis example uses generated flight from helm2go (ce6a82e)
- helm2go generates flight package instead of type file (b123bb1)
- refactored helm2go (5326c47)
- generated pg values.go using helm2go (0c360bb)
- renamed platters to flights and added helm2go script (9da0265)
21 commits
- starting website (dd8c995)
- added apply dry run failure test (10c65b7)
- remove .DS_Store (f52068a)
- fix go.sum (ae126b4)
- refactored tests to not use TestMain (7a5213f)
- formatting (607b346)
- remove .DS_Store (1400e5b)
- the great renaming to yoke (578ac2c)
- ported descent and mayday to sdk (a44cf26)
- started sdk restructuring (6a58b9b)
- add export to stdout (44b071f)
- rename k8 to k8s (3223e8b)
- refactor kube example (a5f85c4)
- refactored example platters around (30067fc)
- wrote first test (7f4e9a9)
- add blackbox --mapping flag (8506be6)
- use all prefix for embedding private templates in helm expanded example (f1850bf)
- load helm chart from embed.FS work in progress (0ce494e)
- added load chart from FS: wip (70b3cee)
- update helmchart example to make it configurable (c5133ef)
- update halloumi metadata (11c9b2e)
- update verison command to show k8 client-go version as well (831fdd7)
- change diff indentation (f3173be)
- print diff between revisions (706e050)
- refactored revision source (6aa96a5)
- added shas to revisions (ce5a7da)
- refactor blackbox (fc4ad5a)
- update blackbox output (505e281)
- finish first pass at blackbox command (558273b)
- update deps and formatting (05b5096)
- blackbox under construction (91d3fa7)
- removed resource utility package in favor of applyconfigurations (2de98b0)
- first working pass of descent command (91cc860)
- first pass at descent command (c71368b)
- modified configmap structure (cb0691f)
- dynamic platter example (043358a)
- updated canonical name to include api version and changed deploy to apply (78980fb)
- adding to resource utility package (4bf13be)
- do not apply identical revisisions but do a noop (750de31)
- added beginning of a basic utility package for resource definitions (cd43c11)
- allow wasm executable to receive stdin as input (d7d9922)
- add outdir option to takeoff instead of render or runway command (c860e31)
- support yaml encodings of platters (8f4cde7)
- add single or multi resource platter support and stdin source support (20fc25f)
- fix newline after root help text if no command provided (2d4e04f)
- small refactoring (acc3351)
- add dry run before applying resources (3cb6d54)
- add halloumi logo to readme (f98fb12)
- update readme (087d62c)
- added readme, license, and more aliases (a8e6152)
- go directive 1.22 (b965e58)
22 commits
- added root command help text (26c24a3)
- takeoff help text (11a8602)
- formmatting (94f9345)
- remove wasibuild go utility and replace with task file (61ca598)
- refactored into subcommands (2db7d5d)
- remove orphans (7efdb5d)
- save revisions as unstructured resources (51bab9b)
- add halloumi-release-label (51d98f7)
- add revisions (55bf01e)
- update deps (2a6072b)
- namespace support (d4aee29)
- basic annotations (405dd75)
- k8 successful basic apply (33515ae)
- k8: wip (e846862)
- refactor (5a59247)
- allow haloumi packages to be invoked with flags (a368fce)
- add .gitignore (bee5929)
- refactor (379d1fb)
- small utility for building wasi (8bc22d5)
- first haloumi binary working (08bfa45)
- starting haloumi (47b28fc)
- initial wazero runtime (ac081a8)