Skip to content

Commit 33de02b

Browse files
committed
feat: support parse source info from git repo
Signed-off-by: chlins <[email protected]>
1 parent 4764d65 commit 33de02b

File tree

12 files changed

+315
-28
lines changed

12 files changed

+315
-28
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "pkg/source/testdata/git-repo"]
2+
path = pkg/source/testdata/git-repo
3+
url = https://github.com/octocat/Hello-World.git

cmd/build.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ func init() {
5959
flags.BoolVarP(&buildConfig.Insecure, "insecure", "", false, "turning on this flag will disable TLS verification")
6060
flags.BoolVar(&buildConfig.Nydusify, "nydusify", false, "[EXPERIMENTAL] nydusify the model artifact")
6161
flags.MarkHidden("nydusify")
62+
flags.StringVar(&buildConfig.SourceURL, "source-url", "", "source URL")
63+
flags.StringVar(&buildConfig.SourceRevision, "source-revision", "", "source revision")
6264

6365
if err := viper.BindPFlags(flags); err != nil {
6466
panic(fmt.Errorf("bind cache list flags to viper: %w", err))

go.mod

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ require (
99
github.com/distribution/reference v0.6.0
1010
github.com/dustin/go-humanize v1.0.1
1111
github.com/emirpasic/gods v1.18.1
12+
github.com/go-git/go-git/v5 v5.16.0
1213
github.com/minio/sha256-simd v1.0.1
1314
github.com/opencontainers/go-digest v1.0.0
1415
github.com/opencontainers/image-spec v1.1.1
@@ -23,43 +24,57 @@ require (
2324
)
2425

2526
require (
27+
dario.cat/mergo v1.0.0 // indirect
28+
github.com/Microsoft/go-winio v0.6.2 // indirect
29+
github.com/ProtonMail/go-crypto v1.1.6 // indirect
2630
github.com/VividCortex/ewma v1.2.0 // indirect
2731
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect
2832
github.com/beorn7/perks v1.0.1 // indirect
2933
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
3034
github.com/cespare/xxhash/v2 v2.3.0 // indirect
35+
github.com/cloudflare/circl v1.6.1 // indirect
36+
github.com/cyphar/filepath-securejoin v0.4.1 // indirect
3137
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
3238
github.com/docker/go-metrics v0.0.1 // indirect
3339
github.com/fatih/color v1.7.0 // indirect
3440
github.com/fsnotify/fsnotify v1.8.0 // indirect
41+
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
42+
github.com/go-git/go-billy/v5 v5.6.2 // indirect
3543
github.com/go-logr/logr v1.4.2 // indirect
3644
github.com/go-logr/stdr v1.2.2 // indirect
3745
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
46+
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
3847
github.com/google/uuid v1.6.0 // indirect
3948
github.com/gorilla/mux v1.8.2-0.20240619235004-db9d1d0073d2 // indirect
4049
github.com/grpc-ecosystem/grpc-gateway/v2 v2.23.0 // indirect
4150
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
4251
github.com/inconshreveable/mousetrap v1.1.0 // indirect
52+
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
53+
github.com/kevinburke/ssh_config v1.2.0 // indirect
4354
github.com/klauspost/compress v1.17.11 // indirect
4455
github.com/klauspost/cpuid/v2 v2.2.3 // indirect
4556
github.com/mattn/go-colorable v0.1.2 // indirect
4657
github.com/mattn/go-isatty v0.0.8 // indirect
4758
github.com/mattn/go-runewidth v0.0.16 // indirect
4859
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
4960
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
61+
github.com/pjbgf/sha1cd v0.3.2 // indirect
5062
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
5163
github.com/prometheus/client_golang v1.20.5 // indirect
5264
github.com/prometheus/client_model v0.6.1 // indirect
5365
github.com/prometheus/common v0.60.1 // indirect
5466
github.com/prometheus/procfs v0.15.1 // indirect
5567
github.com/rivo/uniseg v0.4.7 // indirect
5668
github.com/sagikazarmark/locafero v0.7.0 // indirect
69+
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
70+
github.com/skeema/knownhosts v1.3.1 // indirect
5771
github.com/sourcegraph/conc v0.3.0 // indirect
5872
github.com/spf13/afero v1.12.0 // indirect
5973
github.com/spf13/cast v1.7.1 // indirect
6074
github.com/spf13/pflag v1.0.6 // indirect
6175
github.com/stretchr/objx v0.5.2 // indirect
6276
github.com/subosito/gotenv v1.6.0 // indirect
77+
github.com/xanzy/ssh-agent v0.3.3 // indirect
6378
go.opentelemetry.io/contrib/bridges/prometheus v0.57.0 // indirect
6479
go.opentelemetry.io/contrib/exporters/autoexport v0.57.0 // indirect
6580
go.opentelemetry.io/otel v1.32.0 // indirect
@@ -82,13 +97,14 @@ require (
8297
go.opentelemetry.io/otel/trace v1.32.0 // indirect
8398
go.opentelemetry.io/proto/otlp v1.3.1 // indirect
8499
go.uber.org/multierr v1.11.0 // indirect
85-
golang.org/x/net v0.37.0 // indirect
100+
golang.org/x/net v0.39.0 // indirect
86101
golang.org/x/sys v0.32.0 // indirect
87102
golang.org/x/term v0.31.0 // indirect
88103
golang.org/x/text v0.24.0 // indirect
89104
google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 // indirect
90105
google.golang.org/genproto/googleapis/rpc v0.0.0-20241223144023-3abc09e42ca8 // indirect
91106
google.golang.org/grpc v1.68.0 // indirect
92107
google.golang.org/protobuf v1.36.1 // indirect
108+
gopkg.in/warnings.v0 v0.1.2 // indirect
93109
gopkg.in/yaml.v3 v3.0.1 // indirect
94110
)

0 commit comments

Comments
 (0)