1
0
Fork 0
mirror of https://github.com/imjasonh/kontain.me synced 2026-07-18 06:40:04 +00:00
Commit graph

281 commits

Author SHA1 Message Date
2b7bb23ae2 git: annotate the checkout layer with the resolved commit, source, and ref
gitLayer now returns the commit it checked out (dereferencing annotated
tags). build records it, the clone URL, and the ref name as
me.kontain.git.{commit,source,ref} annotations on the checkout layer's
manifest descriptor, so the commit a :branch / :tag / :latest pull
resolved to is visible from the image manifest. The test now also checks
gitLayer's returned commit matches what resolveRef resolved.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 13:05:51 -04:00
Jason Hall
6f2d87dec0
Merge pull request #224 from imjasonh/claude/stream-packfile-to-tar-ZjahP
git: stream worktree into the layer instead of unpacking to disk
2026-05-12 12:47:33 -04:00
d3d7e20500 git: own the checkout as the image's user so git can write to it
The layer's entries were root-owned, but cgr.dev/chainguard/git runs as
uid 65532, so `git fetch`/`git commit` inside the checkout failed with
"Permission denied" creating .git/FETCH_HEAD. Stamp the base image's
runtime uid/gid onto every layer entry, and explicitly emit the
checkout's parent directories (git/, git/<repo>/, git/<repo>/.git/) so
the image extractor doesn't auto-create them root-owned.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 12:45:50 -04:00
Claude
b00925bf9e
git: assert objects stay packed in the layer
Guards against a regression where go-git would unpack the fetched packfile
into loose objects, which would put the repo's whole decompressed contents in
memory.

https://claude.ai/code/session_01Jfhuuwb5haNaasc9hs53jw
2026-05-12 15:28:42 +00:00
Claude
61e2ace4bc
git: stream worktree into the layer instead of unpacking to disk
git.kontain.me used to clone+checkout a repo onto Cloud Run's tmpfs (memory)
and then tar the result. Now it fetches the packfile into an in-memory git dir,
walks the requested commit's tree, and streams each blob straight into the
layer tar. Only the packfile bytes (plus go-git's delta cache) are buffered, so
memory no longer scales with the size of the checked-out worktree.

The shipped .git directory is preserved (with core.bare unset and a generated
index) so the git CLI still works inside the checkout. Object SHAs change since
the tar is rebuilt differently, but the contents are the same.

https://claude.ai/code/session_01Jfhuuwb5haNaasc9hs53jw
2026-05-12 14:54:11 +00:00
Jason Hall
0b1057459f
Merge pull request #223 from imjasonh/deps
update deps
2026-05-12 09:11:39 -04:00
29b97f8dd9 update deps
Signed-off-by: Jason Hall <imjasonh@gmail.com>
2026-05-12 09:09:26 -04:00
2e4488f6d3 add git.kontain.me
Signed-off-by: Jason Hall <imjasonh@gmail.com>
2026-05-11 21:42:04 -04:00
5d020bef59 bump deps
Signed-off-by: Jason Hall <imjasonh@gmail.com>
2026-04-02 18:16:22 +01:00
c9c7d8731f also host infinite-git.kontain.me from external repo
Signed-off-by: Jason Hall <imjasonh@gmail.com>
2026-04-02 18:12:21 +01:00
Jason Hall
dc96e41aa3
put the train back on its rails
Signed-off-by: Jason Hall <jason@chainguard.dev>
2025-02-14 03:52:52 -06:00
Jason Hall
63d4d47f3b
update deps
Signed-off-by: Jason Hall <jason@chainguard.dev>
2025-02-14 03:32:27 -06:00
Jason Hall
b2021a0d88
bump go deps
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-31 15:48:47 -05:00
Jason Hall
379695ef28
add notification channel
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-31 15:44:38 -05:00
Jason Hall
b9cc0342fb
alerts
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-24 13:29:47 -05:00
Jason Hall
c329df25bf
add random image prober and prober dashboard
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-22 09:56:15 -05:00
Jason Hall
794dbed8cb
use glue dashboards, fix tests
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-19 20:02:31 -05:00
Jason Hall
d901616d26
add dashboards
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-12-07 22:42:46 -07:00
Jason Hall
ad02c93765
remove pipefail
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-26 12:51:16 -05:00
Jason Hall
1ffecd8d25
remove module indirection
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-20 10:39:18 -06:00
Jason Hall
edc2261325
streamline GHA
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-17 10:47:45 -05:00
Jason Hall
8e999f95f4
drop test.sh, fmt on CI
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-17 10:44:49 -05:00
Jason Hall
d13b71d327
moar context
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-15 09:32:51 -05:00
Jason Hall
80cfb3f0f6
Update ci.yaml 2023-11-14 22:17:49 -05:00
Jason Hall
28dbbeb511
Update deploy.yaml 2023-11-14 22:17:27 -05:00
Jason Hall
7c246f748f
bump GHA deps
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-14 21:42:53 -05:00
Jason Hall
787ea7e9b0
bump deps
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-14 21:39:50 -05:00
Jason Hall
9c3366aea9
go mod tidy
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-14 21:31:34 -05:00
Jason Hall
f95c30bdfd
use slog, refactor TF
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-11-14 21:27:18 -05:00
Jason Hall
add190f2a2
Update go.mod 2023-06-09 09:28:13 -04:00
Jason Hall
d062cd2f07
fix CORS on the bucket
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-05-08 14:43:06 -04:00
Jason Hall
22db212ec7
on second thought, let's not use graphviz; 'tis a silly place
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-04-27 21:33:21 -04:00
Jason Hall
2f72f14aaf
pipe straight to dot
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-04-27 18:29:13 -04:00
Jason Hall
113c1a6d07
upload plan more better
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-04-27 17:03:09 -04:00
Jason Hall
9eaad64ecf
upload plan.png
Signed-off-by: Jason Hall <jason@chainguard.dev>
2023-04-27 16:48:51 -04:00
Jason Hall
45af312696
keep tf state in GCS 2023-04-27 15:10:24 -04:00
Jason Hall
2b88a57ffb
fix deploy 2023-04-27 14:50:36 -04:00
Jason Hall
7bfb91239a
fix deploy 2023-04-27 14:47:41 -04:00
Jason Hall
efb708aab3
fix CI 2023-04-27 14:44:45 -04:00
Jason Hall
eb074f3593
Merge pull request #175 from imjasonh/tf
deploy using terraform
2023-04-27 14:43:57 -04:00
Jason Hall
b47e970e4e
fix CI 2023-04-26 14:09:35 -04:00
Jason Hall
ee97133f80
fix CI, bump ko 2023-04-26 13:24:42 -04:00
Jason Hall
762f765c9c
handle base images and root domain 2023-04-26 11:29:30 -04:00
Jason Hall
194e774baa
some tweaks 2023-04-26 09:46:00 -04:00
Jason Hall
d194a4f550
deploy using terraform
- remove some apps (cowsay, transparency, estargz)
- start to move DNS zone management into TF too (optional)
- update GH workflow to deploy using TF

TODO:
- store state in GCS
- define one-time setup to grant GHA SA permissions it needs to deploy
- documentation for Future Jason
- cosign_verify base images
- cosign_sign images and cosign_verify before deploy
2023-04-25 10:56:19 -04:00
Jason Hall
2e1f107239
apko: update to use wolfi packages 2023-01-31 00:20:57 -05:00
Jason Hall
3e1686e26a
update setup-ko, bump mirror resources 2022-09-08 09:14:00 -04:00
48af8f85cc
ensure CORS is enabled when deploying 2022-06-10 09:01:43 -04:00
086517ba78
Enable CORS for mirror.kontain.me 2022-06-09 22:27:00 -04:00
d4c362ad95
fix link, add readme 2022-06-03 14:44:45 -04:00