mirror of
https://github.com/distribution/distribution.git
synced 2025-07-04 02:57:22 +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
|
||||
contact_links:
|
||||
- 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.
|
||||
- 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.
|
||||
|
9
.github/workflows/build.yml
vendored
9
.github/workflows/build.yml
vendored
@ -14,7 +14,7 @@ on:
|
||||
pull_request:
|
||||
|
||||
env:
|
||||
DOCKERHUB_SLUG: distribution/distribution
|
||||
DOCKERHUB_SLUG: 2DFS/2dfs-registry
|
||||
GHCR_SLUG: ghcr.io/${{ github.repository }}
|
||||
|
||||
permissions:
|
||||
@ -102,13 +102,6 @@ jobs:
|
||||
-
|
||||
name: Set up Docker Buildx
|
||||
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
|
||||
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:
|
||||
|
||||
git clone https://github.com/distribution/distribution
|
||||
git clone https://github.com/2DFS/2dfs-registry
|
||||
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).
|
||||
@ -51,7 +51,7 @@ The `registry`
|
||||
binary can then be run with the following:
|
||||
|
||||
$ ./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
|
||||
incantation:
|
||||
@ -86,7 +86,7 @@ directory. We can verify this worked by running
|
||||
the registry binary generated in the "./bin" directory:
|
||||
|
||||
$ ./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.
|
||||
|
||||
|
@ -13,7 +13,7 @@ ENV CGO_ENABLED=0
|
||||
WORKDIR /src
|
||||
|
||||
FROM base AS version
|
||||
ARG PKG=github.com/distribution/distribution/v3
|
||||
ARG PKG=github.com/2DFS/2dfs-registry/v3
|
||||
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); \
|
||||
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
|
||||
COMPOSE ?= docker compose
|
||||
|
||||
PKG=github.com/distribution/distribution/v3
|
||||
PKG=github.com/2DFS/2dfs-registry/v3
|
||||
|
||||
# Project packages.
|
||||
PACKAGES=$(shell go list -tags "${BUILDTAGS}" ./... | grep -v /vendor/)
|
||||
|
57
README.md
57
README.md
@ -1,56 +1,29 @@
|
||||
<p align="center">
|
||||
<img style="align: center; padding-left: 10px; padding-right: 10px; padding-bottom: 10px;" width="238px" height="238px" src="./distribution-logo.svg" />
|
||||
</p>
|
||||
## 2DFS+OCI distribution extension
|
||||
|
||||
[](https://github.com/distribution/distribution/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||
[](https://pkg.go.dev/github.com/distribution/distribution)
|
||||
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://github.com/2DFS/2dfs-registry/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||
[](LICENSE)
|
||||
[](https://codecov.io/gh/distribution/distribution)
|
||||
[](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fdistribution%2Fdistribution?ref=badge_shield)
|
||||
[](https://github.com/distribution/distribution/actions?query=workflow%3Aconformance)
|
||||
[](https://securityscorecards.dev/viewer/?uri=github.com/distribution/distribution)
|
||||
[](https://github.com/2DFS/2dfs-registry/actions?query=workflow%3Aconformance)
|
||||
[](https://securityscorecards.dev/viewer/?uri=github.com/2DFS/2dfs-registry)
|
||||
|
||||
The toolset to pack, ship, store, and deliver content.
|
||||
|
||||
This repository's main product is the Open Source Registry implementation
|
||||
for storing and distributing container images and other content using the
|
||||
[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.
|
||||
Based on the [OCI Distribution Specification](https://github.com/opencontainers/distribution-spec).
|
||||
This Fork provides additional support for `2dfs.field` layer type, layer flattening for OCI compatibility and semantic partitioning.
|
||||
|
||||
This repository contains the following components:
|
||||
|
||||
|**Component** |Description |
|
||||
|--------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| **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/).
|
||||
|
||||
### How does this integrate with Docker, containerd, and other OCI client?
|
||||
|
||||
Clients implement against the OCI specification and communicate with the
|
||||
registry using HTTP. This project contains a client implementation which
|
||||
is currently in use by Docker, however, it is deprecated for the
|
||||
[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.
|
||||
registry using HTTP.
|
||||
This project implements *semantic tags* allowing on demand image partitioning for **2DFS** compliant images.
|
||||
|
||||
## 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
|
||||
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
|
||||
|
||||
The distribution codebase is released under the [Apache 2.0 license](LICENSE).
|
||||
|
@ -7,7 +7,7 @@ import (
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"github.com/distribution/distribution/v3/version"
|
||||
"github.com/2DFS/2dfs-registry/v3/version"
|
||||
"github.com/opencontainers/go-digest"
|
||||
|
||||
_ "crypto/sha256"
|
||||
|
@ -20,8 +20,8 @@ import (
|
||||
"regexp"
|
||||
"text/template"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
)
|
||||
|
||||
var spaceRegex = regexp.MustCompile(`\n\s*`)
|
||||
|
@ -3,19 +3,19 @@ package main
|
||||
import (
|
||||
_ "net/http/pprof"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry"
|
||||
_ "github.com/distribution/distribution/v3/registry/auth/htpasswd"
|
||||
_ "github.com/distribution/distribution/v3/registry/auth/silly"
|
||||
_ "github.com/distribution/distribution/v3/registry/auth/token"
|
||||
_ "github.com/distribution/distribution/v3/registry/proxy"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/azure"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/filesystem"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/gcs"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/cloudfront"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/redirect"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/middleware/rewrite"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/s3-aws"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/htpasswd"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/silly"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/token"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/proxy"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/azure"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/filesystem"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/gcs"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/cloudfront"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/redirect"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware/rewrite"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/s3-aws"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
@ -72,7 +72,7 @@ $ docker run -d -p 5000:5000 --restart=always --name registry \
|
||||
```
|
||||
|
||||
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.
|
||||
|
||||
## List of configuration options
|
||||
@ -1343,7 +1343,7 @@ This example configures the registry instance to run on port `5000`, binding to
|
||||
verbose.
|
||||
|
||||
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
|
||||
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:
|
||||
|
||||
- be sure to first read about [how to contribute](https://github.com/distribution/distribution/blob/master/CONTRIBUTING.md).
|
||||
- you can then do so on the [GitHub project bugtracker](https://github.com/distribution/distribution/issues).
|
||||
- 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/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.
|
||||
url | string | URL provides a direct link to the content.
|
||||
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.
|
||||
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.
|
||||
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.
|
||||
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/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/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
|
||||
is a possibility, although it may have an effect on request service time.
|
||||
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.
|
||||
|
@ -68,7 +68,7 @@ proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
Otherwise Nginx resets the ELB's values, and the requests are not routed
|
||||
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
|
||||
|
||||
|
@ -39,8 +39,8 @@ If you want to understand, you should read [How to Write Go Code](https://golang
|
||||
|
||||
```console
|
||||
$ mkdir -p $GOPATH/src/github.com/distribution
|
||||
$ git clone https://github.com/distribution/distribution.git $GOPATH/src/github.com/distribution/distribution
|
||||
$ cd $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/2DFS/2dfs-registry
|
||||
```
|
||||
|
||||
## Build the binary
|
||||
|
@ -106,7 +106,7 @@ alpha-numeric := /[a-z0-9]+/
|
||||
separator := /[_.]|__|[-]*/
|
||||
```
|
||||
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.
|
||||
|
||||
{{< hint type=note >}}
|
||||
|
@ -6,7 +6,7 @@ draft: true
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
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.
|
||||
These are not supported by the OCI distribution project.
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
header:
|
||||
- name: GitHub
|
||||
ref: https://github.com/distribution/distribution/
|
||||
ref: https://github.com/2DFS/2dfs-registry/
|
||||
icon: gdoc_github
|
||||
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" />
|
||||
|
||||
[](https://github.com/distribution/distribution/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||
[](https://github.com/distribution/distribution/actions?query=workflow%3Aconformance)
|
||||
[](https://github.com/2DFS/2dfs-registry/actions/workflows/build.yml?query=workflow%3Abuild)
|
||||
[](https://github.com/2DFS/2dfs-registry/actions?query=workflow%3Aconformance)
|
||||
[](LICENSE)
|
||||
|
||||
## 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
|
||||
```
|
||||
@ -31,7 +31,7 @@ docker tag alpine 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.
|
||||
If you wish to mount the local filesystem to the `rootdirectory` of the
|
||||
`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
|
||||
|
||||
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/)
|
||||
that everyone is welcome to join and chat about development.
|
||||
|
@ -20,7 +20,7 @@ pygmentsCodeFences: true
|
||||
disablePathToLower: true
|
||||
|
||||
params:
|
||||
geekdocRepo: "https://github.com/distribution/distribution"
|
||||
geekdocRepo: "https://github.com/2DFS/2dfs-registry"
|
||||
geekdocEditPath: edit/main/docs
|
||||
geekdocLegalNotice: "https://www.linuxfoundation.org/legal/trademark-usage"
|
||||
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
|
||||
|
||||
require (
|
||||
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/azidentity v1.8.2
|
||||
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/mitchellh/mapstructure v1.5.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/v9 v9.7.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
|
||||
go.opentelemetry.io/contrib/exporters/autoexport 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
|
||||
)
|
||||
|
||||
require github.com/2DFS/2dfs-builder v0.0.101
|
||||
|
||||
require (
|
||||
cel.dev/expr v0.16.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/cespare/xxhash/v2 v2.3.0 // 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/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // 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/trace v1.11.0 h1:UHX6cOJm45Zw/KIbqHe4kII8PupLt/V5tscZUkeiJVI=
|
||||
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/AdaLogics/go-fuzz-headers v0.0.0-20221103172237-443f56ff4ba8/go.mod h1:i9fr2JpcEcY/IHEvzCM3qXUZYOQHgR89dt4es1CgMhc=
|
||||
github.com/2DFS/2dfs-builder v0.0.101 h1:5yihdj/pZaXowhP5ZsLUJ1AhFoaP7A5gq7dYoAP1VSg=
|
||||
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/go.mod h1:zGqV2R4Cr/k8Uye5w+dgQ06WJtEcbQG/8J7BB6hnCr4=
|
||||
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/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/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug=
|
||||
github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM=
|
||||
github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040=
|
||||
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/go.mod h1:7rwL4CYBLnjLxUqIJNnCWiEdr3bn6IUYi15bNlnbCCU=
|
||||
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-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-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-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.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"errors"
|
||||
"net/http"
|
||||
|
||||
"github.com/distribution/distribution/v3/health"
|
||||
"github.com/2DFS/2dfs-registry/v3/health"
|
||||
)
|
||||
|
||||
var updater = health.NewStatusUpdater()
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3/health"
|
||||
"github.com/2DFS/2dfs-registry/v3/health"
|
||||
)
|
||||
|
||||
// TestGETDownHandlerDoesNotChangeStatus ensures that calling the endpoint
|
||||
|
@ -10,7 +10,7 @@ import (
|
||||
"path/filepath"
|
||||
"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
|
||||
|
@ -17,14 +17,14 @@
|
||||
//
|
||||
// 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
|
||||
// endpoints: "/debug/health/down" and "/debug/health/up". These endpoints add
|
||||
// "manual" checks that allow the service to quickly be brought in/out of
|
||||
// rotation.
|
||||
//
|
||||
// import _ "github.com/distribution/distribution/v3/health/api"
|
||||
// import _ "github.com/2DFS/2dfs-registry/v3/health/api"
|
||||
//
|
||||
// # curl localhost:5001/debug/health
|
||||
// {}
|
||||
@ -105,7 +105,7 @@
|
||||
// You can also use the predefined Checkers that come included with the health
|
||||
// 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
|
||||
// using a `FileChecker` to take the application out of rotation if a certain
|
||||
|
@ -9,8 +9,8 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
)
|
||||
|
||||
// Registers global /debug/health api endpoint, creates default registry
|
||||
|
@ -11,9 +11,9 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/client"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -9,9 +9,9 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
)
|
||||
|
||||
// An implementation of clock for providing fake time data.
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
||||
|
@ -7,9 +7,9 @@ import (
|
||||
"net/http"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
)
|
||||
|
||||
// Test implements distribution.BlobWriter
|
||||
|
@ -8,8 +8,8 @@ import (
|
||||
"mime"
|
||||
"net/http"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
)
|
||||
|
||||
// ErrNoErrorsInBody is returned when an HTTP response body parses to an empty
|
||||
|
@ -14,11 +14,11 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -16,11 +16,11 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/google/uuid"
|
||||
"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
|
||||
// call a random generator from the package initialization
|
||||
// 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()
|
||||
})
|
||||
return ic.id
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/requestutil"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/requestutil"
|
||||
"github.com/google/uuid"
|
||||
"github.com/gorilla/mux"
|
||||
)
|
||||
|
@ -33,7 +33,7 @@ import (
|
||||
// If the function ran for roughly 1s, such a usage would emit a log message
|
||||
// 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
|
||||
// package and a trace id is emitted that can be linked with parent ids.
|
||||
|
@ -5,8 +5,8 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -6,8 +6,8 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -5,7 +5,7 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
@ -5,8 +5,8 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest"
|
||||
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -6,8 +6,8 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
@ -5,8 +5,8 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest"
|
||||
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -6,8 +6,8 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
||||
distribution "github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -3,7 +3,7 @@ package schema2
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
@ -5,8 +5,8 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
@ -3,8 +3,8 @@ package tdfs
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
tdfs "github.com/giobart/2dfs-builder/filesystem"
|
||||
tdfs "github.com/2DFS/2dfs-builder/filesystem"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/opencontainers/go-digest"
|
||||
)
|
||||
|
||||
|
@ -12,9 +12,9 @@ import (
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
||||
tdfsfilesystem "github.com/giobart/2dfs-builder/filesystem"
|
||||
tdfsfilesystem "github.com/2DFS/2dfs-builder/filesystem"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||
)
|
||||
|
||||
type Partition struct {
|
||||
|
@ -4,8 +4,8 @@ import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/requestutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/requestutil"
|
||||
"github.com/distribution/reference"
|
||||
events "github.com/docker/go-events"
|
||||
"github.com/google/uuid"
|
||||
|
@ -3,9 +3,9 @@ package notifications
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
"github.com/distribution/reference"
|
||||
events "github.com/docker/go-events"
|
||||
"github.com/google/uuid"
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
events "github.com/docker/go-events"
|
||||
)
|
||||
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"testing"
|
||||
"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
|
||||
|
@ -13,7 +13,7 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
events "github.com/docker/go-events"
|
||||
)
|
||||
|
||||
|
@ -5,9 +5,9 @@ import (
|
||||
"io"
|
||||
"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/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -5,13 +5,13 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"net/http"
|
||||
"sync"
|
||||
|
||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
||||
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||
events "github.com/docker/go-events"
|
||||
"github.com/docker/go-metrics"
|
||||
)
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"net/http"
|
||||
"regexp"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
)
|
||||
|
@ -1,6 +1,6 @@
|
||||
package v2
|
||||
|
||||
import "github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
import "github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
|
||||
var (
|
||||
// ErrorCodeDigestInvalid is returned when uploading a blob if the
|
||||
|
@ -18,8 +18,8 @@ import (
|
||||
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
)
|
||||
|
||||
func TestBasicAccessController(t *testing.T) {
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"io"
|
||||
"strings"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
)
|
||||
|
@ -12,7 +12,7 @@ import (
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
|
@ -5,7 +5,7 @@ import (
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
)
|
||||
|
||||
func TestSillyAccessController(t *testing.T) {
|
||||
|
@ -13,7 +13,7 @@ import (
|
||||
"os"
|
||||
"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/sirupsen/logrus"
|
||||
)
|
||||
|
@ -11,7 +11,7 @@ import (
|
||||
"github.com/go-jose/go-jose/v4/jwt"
|
||||
log "github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
)
|
||||
|
||||
const (
|
||||
|
@ -18,7 +18,7 @@ import (
|
||||
"testing"
|
||||
"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/jwt"
|
||||
)
|
||||
|
@ -19,16 +19,16 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/gorilla/handlers"
|
||||
"github.com/opencontainers/go-digest"
|
||||
|
@ -19,26 +19,26 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/health"
|
||||
"github.com/distribution/distribution/v3/health/checks"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
||||
"github.com/distribution/distribution/v3/notifications"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
registrymiddleware "github.com/distribution/distribution/v3/registry/middleware/registry"
|
||||
repositorymiddleware "github.com/distribution/distribution/v3/registry/middleware/repository"
|
||||
"github.com/distribution/distribution/v3/registry/proxy"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
memorycache "github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
rediscache "github.com/distribution/distribution/v3/registry/storage/cache/redis"
|
||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
||||
storagemiddleware "github.com/distribution/distribution/v3/registry/storage/driver/middleware"
|
||||
"github.com/distribution/distribution/v3/version"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/health"
|
||||
"github.com/2DFS/2dfs-registry/v3/health/checks"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||
"github.com/2DFS/2dfs-registry/v3/notifications"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
registrymiddleware "github.com/2DFS/2dfs-registry/v3/registry/middleware/registry"
|
||||
repositorymiddleware "github.com/2DFS/2dfs-registry/v3/registry/middleware/repository"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
memorycache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
rediscache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/redis"
|
||||
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||
storagemiddleware "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/middleware"
|
||||
"github.com/2DFS/2dfs-registry/v3/version"
|
||||
"github.com/distribution/reference"
|
||||
events "github.com/docker/go-events"
|
||||
"github.com/docker/go-metrics"
|
||||
|
@ -8,15 +8,15 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
_ "github.com/distribution/distribution/v3/registry/auth/silly"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
memorycache "github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/auth/silly"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
memorycache "github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
)
|
||||
|
||||
// TestAppDispatcher builds an application with a test dispatcher and ensures
|
||||
|
@ -3,9 +3,9 @@ package handlers
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/gorilla/handlers"
|
||||
"github.com/opencontainers/go-digest"
|
||||
)
|
||||
|
@ -6,10 +6,10 @@ import (
|
||||
"net/url"
|
||||
"strconv"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/gorilla/handlers"
|
||||
"github.com/opencontainers/go-digest"
|
||||
|
@ -8,8 +8,8 @@ import (
|
||||
"net/url"
|
||||
"strconv"
|
||||
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
"github.com/gorilla/handlers"
|
||||
)
|
||||
|
||||
|
@ -5,11 +5,11 @@ import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
v2 "github.com/distribution/distribution/v3/registry/api/v2"
|
||||
"github.com/distribution/distribution/v3/registry/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
v2 "github.com/2DFS/2dfs-registry/v3/registry/api/v2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/auth"
|
||||
"github.com/opencontainers/go-digest"
|
||||
)
|
||||
|
||||
|
@ -9,9 +9,9 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/health"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/health"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
)
|
||||
|
||||
func TestFileHealthCheck(t *testing.T) {
|
||||
|
@ -9,7 +9,7 @@ import (
|
||||
"strconv"
|
||||
"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
|
||||
|
@ -9,16 +9,16 @@ import (
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
"github.com/distribution/distribution/v3/manifest/tdfs"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/tdfs"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/manifest/manifestlist"
|
||||
"github.com/distribution/distribution/v3/manifest/ocischema"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/manifestlist"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/ocischema"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/gorilla/handlers"
|
||||
"github.com/opencontainers/go-digest"
|
||||
|
@ -6,8 +6,8 @@ import (
|
||||
"sort"
|
||||
"strconv"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/registry/api/errcode"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/api/errcode"
|
||||
"github.com/gorilla/handlers"
|
||||
)
|
||||
|
||||
|
@ -4,9 +4,9 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
storagedriver "github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
storagedriver "github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
)
|
||||
|
||||
// InitFunc is the type of a RegistryMiddleware factory function and is
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
)
|
||||
|
||||
// InitFunc is the type of a RepositoryMiddleware factory function and is
|
||||
|
@ -5,9 +5,9 @@ import (
|
||||
"net/url"
|
||||
"strings"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
)
|
||||
|
||||
const challengeHeader = "Docker-Distribution-Api-Version"
|
||||
|
@ -9,8 +9,8 @@ import (
|
||||
credspkg "github.com/docker/docker-credential-helpers/credentials"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||
)
|
||||
|
||||
type execCredentials struct {
|
||||
|
@ -11,9 +11,9 @@ import (
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||
"github.com/distribution/reference"
|
||||
)
|
||||
|
||||
|
@ -10,12 +10,12 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/filesystem"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/filesystem"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
|
@ -6,9 +6,9 @@ import (
|
||||
|
||||
"github.com/opencontainers/go-digest"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||
"github.com/distribution/reference"
|
||||
)
|
||||
|
||||
|
@ -6,15 +6,15 @@ import (
|
||||
"sync"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/manifest/schema2"
|
||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/manifest/schema2"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/opencontainers/image-spec/specs-go"
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"expvar"
|
||||
"sync/atomic"
|
||||
|
||||
prometheus "github.com/distribution/distribution/v3/metrics"
|
||||
prometheus "github.com/2DFS/2dfs-registry/v3/metrics"
|
||||
"github.com/docker/go-metrics"
|
||||
)
|
||||
|
||||
|
@ -10,16 +10,16 @@ import (
|
||||
|
||||
"github.com/distribution/reference"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/internal/client"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth"
|
||||
"github.com/distribution/distribution/v3/internal/client/auth/challenge"
|
||||
"github.com/distribution/distribution/v3/internal/client/transport"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/proxy/scheduler"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/auth/challenge"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/client/transport"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/proxy/scheduler"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
)
|
||||
|
||||
var repositoryTTL = 24 * 7 * time.Hour
|
||||
|
@ -3,7 +3,7 @@ package proxy
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
||||
|
@ -7,7 +7,7 @@ import (
|
||||
"sync"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
)
|
||||
|
||||
|
@ -7,8 +7,8 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver"
|
||||
"github.com/distribution/reference"
|
||||
)
|
||||
|
||||
|
@ -6,8 +6,8 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/reference"
|
||||
)
|
||||
|
||||
|
@ -24,13 +24,13 @@ import (
|
||||
"golang.org/x/net/http2"
|
||||
"golang.org/x/net/http2/h2c"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/health"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/handlers"
|
||||
"github.com/distribution/distribution/v3/registry/listener"
|
||||
"github.com/distribution/distribution/v3/tracing"
|
||||
"github.com/distribution/distribution/v3/version"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/health"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/handlers"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/listener"
|
||||
"github.com/2DFS/2dfs-registry/v3/tracing"
|
||||
"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
|
||||
|
@ -24,9 +24,9 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/distribution/distribution/v3/configuration"
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
_ "github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/configuration"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
_ "github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/sirupsen/logrus"
|
||||
"gopkg.in/yaml.v2"
|
||||
)
|
||||
|
@ -4,10 +4,10 @@ import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"github.com/distribution/distribution/v3/internal/dcontext"
|
||||
"github.com/distribution/distribution/v3/registry/storage"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/factory"
|
||||
"github.com/distribution/distribution/v3/version"
|
||||
"github.com/2DFS/2dfs-registry/v3/internal/dcontext"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/factory"
|
||||
"github.com/2DFS/2dfs-registry/v3/version"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
|
@ -10,10 +10,10 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/distribution/distribution/v3"
|
||||
"github.com/distribution/distribution/v3/registry/storage/cache/memory"
|
||||
"github.com/distribution/distribution/v3/registry/storage/driver/inmemory"
|
||||
"github.com/distribution/distribution/v3/testutil"
|
||||
"github.com/2DFS/2dfs-registry/v3"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/cache/memory"
|
||||
"github.com/2DFS/2dfs-registry/v3/registry/storage/driver/inmemory"
|
||||
"github.com/2DFS/2dfs-registry/v3/testutil"
|
||||
"github.com/distribution/reference"
|
||||
"github.com/opencontainers/go-digest"
|
||||
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