Skip to content

Commit 1c647d8

Browse files
committed
(human) more work on examples/env README
1 parent 0aee21d commit 1c647d8

File tree

1 file changed

+35
-14
lines changed

1 file changed

+35
-14
lines changed

examples/env/README.md

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -188,12 +188,6 @@ dev: env.#Container & {
188188
}
189189
```
190190

191-
### Things you can do
192-
193-
- use `env.Terminal`, `--on-failure`, `--no-exit`, or `hof env run` to enter interactive terminal sessions. Great for debugging failed image builds or CI.
194-
- put schemas on your Ansible equivalent templated config file rendering
195-
- sequence and order Terraform + Helm operations
196-
197191
### Run an example
198192

199193
```sh
@@ -253,8 +247,6 @@ cd k8s && \
253247

254248
#### CUE (user) files
255249

256-
[todo] make these links
257-
258250
- [schemas/env](../../schemas/env)
259251
- [catalogs/env](../../catalogs/env) (important, these are ordered to avoid cycles)
260252
- _note_, catalogs/env is an example and you can make your own, the only requirement is using the schemas/env
@@ -264,8 +256,8 @@ cd k8s && \
264256
- [`.veg/`](../../.veg) the kitchen sink, it's all the things for this repo
265257
- [examples/env](../../examples/env/)
266258
- `basic/` multi-stage build and 3-tier app
259+
- `advanced/` demonstrates more complex patterns and day-2 features
267260
- `adk/` commands example with matrix test & lint
268-
- `atproto/` docker compose like setup & app, full network in an env
269261
- `inception/` using docker, dagger, hof, helm, kubernetes from inside an env
270262

271263
#### Go (impl) files:
@@ -528,11 +520,11 @@ These are artifacts, intermediates, or resources you can work with
528520
529521
## Examples
530522
531-
### Multi-Stage Builds and Beyond, DAG style
523+
This repo is an excellent example, [`.veg/`](../../.veg) is a kitchen sink, it's all the things for this repo
532524

533-
- multi-stage
534-
- no need for yum rm
535-
- how binaries and dirs work
525+
[verdverm/testnet](https://github.com/verdverm/testnet) has a docker-compose like setup for [ATProtocol](https://atproto.com), build social apps, develop algos, run independent networks locally or for testing.
526+
527+
### Debian Base Container with Apt Caches
536528

537529
That long-time advice to install packages like this: `apt update && apt install && apt clean`... it's over!
538530
We can now attach caches, just like we do for languages like `go.mod` and `node_modules`,
@@ -722,14 +714,43 @@ cmd: {
722714
723715
```
724716
717+
725718
### Release Bundles
726719
727720
You can define release bundles and then assemble and publish them with a single command.
728721
729-
`hof env ...`
722+
_from the root of this repo_
730723
724+
```sh
725+
$ hof env list -e dist -S kind -S name
726+
NAME KIND PATH EXTRA
727+
sbom-cuemod cuefigSBOM dist.sbom.cuemod cuemod.cue
728+
sbom-fmt-black cuefigSBOM dist.sbom."fmt-black" fmt-black.cue
729+
sbom-fmt-prettier cuefigSBOM dist.sbom."fmt-prettier" fmt-prettier.cue
730+
sbom-github cuefigSBOM dist.sbom.github github.cue
731+
sbom-veg-dev cuefigSBOM dist.sbom.dev veg-dev.cue
732+
sbom-veg-hof cuefigSBOM dist.sbom.hof veg-hof.cue
733+
sbom-veg-min cuefigSBOM dist.sbom.min veg-min.cue
734+
sbom-veg-ops cuefigSBOM dist.sbom.ops veg-ops.cue
735+
sbom-vscode cuefigSBOM dist.sbom.vscode vscode.cue
736+
dist-cuemod exportDir dist.cuemod -> dist/cuemod
737+
dist-github exportDir dist.github -> dist/github
738+
dist-meta exportDir dist.meta -> dist/meta
739+
dist-vscode exportDir dist.vscode -> dist/vscode
740+
dist-fmt-black publishImage dist.images."fmt-black" -> host.docker.internal:5000/fmt-black
741+
dist-fmt-prettier publishImage dist.images."fmt-prettier" -> host.docker.internal:5000/fmt-prettier
742+
dist-veg-dev publishImage dist.images.dev -> host.docker.internal:5000/veg-dev
743+
dist-veg-hof publishImage dist.images.hof -> host.docker.internal:5000/veg-hof
744+
dist-veg-min publishImage dist.images.min -> host.docker.internal:5000/veg-min
745+
dist-veg-ops publishImage dist.images.ops -> host.docker.internal:5000/veg-ops
731746
```
732747
748+
```sh
749+
# validate a release is ready to go
750+
$ hof env sync -e dist -T v0.7.0-alpha.2
751+
752+
# export and publish artifacts for real
753+
$ hof env export -e dist -T v0.7.0-alpha.2 -t reg=ghcr.io/hofstadter-io
733754
```
734755
735756
### Agent or Dev Environments with Tools

0 commit comments

Comments
 (0)