mirror of
https://github.com/distribution/distribution.git
synced 2025-07-05 11:37:18 +00:00
updated fork
This commit is contained in:
parent
5c9959b417
commit
c02f410ad9
4
.github/ISSUE_TEMPLATE/config.yml
vendored
4
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -1,8 +1,8 @@
|
|||||||
blank_issues_enabled: false
|
blank_issues_enabled: false
|
||||||
contact_links:
|
contact_links:
|
||||||
- name: Security and Vulnerabilities
|
- name: Security and Vulnerabilities
|
||||||
url: https://github.com/distribution/distribution/blob/main/SECURITY.md
|
url: https://github.com/2DFS/2dfs-registry/blob/main/SECURITY.md
|
||||||
about: Please report any security issues or vulnerabilities responsibly to the distribution maintainers team. Please do not use the public issue tracker.
|
about: Please report any security issues or vulnerabilities responsibly to the distribution maintainers team. Please do not use the public issue tracker.
|
||||||
- name: Questions and Discussions
|
- name: Questions and Discussions
|
||||||
url: https://github.com/distribution/distribution/discussions/new/choose
|
url: https://github.com/2DFS/2dfs-registry/discussions/new/choose
|
||||||
about: Use Github Discussions to ask questions and/or open discussion topics.
|
about: Use Github Discussions to ask questions and/or open discussion topics.
|
||||||
|
9
.github/workflows/build.yml
vendored
9
.github/workflows/build.yml
vendored
@ -14,7 +14,7 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
|
|
||||||
env:
|
env:
|
||||||
DOCKERHUB_SLUG: distribution/distribution
|
DOCKERHUB_SLUG: 2DFS/2dfs-registry
|
||||||
GHCR_SLUG: ghcr.io/${{ github.repository }}
|
GHCR_SLUG: ghcr.io/${{ github.repository }}
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
@ -102,13 +102,6 @@ jobs:
|
|||||||
-
|
-
|
||||||
name: Set up Docker Buildx
|
name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
-
|
|
||||||
name: Login to DockerHub
|
|
||||||
if: github.event_name != 'pull_request'
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
||||||
-
|
-
|
||||||
name: Log in to GitHub Container registry
|
name: Log in to GitHub Container registry
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
|
35
.github/workflows/dockerhub-readme.yml
vendored
35
.github/workflows/dockerhub-readme.yml
vendored
@ -1,35 +0,0 @@
|
|||||||
name: dockerhub-readme
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- 'main'
|
|
||||||
paths:
|
|
||||||
- '.github/workflows/dockerhub-readme.yml'
|
|
||||||
- 'docs/dockerhub.md'
|
|
||||||
|
|
||||||
env:
|
|
||||||
DOCKERHUB_SLUG: distribution/distribution
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
update:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
-
|
|
||||||
name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
-
|
|
||||||
name: Update Docker Hub README
|
|
||||||
uses: peter-evans/dockerhub-description@v4
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
||||||
repository: ${{ env.DOCKERHUB_SLUG }}
|
|
||||||
readme-filepath: ./docs/dockerhub.md
|
|
74
.github/workflows/docs.yml
vendored
74
.github/workflows/docs.yml
vendored
@ -1,74 +0,0 @@
|
|||||||
name: docs
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
paths:
|
|
||||||
- .github/workflows/docs.yml
|
|
||||||
- dockerfiles/docs.Dockerfile
|
|
||||||
- docs/**
|
|
||||||
workflow_dispatch:
|
|
||||||
pull_request:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
# Build job
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
# Build the site and upload artifacts using actions/upload-pages-artifact
|
|
||||||
steps:
|
|
||||||
- name: Setup Pages
|
|
||||||
id: pages
|
|
||||||
uses: actions/configure-pages@v5
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
|
|
||||||
- name: Build docs
|
|
||||||
uses: docker/bake-action@v6
|
|
||||||
with:
|
|
||||||
targets: docs-export
|
|
||||||
provenance: false
|
|
||||||
set: |
|
|
||||||
*.cache-from=type=gha,scope=docs
|
|
||||||
*.cache-to=type=gha,scope=docs,mode=max
|
|
||||||
|
|
||||||
- name: Fix permissions
|
|
||||||
run: |
|
|
||||||
chmod -c -R +rX "./build/docs" | while read line; do
|
|
||||||
echo "::warning title=Invalid file permissions automatically fixed::$line"
|
|
||||||
done
|
|
||||||
|
|
||||||
- name: Upload Pages artifact
|
|
||||||
uses: actions/upload-pages-artifact@v3
|
|
||||||
with:
|
|
||||||
path: ./build/docs
|
|
||||||
|
|
||||||
# Deploy job
|
|
||||||
deploy:
|
|
||||||
if: github.event_name != 'pull_request'
|
|
||||||
# Add a dependency to the build job
|
|
||||||
needs: build
|
|
||||||
|
|
||||||
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
|
|
||||||
permissions:
|
|
||||||
pages: write # to deploy to Pages
|
|
||||||
id-token: write # to verify the deployment originates from an appropriate source
|
|
||||||
|
|
||||||
# Deploy to the github-pages environment
|
|
||||||
environment:
|
|
||||||
name: github-pages
|
|
||||||
url: ${{ steps.deployment.outputs.page_url }}
|
|
||||||
|
|
||||||
# Specify runner + deployment step
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Deploy to GitHub Pages
|
|
||||||
id: deployment
|
|
||||||
uses: actions/deploy-pages@v4 # or the latest "vX.X.X" version tag for this action
|
|
25
.github/workflows/fossa.yml
vendored
25
.github/workflows/fossa.yml
vendored
@ -1,25 +0,0 @@
|
|||||||
name: FOSSA License Scanning
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
on:
|
|
||||||
- pull_request
|
|
||||||
- push
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read # to fetch code (actions/checkout)
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
scan-license:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Run FOSSA scan and upload build data
|
|
||||||
uses: fossa-contrib/fossa-action@v3
|
|
||||||
with:
|
|
||||||
fossa-api-key: cac3dc8d4f2ba86142f6c0f2199a160f
|
|
@ -26,7 +26,7 @@ development environment setup. Please follow [How to Write Go Code](https://go.d
|
|||||||
|
|
||||||
Next, fetch the code from the repository using git:
|
Next, fetch the code from the repository using git:
|
||||||
|
|
||||||
git clone https://github.com/distribution/distribution
|
git clone https://github.com/2DFS/2dfs-registry
|
||||||
cd distribution
|
cd distribution
|
||||||
|
|
||||||
If you are planning to create a pull request with changes, you may want to clone directly from your [fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks).
|
If you are planning to create a pull request with changes, you may want to clone directly from your [fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks).
|
||||||
@ -51,7 +51,7 @@ The `registry`
|
|||||||
binary can then be run with the following:
|
binary can then be run with the following:
|
||||||
|
|
||||||
$ ./bin/registry --version
|
$ ./bin/registry --version
|
||||||
./bin/registry github.com/distribution/distribution/v3 v2.7.0-1993-g8857a194
|
./bin/registry github.com/2DFS/2dfs-registry/v3 v2.7.0-1993-g8857a194
|
||||||
|
|
||||||
The registry can be run with a development config using the following
|
The registry can be run with a development config using the following
|
||||||
incantation:
|
incantation:
|
||||||
@ -86,7 +86,7 @@ directory. We can verify this worked by running
|
|||||||
the registry binary generated in the "./bin" directory:
|
the registry binary generated in the "./bin" directory:
|
||||||
|
|
||||||
$ ./bin/registry --version
|
$ ./bin/registry --version
|
||||||
./bin/registry github.com/distribution/distribution v2.0.0-alpha.2-80-g16d8b2c.m
|
./bin/registry github.com/2DFS/2dfs-registry v2.0.0-alpha.2-80-g16d8b2c.m
|
||||||
|
|
||||||
Run `make test` to run all of the tests.
|
Run `make test` to run all of the tests.
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ ENV CGO_ENABLED=0
|
|||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
|
|
||||||
FROM base AS version
|
FROM base AS version
|
||||||
ARG PKG=github.com/distribution/distribution/v3
|
ARG PKG=github.com/2DFS/2dfs-registry/v3
|
||||||
RUN --mount=target=. \
|
RUN --mount=target=. \
|
||||||
VERSION=$(git describe --match 'v[0-9]*' --dirty='.m' --always --tags) REVISION=$(git rev-parse HEAD)$(if ! git diff --no-ext-diff --quiet --exit-code; then echo .m; fi); \
|
VERSION=$(git describe --match 'v[0-9]*' --dirty='.m' --always --tags) REVISION=$(git rev-parse HEAD)$(if ! git diff --no-ext-diff --quiet --exit-code; then echo .m; fi); \
|
||||||
echo "-X ${PKG}/version.version=${VERSION#v} -X ${PKG}/version.revision=${REVISION} -X ${PKG}/version.mainpkg=${PKG}" | tee /tmp/.ldflags; \
|
echo "-X ${PKG}/version.version=${VERSION#v} -X ${PKG}/version.revision=${REVISION} -X ${PKG}/version.mainpkg=${PKG}" | tee /tmp/.ldflags; \
|
||||||
|
2
Makefile
2
Makefile
@ -10,7 +10,7 @@ REVISION ?= $(shell git rev-parse HEAD)$(shell if ! git diff --no-ext-diff --qui
|
|||||||
# default compose command
|
# default compose command
|
||||||
COMPOSE ?= docker compose
|
COMPOSE ?= docker compose
|
||||||
|
|
||||||
PKG=github.com/distribution/distribution/v3
|
PKG=github.com/2DFS/2dfs-registry/v3
|
||||||
|
|
||||||
# Project packages.
|
# Project packages.
|
||||||
PACKAGES=$(shell go list -tags "${BUILDTAGS}" ./... | grep -v /vendor/)
|
PACKAGES=$(shell go list -tags "${BUILDTAGS}" ./... | grep -v /vendor/)
|
||||||
|
57
README.md
57
README.md
@ -1,56 +1,29 @@
|
|||||||
<p align="center">
|
## 2DFS+OCI distribution extension
|
||||||
<img style="align: center; padding-left: 10px; padding-right: 10px; padding-bottom: 10px;" width="238px" height="238px" src="./distribution-logo.svg" />
|
|
||||||
</p>
|
|
||||||
|
|
||||||
[](https://github.com/distribution/distribution/actions/workflows/build.yml?query=workflow%3Abuild)
|
This is a fork of the [OCI distribution](https://github.com/distribution/distribution) project, which is a core component of the OCI container ecosystem.
|
||||||
[](https://pkg.go.dev/github.com/distribution/distribution)
|
|
||||||
|
[](https://github.com/2DFS/2dfs-registry/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||||
[](LICENSE)
|
[](LICENSE)
|
||||||
[](https://codecov.io/gh/distribution/distribution)
|
[](https://github.com/2DFS/2dfs-registry/actions?query=workflow%3Aconformance)
|
||||||
[](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fdistribution%2Fdistribution?ref=badge_shield)
|
[](https://securityscorecards.dev/viewer/?uri=github.com/2DFS/2dfs-registry)
|
||||||
[](https://github.com/distribution/distribution/actions?query=workflow%3Aconformance)
|
|
||||||
[](https://securityscorecards.dev/viewer/?uri=github.com/distribution/distribution)
|
|
||||||
|
|
||||||
The toolset to pack, ship, store, and deliver content.
|
|
||||||
|
|
||||||
This repository's main product is the Open Source Registry implementation
|
Based on the [OCI Distribution Specification](https://github.com/opencontainers/distribution-spec).
|
||||||
for storing and distributing container images and other content using the
|
This Fork provides additional support for `2dfs.field` layer type, layer flattening for OCI compatibility and semantic partitioning.
|
||||||
[OCI Distribution Specification](https://github.com/opencontainers/distribution-spec).
|
|
||||||
The goal of this project is to provide a simple, secure, and scalable base
|
|
||||||
for building a large scale registry solution or running a simple private registry.
|
|
||||||
It is a core library for many registry operators including Docker Hub, GitHub Container Registry,
|
|
||||||
GitLab Container Registry and DigitalOcean Container Registry, as well as the CNCF Harbor
|
|
||||||
Project, and VMware Harbor Registry.
|
|
||||||
|
|
||||||
This repository contains the following components:
|
This repository contains the following components:
|
||||||
|
|
||||||
|**Component** |Description |
|
|**Component** |Description |
|
||||||
|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **registry** | An implementation of the [OCI Distribution Specification](https://github.com/opencontainers/distribution-spec). |
|
| **registry** | An implementation of the [OCI Distribution Specification](https://github.com/opencontainers/distribution-spec). |
|
||||||
| **libraries** | A rich set of libraries for interacting with distribution components. Please see [godoc](https://pkg.go.dev/github.com/distribution/distribution) for details. **Note**: The interfaces for these libraries are **unstable**. |
|
| **libraries** | A rich set of libraries for interacting with distribution components. Please see [godoc](https://pkg.go.dev/github.com/2DFS/2dfs-registry) for details. **Note**: The interfaces for these libraries are **unstable**. |
|
||||||
| **documentation** | Full documentation is available at [https://distribution.github.io/distribution](https://distribution.github.io/distribution/).
|
| **documentation** | Full documentation is available at [https://distribution.github.io/distribution](https://distribution.github.io/distribution/).
|
||||||
|
|
||||||
### How does this integrate with Docker, containerd, and other OCI client?
|
### How does this integrate with Docker, containerd, and other OCI client?
|
||||||
|
|
||||||
Clients implement against the OCI specification and communicate with the
|
Clients implement against the OCI specification and communicate with the
|
||||||
registry using HTTP. This project contains a client implementation which
|
registry using HTTP.
|
||||||
is currently in use by Docker, however, it is deprecated for the
|
This project implements *semantic tags* allowing on demand image partitioning for **2DFS** compliant images.
|
||||||
[implementation in containerd](https://github.com/containerd/containerd/tree/master/remotes/docker)
|
|
||||||
and will not support new features.
|
|
||||||
|
|
||||||
### What are the long term goals of the Distribution project?
|
|
||||||
|
|
||||||
The _Distribution_ project has the further long term goal of providing a
|
|
||||||
secure tool chain for distributing content. The specifications, APIs and tools
|
|
||||||
should be as useful with Docker as they are without.
|
|
||||||
|
|
||||||
Our goal is to design a professional grade and extensible content distribution
|
|
||||||
system that allow users to:
|
|
||||||
|
|
||||||
* Enjoy an efficient, secured and reliable way to store, manage, package and
|
|
||||||
exchange content
|
|
||||||
* Hack/roll their own on top of healthy open-source components
|
|
||||||
* Implement their own home made solution through good specs, and solid
|
|
||||||
extensions mechanism.
|
|
||||||
|
|
||||||
## Contribution
|
## Contribution
|
||||||
|
|
||||||
@ -58,14 +31,6 @@ Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details on how to contribute
|
|||||||
issues, fixes, and patches to this project. If you are contributing code, see
|
issues, fixes, and patches to this project. If you are contributing code, see
|
||||||
the instructions for [building a development environment](BUILDING.md).
|
the instructions for [building a development environment](BUILDING.md).
|
||||||
|
|
||||||
## Communication
|
|
||||||
|
|
||||||
For async communication and long running discussions please use issues and pull requests on the github repo.
|
|
||||||
This will be the best place to discuss design and implementation.
|
|
||||||
|
|
||||||
For sync communication we have a #distribution channel in the [CNCF Slack](https://slack.cncf.io/)
|
|
||||||
that everyone is welcome to join and chat about development.
|
|
||||||
|
|
||||||
## Licenses
|
## Licenses
|
||||||
|
|
||||||
The distribution codebase is released under the [Apache 2.0 license](LICENSE).
|
The distribution codebase is released under the [Apache 2.0 license](LICENSE).
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/version"
|
"github.com/2DFS/2dfs-registry/v3/version"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
|
||||||
_ "crypto/sha256"
|
_ "crypto/sha256"
|
||||||
|
@ -20,8 +20,8 @@ import (
|
|||||||
"regexp"
|
"regexp"
|
||||||
"text/template"
|
"text/template"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
)
|
)
|
||||||
|
|
||||||
var spaceRegex = regexp.MustCompile(`\n\s*`)
|
var spaceRegex = regexp.MustCompile(`\n\s*`)
|
||||||
|
@ -3,19 +3,19 @@ package main
|
|||||||
import (
|
import (
|
||||||
_ "net/http/pprof"
|
_ "net/http/pprof"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry"
|
"github.com/2DFS/2dfs-registry/v3/registry"
|
||||||
_ "github.com/distribution/distribution/v3/registry/auth/htpasswd"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/htpasswd"
|
||||||
_ "github.com/distribution/distribution/v3/registry/auth/silly"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/silly"
|
||||||
_ "github.com/distribution/distribution/v3/registry/auth/token"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/token"
|
||||||
_ "github.com/distribution/distribution/v3/registry/proxy"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/proxy"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/azure"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/azure"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/filesystem"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/filesystem"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/gcs"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/gcs"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/cloudfront"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/cloudfront"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/redirect"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/redirect"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/rewrite"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/rewrite"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/s3-aws"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/s3-aws"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
@ -72,7 +72,7 @@ $ docker run -d -p 5000:5000 --restart=always --name registry \
|
|||||||
```
|
```
|
||||||
|
|
||||||
Use this
|
Use this
|
||||||
[example YAML file](https://github.com/distribution/distribution/blob/master/cmd/registry/config-example.yml)
|
[example YAML file](https://github.com/2DFS/2dfs-registry/blob/master/cmd/registry/config-example.yml)
|
||||||
as a starting point.
|
as a starting point.
|
||||||
|
|
||||||
## List of configuration options
|
## List of configuration options
|
||||||
@ -1343,7 +1343,7 @@ This example configures the registry instance to run on port `5000`, binding to
|
|||||||
verbose.
|
verbose.
|
||||||
|
|
||||||
See
|
See
|
||||||
[config-example.yml](https://github.com/distribution/distribution/blob/master/cmd/registry/config-example.yml)
|
[config-example.yml](https://github.com/2DFS/2dfs-registry/blob/master/cmd/registry/config-example.yml)
|
||||||
for another simple configuration. Both examples are generally useful for local
|
for another simple configuration. Both examples are generally useful for local
|
||||||
development.
|
development.
|
||||||
|
|
||||||
|
@ -8,5 +8,5 @@ If you need help, or just want to chat about development, you can reach us on th
|
|||||||
|
|
||||||
If you want to report a bug:
|
If you want to report a bug:
|
||||||
|
|
||||||
- be sure to first read about [how to contribute](https://github.com/distribution/distribution/blob/master/CONTRIBUTING.md).
|
- be sure to first read about [how to contribute](https://github.com/2DFS/2dfs-registry/blob/master/CONTRIBUTING.md).
|
||||||
- you can then do so on the [GitHub project bugtracker](https://github.com/distribution/distribution/issues).
|
- you can then do so on the [GitHub project bugtracker](https://github.com/2DFS/2dfs-registry/issues).
|
||||||
|
@ -75,9 +75,9 @@ repository | string | Repository identifies the named repository.
|
|||||||
fromRepository | string | FromRepository identifies the named repository which a blob was mounted from if appropriate.
|
fromRepository | string | FromRepository identifies the named repository which a blob was mounted from if appropriate.
|
||||||
url | string | URL provides a direct link to the content.
|
url | string | URL provides a direct link to the content.
|
||||||
tag | string | Tag identifies a tag name in tag events.
|
tag | string | Tag identifies a tag name in tag events.
|
||||||
request | [RequestRecord](https://pkg.go.dev/github.com/distribution/distribution/notifications#RequestRecord) | Request covers the request that generated the event.
|
request | [RequestRecord](https://pkg.go.dev/github.com/2DFS/2dfs-registry/notifications#RequestRecord) | Request covers the request that generated the event.
|
||||||
actor | [ActorRecord](https://pkg.go.dev/github.com/distribution/distribution/notifications#ActorRecord). | Actor specifies the agent that initiated the event. For most situations, this could be from the authorization context of the request.
|
actor | [ActorRecord](https://pkg.go.dev/github.com/2DFS/2dfs-registry/notifications#ActorRecord). | Actor specifies the agent that initiated the event. For most situations, this could be from the authorization context of the request.
|
||||||
source | [SourceRecord](https://pkg.go.dev/github.com/distribution/distribution/notifications#SourceRecord) | Source identifies the registry node that generated the event. Put differently, while the actor "initiates" the event, the source "generates" it.
|
source | [SourceRecord](https://pkg.go.dev/github.com/2DFS/2dfs-registry/notifications#SourceRecord) | Source identifies the registry node that generated the event. Put differently, while the actor "initiates" the event, the source "generates" it.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -344,5 +344,5 @@ which can be wired up to achieve interesting behavior. If this system doesn't
|
|||||||
provide acceptable guarantees, adding a transactional `Sink` to the registry
|
provide acceptable guarantees, adding a transactional `Sink` to the registry
|
||||||
is a possibility, although it may have an effect on request service time.
|
is a possibility, although it may have an effect on request service time.
|
||||||
See the
|
See the
|
||||||
[godoc](https://pkg.go.dev/github.com/distribution/distribution/notifications#Sink)
|
[godoc](https://pkg.go.dev/github.com/2DFS/2dfs-registry/notifications#Sink)
|
||||||
for more information.
|
for more information.
|
||||||
|
@ -68,7 +68,7 @@ proxy_set_header X-Forwarded-Proto $scheme;
|
|||||||
|
|
||||||
Otherwise Nginx resets the ELB's values, and the requests are not routed
|
Otherwise Nginx resets the ELB's values, and the requests are not routed
|
||||||
properly. For more information, see
|
properly. For more information, see
|
||||||
[#970](https://github.com/distribution/distribution/issues/970).
|
[#970](https://github.com/2DFS/2dfs-registry/issues/970).
|
||||||
|
|
||||||
## Setting things up
|
## Setting things up
|
||||||
|
|
||||||
|
@ -39,8 +39,8 @@ If you want to understand, you should read [How to Write Go Code](https://golang
|
|||||||
|
|
||||||
```console
|
```console
|
||||||
$ mkdir -p $GOPATH/src/github.com/distribution
|
$ mkdir -p $GOPATH/src/github.com/distribution
|
||||||
$ git clone https://github.com/distribution/distribution.git $GOPATH/src/github.com/distribution/distribution
|
$ git clone https://github.com/2DFS/2dfs-registry.git $GOPATH/src/github.com/2DFS/2dfs-registry
|
||||||
$ cd $GOPATH/src/github.com/distribution/distribution
|
$ cd $GOPATH/src/github.com/2DFS/2dfs-registry
|
||||||
```
|
```
|
||||||
|
|
||||||
## Build the binary
|
## Build the binary
|
||||||
|
@ -106,7 +106,7 @@ alpha-numeric := /[a-z0-9]+/
|
|||||||
separator := /[_.]|__|[-]*/
|
separator := /[_.]|__|[-]*/
|
||||||
```
|
```
|
||||||
Full reference grammar is defined
|
Full reference grammar is defined
|
||||||
[here](https://pkg.go.dev/github.com/distribution/distribution/reference). Currently
|
[here](https://pkg.go.dev/github.com/2DFS/2dfs-registry/reference). Currently
|
||||||
the scope name grammar is a subset of the reference grammar.
|
the scope name grammar is a subset of the reference grammar.
|
||||||
|
|
||||||
{{< hint type=note >}}
|
{{< hint type=note >}}
|
||||||
|
@ -6,7 +6,7 @@ draft: true
|
|||||||
|
|
||||||
This is a list of known implementations of the Distribution API spec.
|
This is a list of known implementations of the Distribution API spec.
|
||||||
|
|
||||||
## [CNCF Distribution Registry](https://github.com/distribution/distribution)
|
## [CNCF Distribution Registry](https://github.com/2DFS/2dfs-registry)
|
||||||
|
|
||||||
CNCF distribution is the reference implementation of the distribution API
|
CNCF distribution is the reference implementation of the distribution API
|
||||||
specification. It aims to fully implement the entire specification.
|
specification. It aims to fully implement the entire specification.
|
||||||
|
@ -39,7 +39,7 @@ with a driver name and parameters map. If no such storage driver can be found,
|
|||||||
## Driver contribution
|
## Driver contribution
|
||||||
|
|
||||||
New storage drivers are not currently being accepted.
|
New storage drivers are not currently being accepted.
|
||||||
See <https://github.com/distribution/distribution/issues/3988> for discussion.
|
See <https://github.com/2DFS/2dfs-registry/issues/3988> for discussion.
|
||||||
|
|
||||||
There are forks of this repo that implement custom storage drivers.
|
There are forks of this repo that implement custom storage drivers.
|
||||||
These are not supported by the OCI distribution project.
|
These are not supported by the OCI distribution project.
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
header:
|
header:
|
||||||
- name: GitHub
|
- name: GitHub
|
||||||
ref: https://github.com/distribution/distribution/
|
ref: https://github.com/2DFS/2dfs-registry/
|
||||||
icon: gdoc_github
|
icon: gdoc_github
|
||||||
external: true
|
external: true
|
||||||
|
@ -5,13 +5,13 @@ This repository provides container images for the Open Source Registry implement
|
|||||||
|
|
||||||
<img src="https://raw.githubusercontent.com/distribution/distribution/main/distribution-logo.svg" width="200px" />
|
<img src="https://raw.githubusercontent.com/distribution/distribution/main/distribution-logo.svg" width="200px" />
|
||||||
|
|
||||||
[](https://github.com/distribution/distribution/actions/workflows/build.yml?query=workflow%3Abuild)
|
[](https://github.com/2DFS/2dfs-registry/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||||
[](https://github.com/distribution/distribution/actions?query=workflow%3Aconformance)
|
[](https://github.com/2DFS/2dfs-registry/actions?query=workflow%3Aconformance)
|
||||||
[](LICENSE)
|
[](LICENSE)
|
||||||
|
|
||||||
## Quick start
|
## Quick start
|
||||||
|
|
||||||
Run the registry locally with the [default configuration](https://github.com/distribution/distribution/blob/main/cmd/registry/config-dev.yml):
|
Run the registry locally with the [default configuration](https://github.com/2DFS/2dfs-registry/blob/main/cmd/registry/config-dev.yml):
|
||||||
```
|
```
|
||||||
docker run -d -p 5000:5000 --restart always --name registry distribution/distribution:edge
|
docker run -d -p 5000:5000 --restart always --name registry distribution/distribution:edge
|
||||||
```
|
```
|
||||||
@ -31,7 +31,7 @@ docker tag alpine localhost:5000/alpine
|
|||||||
docker push localhost:5000/alpine
|
docker push localhost:5000/alpine
|
||||||
```
|
```
|
||||||
|
|
||||||
⚠️ Beware the default configuration uses [`filesystem` storage driver](https://github.com/distribution/distribution/blob/main/docs/content/storage-drivers/filesystem.md)
|
⚠️ Beware the default configuration uses [`filesystem` storage driver](https://github.com/2DFS/2dfs-registry/blob/main/docs/content/storage-drivers/filesystem.md)
|
||||||
and the above example command does not mount a local filesystem volume into the running container.
|
and the above example command does not mount a local filesystem volume into the running container.
|
||||||
If you wish to mount the local filesystem to the `rootdirectory` of the
|
If you wish to mount the local filesystem to the `rootdirectory` of the
|
||||||
`filesystem` storage driver run the following command:
|
`filesystem` storage driver run the following command:
|
||||||
@ -50,7 +50,7 @@ docker run -d -p 5000:5000 -v $PWD/PATH/TO/config.yml:/etc/distribution/config.y
|
|||||||
## Communication
|
## Communication
|
||||||
|
|
||||||
For async communication and long-running discussions please use issues and pull requests
|
For async communication and long-running discussions please use issues and pull requests
|
||||||
on the [GitHub repo](https://github.com/distribution/distribution).
|
on the [GitHub repo](https://github.com/2DFS/2dfs-registry).
|
||||||
|
|
||||||
For sync communication we have a #distribution channel in the [CNCF Slack](https://slack.cncf.io/)
|
For sync communication we have a #distribution channel in the [CNCF Slack](https://slack.cncf.io/)
|
||||||
that everyone is welcome to join and chat about development.
|
that everyone is welcome to join and chat about development.
|
||||||
|
@ -20,7 +20,7 @@ pygmentsCodeFences: true
|
|||||||
disablePathToLower: true
|
disablePathToLower: true
|
||||||
|
|
||||||
params:
|
params:
|
||||||
geekdocRepo: "https://github.com/distribution/distribution"
|
geekdocRepo: "https://github.com/2DFS/2dfs-registry"
|
||||||
geekdocEditPath: edit/main/docs
|
geekdocEditPath: edit/main/docs
|
||||||
geekdocLegalNotice: "https://www.linuxfoundation.org/legal/trademark-usage"
|
geekdocLegalNotice: "https://www.linuxfoundation.org/legal/trademark-usage"
|
||||||
geekdocContentLicense:
|
geekdocContentLicense:
|
||||||
|
11
go.mod
11
go.mod
@ -1,10 +1,10 @@
|
|||||||
module github.com/distribution/distribution/v3
|
module github.com/2DFS/2dfs-registry/v3
|
||||||
|
|
||||||
go 1.23.7
|
go 1.23.7
|
||||||
|
|
||||||
require (
|
require (
|
||||||
cloud.google.com/go/storage v1.45.0
|
cloud.google.com/go/storage v1.45.0
|
||||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20221103172237-443f56ff4ba8
|
github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1
|
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.8.2
|
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.8.2
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.6.0
|
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.6.0
|
||||||
@ -23,11 +23,11 @@ require (
|
|||||||
github.com/klauspost/compress v1.17.11
|
github.com/klauspost/compress v1.17.11
|
||||||
github.com/mitchellh/mapstructure v1.5.0
|
github.com/mitchellh/mapstructure v1.5.0
|
||||||
github.com/opencontainers/go-digest v1.0.0
|
github.com/opencontainers/go-digest v1.0.0
|
||||||
github.com/opencontainers/image-spec v1.1.0
|
github.com/opencontainers/image-spec v1.1.1
|
||||||
github.com/redis/go-redis/extra/redisotel/v9 v9.0.5
|
github.com/redis/go-redis/extra/redisotel/v9 v9.0.5
|
||||||
github.com/redis/go-redis/v9 v9.7.3
|
github.com/redis/go-redis/v9 v9.7.3
|
||||||
github.com/sirupsen/logrus v1.9.3
|
github.com/sirupsen/logrus v1.9.3
|
||||||
github.com/spf13/cobra v1.8.0
|
github.com/spf13/cobra v1.8.1
|
||||||
github.com/stretchr/testify v1.10.0
|
github.com/stretchr/testify v1.10.0
|
||||||
go.opentelemetry.io/contrib/exporters/autoexport v0.57.0
|
go.opentelemetry.io/contrib/exporters/autoexport v0.57.0
|
||||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0
|
||||||
@ -43,6 +43,8 @@ require (
|
|||||||
gopkg.in/yaml.v2 v2.4.0
|
gopkg.in/yaml.v2 v2.4.0
|
||||||
)
|
)
|
||||||
|
|
||||||
|
require github.com/2DFS/2dfs-builder v0.0.101
|
||||||
|
|
||||||
require (
|
require (
|
||||||
cel.dev/expr v0.16.1 // indirect
|
cel.dev/expr v0.16.1 // indirect
|
||||||
cloud.google.com/go v0.115.1 // indirect
|
cloud.google.com/go v0.115.1 // indirect
|
||||||
@ -61,7 +63,6 @@ require (
|
|||||||
github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect
|
github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect
|
||||||
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
||||||
github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 // indirect
|
github.com/cncf/xds/go v0.0.0-20240905190251-b4127c9b8d78 // indirect
|
||||||
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
|
|
||||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||||
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
||||||
github.com/envoyproxy/go-control-plane v0.13.0 // indirect
|
github.com/envoyproxy/go-control-plane v0.13.0 // indirect
|
||||||
|
12
go.sum
12
go.sum
@ -21,8 +21,10 @@ cloud.google.com/go/storage v1.45.0 h1:5av0QcIVj77t+44mV4gffFC/LscFRUhto6UBMB5Si
|
|||||||
cloud.google.com/go/storage v1.45.0/go.mod h1:wpPblkIuMP5jCB/E48Pz9zIo2S/zD8g+ITmxKkPCITE=
|
cloud.google.com/go/storage v1.45.0/go.mod h1:wpPblkIuMP5jCB/E48Pz9zIo2S/zD8g+ITmxKkPCITE=
|
||||||
cloud.google.com/go/trace v1.11.0 h1:UHX6cOJm45Zw/KIbqHe4kII8PupLt/V5tscZUkeiJVI=
|
cloud.google.com/go/trace v1.11.0 h1:UHX6cOJm45Zw/KIbqHe4kII8PupLt/V5tscZUkeiJVI=
|
||||||
cloud.google.com/go/trace v1.11.0/go.mod h1:Aiemdi52635dBR7o3zuc9lLjXo3BwGaChEjCa3tJNmM=
|
cloud.google.com/go/trace v1.11.0/go.mod h1:Aiemdi52635dBR7o3zuc9lLjXo3BwGaChEjCa3tJNmM=
|
||||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20221103172237-443f56ff4ba8 h1:d+pBUmsteW5tM87xmVXHZ4+LibHRFn40SPAoZJOg2ak=
|
github.com/2DFS/2dfs-builder v0.0.101 h1:5yihdj/pZaXowhP5ZsLUJ1AhFoaP7A5gq7dYoAP1VSg=
|
||||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20221103172237-443f56ff4ba8/go.mod h1:i9fr2JpcEcY/IHEvzCM3qXUZYOQHgR89dt4es1CgMhc=
|
github.com/2DFS/2dfs-builder v0.0.101/go.mod h1:79JDkKrQxWolJmHQXxGXIpRfLh3LALJCu+Z/Ih82ONo=
|
||||||
|
github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU=
|
||||||
|
github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8=
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1 h1:DSDNVxqkoXJiko6x8a90zidoYqnYYa6c1MTzDKzKkTo=
|
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1 h1:DSDNVxqkoXJiko6x8a90zidoYqnYYa6c1MTzDKzKkTo=
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1/go.mod h1:zGqV2R4Cr/k8Uye5w+dgQ06WJtEcbQG/8J7BB6hnCr4=
|
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.17.1/go.mod h1:zGqV2R4Cr/k8Uye5w+dgQ06WJtEcbQG/8J7BB6hnCr4=
|
||||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.8.2 h1:F0gBpfdPLGsw+nsgk6aqqkZS1jiixa5WwFe3fk/T3Ys=
|
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.8.2 h1:F0gBpfdPLGsw+nsgk6aqqkZS1jiixa5WwFe3fk/T3Ys=
|
||||||
@ -197,8 +199,8 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8m
|
|||||||
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
|
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
|
||||||
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
||||||
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
||||||
github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug=
|
github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040=
|
||||||
github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM=
|
github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M=
|
||||||
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ=
|
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ=
|
||||||
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c/go.mod h1:7rwL4CYBLnjLxUqIJNnCWiEdr3bn6IUYi15bNlnbCCU=
|
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c/go.mod h1:7rwL4CYBLnjLxUqIJNnCWiEdr3bn6IUYi15bNlnbCCU=
|
||||||
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||||
@ -340,9 +342,7 @@ golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5h
|
|||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
||||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|
||||||
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
)
|
)
|
||||||
|
|
||||||
var updater = health.NewStatusUpdater()
|
var updater = health.NewStatusUpdater()
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"net/http/httptest"
|
"net/http/httptest"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestGETDownHandlerDoesNotChangeStatus ensures that calling the endpoint
|
// TestGETDownHandlerDoesNotChangeStatus ensures that calling the endpoint
|
||||||
|
@ -10,7 +10,7 @@ import (
|
|||||||
"path/filepath"
|
"path/filepath"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
)
|
)
|
||||||
|
|
||||||
// FileChecker checks the existence of a file and returns an error
|
// FileChecker checks the existence of a file and returns an error
|
||||||
|
@ -17,14 +17,14 @@
|
|||||||
//
|
//
|
||||||
// To install health, just import it in your application:
|
// To install health, just import it in your application:
|
||||||
//
|
//
|
||||||
// import "github.com/distribution/distribution/v3/health"
|
// import "github.com/2DFS/2dfs-registry/v3/health"
|
||||||
//
|
//
|
||||||
// You can also (optionally) import "health/api" that will add two convenience
|
// You can also (optionally) import "health/api" that will add two convenience
|
||||||
// endpoints: "/debug/health/down" and "/debug/health/up". These endpoints add
|
// endpoints: "/debug/health/down" and "/debug/health/up". These endpoints add
|
||||||
// "manual" checks that allow the service to quickly be brought in/out of
|
// "manual" checks that allow the service to quickly be brought in/out of
|
||||||
// rotation.
|
// rotation.
|
||||||
//
|
//
|
||||||
// import _ "github.com/distribution/distribution/v3/health/api"
|
// import _ "github.com/2DFS/2dfs-registry/v3/health/api"
|
||||||
//
|
//
|
||||||
// # curl localhost:5001/debug/health
|
// # curl localhost:5001/debug/health
|
||||||
// {}
|
// {}
|
||||||
@ -105,7 +105,7 @@
|
|||||||
// You can also use the predefined Checkers that come included with the health
|
// You can also use the predefined Checkers that come included with the health
|
||||||
// package. First, import the checks:
|
// package. First, import the checks:
|
||||||
//
|
//
|
||||||
// import "github.com/distribution/distribution/v3/health/checks
|
// import "github.com/2DFS/2dfs-registry/v3/health/checks
|
||||||
//
|
//
|
||||||
// After that you can make use of any of the provided checks. An example of
|
// After that you can make use of any of the provided checks. An example of
|
||||||
// using a `FileChecker` to take the application out of rotation if a certain
|
// using a `FileChecker` to take the application out of rotation if a certain
|
||||||
|
@ -9,8 +9,8 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Registers global /debug/health api endpoint, creates default registry
|
// Registers global /debug/health api endpoint, creates default registry
|
||||||
|
@ -11,9 +11,9 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/client"
|
"github.com/2DFS/2dfs-registry/v3/internal/client"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -9,9 +9,9 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
// An implementation of clock for providing fake time data.
|
// An implementation of clock for providing fake time data.
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -7,9 +7,9 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Test implements distribution.BlobWriter
|
// Test implements distribution.BlobWriter
|
||||||
|
@ -8,8 +8,8 @@ import (
|
|||||||
"mime"
|
"mime"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
)
|
)
|
||||||
|
|
||||||
// ErrNoErrorsInBody is returned when an HTTP response body parses to an empty
|
// ErrNoErrorsInBody is returned when an HTTP response body parses to an empty
|
||||||
|
@ -14,11 +14,11 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -16,11 +16,11 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
@ -21,7 +21,7 @@ func (ic *instanceContext) Value(key interface{}) interface{} {
|
|||||||
// We want to lazy initialize the UUID such that we don't
|
// We want to lazy initialize the UUID such that we don't
|
||||||
// call a random generator from the package initialization
|
// call a random generator from the package initialization
|
||||||
// code. For various reasons random could not be available
|
// code. For various reasons random could not be available
|
||||||
// https://github.com/distribution/distribution/issues/782
|
// https://github.com/2DFS/2dfs-registry/issues/782
|
||||||
ic.id = uuid.NewString()
|
ic.id = uuid.NewString()
|
||||||
})
|
})
|
||||||
return ic.id
|
return ic.id
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/requestutil"
|
"github.com/2DFS/2dfs-registry/v3/internal/requestutil"
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
)
|
)
|
||||||
|
@ -33,7 +33,7 @@ import (
|
|||||||
// If the function ran for roughly 1s, such a usage would emit a log message
|
// If the function ran for roughly 1s, such a usage would emit a log message
|
||||||
// as follows:
|
// as follows:
|
||||||
//
|
//
|
||||||
// INFO[0001] this will be the log message trace.duration=1.004575763s trace.func=github.com/distribution/distribution/context.traceOperation trace.id=<id> ...
|
// INFO[0001] this will be the log message trace.duration=1.004575763s trace.func=github.com/2DFS/2dfs-registry/context.traceOperation trace.id=<id> ...
|
||||||
//
|
//
|
||||||
// Notice that the function name is automatically resolved, along with the
|
// Notice that the function name is automatically resolved, along with the
|
||||||
// package and a trace id is emitted that can be linked with parent ids.
|
// package and a trace id is emitted that can be linked with parent ids.
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest"
|
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -5,7 +5,7 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest"
|
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest"
|
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -3,7 +3,7 @@ package schema2
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest"
|
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
@ -3,8 +3,8 @@ package tdfs
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
tdfs "github.com/2DFS/2dfs-builder/filesystem"
|
||||||
tdfs "github.com/giobart/2dfs-builder/filesystem"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -12,9 +12,9 @@ import (
|
|||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
tdfsfilesystem "github.com/2DFS/2dfs-builder/filesystem"
|
||||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
tdfsfilesystem "github.com/giobart/2dfs-builder/filesystem"
|
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Partition struct {
|
type Partition struct {
|
||||||
|
@ -4,8 +4,8 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/requestutil"
|
"github.com/2DFS/2dfs-registry/v3/internal/requestutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
|
@ -3,9 +3,9 @@ package notifications
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestEventJSONFormat provides silly test to detect if the event format or
|
// TestEventJSONFormat provides silly test to detect if the event format or
|
||||||
|
@ -13,7 +13,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -5,9 +5,9 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -5,13 +5,13 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
"github.com/docker/go-metrics"
|
"github.com/docker/go-metrics"
|
||||||
)
|
)
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"regexp"
|
"regexp"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
)
|
)
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package v2
|
package v2
|
||||||
|
|
||||||
import "github.com/distribution/distribution/v3/registry/api/errcode"
|
import "github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
|
|
||||||
var (
|
var (
|
||||||
// ErrorCodeDigestInvalid is returned when uploading a blob if the
|
// ErrorCodeDigestInvalid is returned when uploading a blob if the
|
||||||
|
@ -18,8 +18,8 @@ import (
|
|||||||
|
|
||||||
"golang.org/x/crypto/bcrypt"
|
"golang.org/x/crypto/bcrypt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestBasicAccessController(t *testing.T) {
|
func TestBasicAccessController(t *testing.T) {
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
|
|
||||||
"golang.org/x/crypto/bcrypt"
|
"golang.org/x/crypto/bcrypt"
|
||||||
)
|
)
|
||||||
|
@ -12,7 +12,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import (
|
|||||||
"net/http/httptest"
|
"net/http/httptest"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestSillyAccessController(t *testing.T) {
|
func TestSillyAccessController(t *testing.T) {
|
||||||
|
@ -13,7 +13,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
"github.com/go-jose/go-jose/v4"
|
"github.com/go-jose/go-jose/v4"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
@ -11,7 +11,7 @@ import (
|
|||||||
"github.com/go-jose/go-jose/v4/jwt"
|
"github.com/go-jose/go-jose/v4/jwt"
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
@ -18,7 +18,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
"github.com/go-jose/go-jose/v4"
|
"github.com/go-jose/go-jose/v4"
|
||||||
"github.com/go-jose/go-jose/v4/jwt"
|
"github.com/go-jose/go-jose/v4/jwt"
|
||||||
)
|
)
|
||||||
|
@ -19,16 +19,16 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
@ -19,26 +19,26 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
"github.com/distribution/distribution/v3/health/checks"
|
"github.com/2DFS/2dfs-registry/v3/health/checks"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||||
"github.com/distribution/distribution/v3/notifications"
|
"github.com/2DFS/2dfs-registry/v3/notifications"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
registrymiddleware "github.com/distribution/distribution/v3/registry/middleware/registry"
|
registrymiddleware "github.com/2DFS/2dfs-registry/v3/registry/middleware/registry"
|
||||||
repositorymiddleware "github.com/distribution/distribution/v3/registry/middleware/repository"
|
repositorymiddleware "github.com/2DFS/2dfs-registry/v3/registry/middleware/repository"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
memorycache "github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
memorycache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
rediscache "github.com/distribution/distribution/v3/registry/storage/cache/redis"
|
rediscache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/redis"
|
||||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||||
storagemiddleware "github.com/distribution/distribution/v3/registry/storage/driver/middleware"
|
storagemiddleware "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware"
|
||||||
"github.com/distribution/distribution/v3/version"
|
"github.com/2DFS/2dfs-registry/v3/version"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
events "github.com/docker/go-events"
|
events "github.com/docker/go-events"
|
||||||
"github.com/docker/go-metrics"
|
"github.com/docker/go-metrics"
|
||||||
|
@ -8,15 +8,15 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
_ "github.com/distribution/distribution/v3/registry/auth/silly"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/silly"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
memorycache "github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
memorycache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestAppDispatcher builds an application with a test dispatcher and ensures
|
// TestAppDispatcher builds an application with a test dispatcher and ensures
|
||||||
|
@ -3,9 +3,9 @@ package handlers
|
|||||||
import (
|
import (
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
)
|
)
|
||||||
|
@ -6,10 +6,10 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
@ -8,8 +8,8 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -5,11 +5,11 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||||
"github.com/distribution/distribution/v3/registry/auth"
|
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -9,9 +9,9 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestFileHealthCheck(t *testing.T) {
|
func TestFileHealthCheck(t *testing.T) {
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
)
|
)
|
||||||
|
|
||||||
// closeResources closes all the provided resources after running the target
|
// closeResources closes all the provided resources after running the target
|
||||||
|
@ -9,16 +9,16 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/manifest/tdfs"
|
"github.com/2DFS/2dfs-registry/v3/manifest/tdfs"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"sort"
|
"sort"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||||
"github.com/gorilla/handlers"
|
"github.com/gorilla/handlers"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -4,9 +4,9 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
)
|
)
|
||||||
|
|
||||||
// InitFunc is the type of a RegistryMiddleware factory function and is
|
// InitFunc is the type of a RegistryMiddleware factory function and is
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
)
|
)
|
||||||
|
|
||||||
// InitFunc is the type of a RepositoryMiddleware factory function and is
|
// InitFunc is the type of a RepositoryMiddleware factory function and is
|
||||||
|
@ -5,9 +5,9 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
)
|
)
|
||||||
|
|
||||||
const challengeHeader = "Docker-Distribution-Api-Version"
|
const challengeHeader = "Docker-Distribution-Api-Version"
|
||||||
|
@ -9,8 +9,8 @@ import (
|
|||||||
credspkg "github.com/docker/docker-credential-helpers/credentials"
|
credspkg "github.com/docker/docker-credential-helpers/credentials"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||||
)
|
)
|
||||||
|
|
||||||
type execCredentials struct {
|
type execCredentials struct {
|
||||||
|
@ -11,9 +11,9 @@ import (
|
|||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -10,12 +10,12 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/filesystem"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/filesystem"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
@ -6,9 +6,9 @@ import (
|
|||||||
|
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -6,15 +6,15 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
"github.com/opencontainers/image-spec/specs-go"
|
"github.com/opencontainers/image-spec/specs-go"
|
||||||
|
@ -4,7 +4,7 @@ import (
|
|||||||
"expvar"
|
"expvar"
|
||||||
"sync/atomic"
|
"sync/atomic"
|
||||||
|
|
||||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||||
"github.com/docker/go-metrics"
|
"github.com/docker/go-metrics"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -10,16 +10,16 @@ import (
|
|||||||
|
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/internal/client"
|
"github.com/2DFS/2dfs-registry/v3/internal/client"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
)
|
)
|
||||||
|
|
||||||
var repositoryTTL = 24 * 7 * time.Hour
|
var repositoryTTL = 24 * 7 * time.Hour
|
||||||
|
@ -3,7 +3,7 @@ package proxy
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -7,8 +7,8 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -24,13 +24,13 @@ import (
|
|||||||
"golang.org/x/net/http2"
|
"golang.org/x/net/http2"
|
||||||
"golang.org/x/net/http2/h2c"
|
"golang.org/x/net/http2/h2c"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/health"
|
"github.com/2DFS/2dfs-registry/v3/health"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/handlers"
|
"github.com/2DFS/2dfs-registry/v3/registry/handlers"
|
||||||
"github.com/distribution/distribution/v3/registry/listener"
|
"github.com/2DFS/2dfs-registry/v3/registry/listener"
|
||||||
"github.com/distribution/distribution/v3/tracing"
|
"github.com/2DFS/2dfs-registry/v3/tracing"
|
||||||
"github.com/distribution/distribution/v3/version"
|
"github.com/2DFS/2dfs-registry/v3/version"
|
||||||
)
|
)
|
||||||
|
|
||||||
// a map of TLS cipher suite names to constants in https://golang.org/pkg/crypto/tls/#pkg-constants
|
// a map of TLS cipher suite names to constants in https://golang.org/pkg/crypto/tls/#pkg-constants
|
||||||
|
@ -24,9 +24,9 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/configuration"
|
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
"gopkg.in/yaml.v2"
|
"gopkg.in/yaml.v2"
|
||||||
)
|
)
|
||||||
|
@ -4,10 +4,10 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||||
"github.com/distribution/distribution/v3/registry/storage"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||||
"github.com/distribution/distribution/v3/version"
|
"github.com/2DFS/2dfs-registry/v3/version"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -10,10 +10,10 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/distribution/distribution/v3"
|
"github.com/2DFS/2dfs-registry/v3"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||||
"github.com/distribution/distribution/v3/testutil"
|
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||||
"github.com/distribution/reference"
|
"github.com/distribution/reference"
|
||||||
"github.com/opencontainers/go-digest"
|
"github.com/opencontainers/go-digest"
|
||||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user