mirror of
https://github.com/Quiq/docker-registry-ui.git
synced 2025-09-29 14:25:19 +00:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
bbefd03dbd | ||
|
f7e40bece8 | ||
|
b49076db7c |
@@ -1,5 +1,11 @@
|
||||
## Changelog
|
||||
|
||||
## 0.10.2 (2024-05-31)
|
||||
|
||||
* Fix repo tag count when a repo name is a prefix for another repo name(s)
|
||||
* Allow to override any config option via environment variables using SECTION_KEY_NAME syntax, e.g.
|
||||
LISTEN_ADDR, PERFORMANCE_TAGS_COUNT_REFRESH_INTERVAL, REGISTRY_HOSTNAME etc.
|
||||
|
||||
## 0.10.1 (2024-04-19)
|
||||
|
||||
* Rename cmd flag `-purge-from-repos` to `-purge-include-repos` to purge tags only for the specified repositories.
|
||||
|
@@ -1,4 +1,4 @@
|
||||
FROM golang:1.22.2-alpine3.19 as builder
|
||||
FROM golang:1.22.3-alpine3.19 as builder
|
||||
|
||||
RUN apk update && \
|
||||
apk add ca-certificates git bash gcc musl-dev
|
||||
|
@@ -27,6 +27,9 @@ Docker images [quiq/registry-ui](https://hub.docker.com/r/quiq/registry-ui/tags/
|
||||
|
||||
The configuration is stored in `config.yml` and the options are self-descriptive.
|
||||
|
||||
You can override any config option via environment variables using SECTION_KEY_NAME syntax,
|
||||
e.g. `LISTEN_ADDR`, `PERFORMANCE_TAGS_COUNT_REFRESH_INTERVAL`, `REGISTRY_HOSTNAME` etc.
|
||||
|
||||
### Run UI
|
||||
|
||||
docker run -d -p 8000:8000 -v /local/config.yml:/opt/config.yml:ro quiq/registry-ui
|
||||
|
2
main.go
2
main.go
@@ -51,6 +51,8 @@ func main() {
|
||||
if err != nil {
|
||||
panic(fmt.Errorf("fatal error reading config file: %w", err))
|
||||
}
|
||||
viper.SetEnvKeyReplacer(strings.NewReplacer(".", "_"))
|
||||
viper.AutomaticEnv()
|
||||
|
||||
// Init registry API client.
|
||||
a.client = registry.NewClient()
|
||||
|
@@ -272,8 +272,8 @@ func (c *Client) GetImageCreated(imageRef string) time.Time {
|
||||
return cfg.Created.Time
|
||||
}
|
||||
|
||||
// TagCounts return map with tag counts according to the provided list of repos/sub-repos etc.
|
||||
func (c *Client) TagCounts(repoPath string, repos []string) map[string]int {
|
||||
// SubRepoTagCounts return map with tag counts according to the provided list of repos/sub-repos etc.
|
||||
func (c *Client) SubRepoTagCounts(repoPath string, repos []string) map[string]int {
|
||||
counts := map[string]int{}
|
||||
for _, r := range repos {
|
||||
subRepo := r
|
||||
@@ -281,7 +281,7 @@ func (c *Client) TagCounts(repoPath string, repos []string) map[string]int {
|
||||
subRepo = repoPath + "/" + r
|
||||
}
|
||||
for k, v := range c.tagCounts {
|
||||
if strings.HasPrefix(k, subRepo) {
|
||||
if k == subRepo || strings.HasPrefix(k, subRepo+"/") {
|
||||
counts[subRepo] = counts[subRepo] + v
|
||||
}
|
||||
}
|
||||
|
@@ -1,3 +1,3 @@
|
||||
package main
|
||||
|
||||
const version = "0.10.1"
|
||||
const version = "0.10.2"
|
||||
|
2
web.go
2
web.go
@@ -76,7 +76,7 @@ func (a *apiClient) viewCatalog(c echo.Context) error {
|
||||
}
|
||||
data.Set("repos", repos)
|
||||
data.Set("isCatalogReady", a.client.IsCatalogReady())
|
||||
data.Set("tagCounts", a.client.TagCounts(repoPath, repos))
|
||||
data.Set("tagCounts", a.client.SubRepoTagCounts(repoPath, repos))
|
||||
data.Set("tags", tags)
|
||||
if repoPath != "" && (len(repos) > 0 || len(tags) > 0) {
|
||||
// Do not show events in the root of catalog.
|
||||
|
Reference in New Issue
Block a user