1
0
mirror of https://github.com/quay/quay.git synced 2026-01-26 06:21:37 +03:00
Files
quay/web
Shaon H 92b6f4729a feat(mirror): organization-level mirror config CRUD APIs (PROJQUAY-1266) (#4923)
* mirror: Add FEATURE_ORG_MIRROR feature flag (PROJQUAY-1266)

Add organization-level repository mirroring feature flag to enable
the new org mirroring functionality. Feature is disabled by default.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* mirror: Add GET endpoint for org mirror config (PROJQUAY-1266)

Implements the GET /v1/organization/<org>/mirror endpoint to retrieve
organization-level mirror configuration. Includes business logic layer
with get_org_mirror_config() and comprehensive unit tests.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* mirror: Add POST endpoint for org mirror config (PROJQUAY-1266)

Add create endpoint for organization-level mirror configuration:
- POST /v1/organization/<orgname>/mirror creates new config
- Validates robot account ownership and credentials
- Returns 201 on success, 409 if config already exists

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* mirror: Add DELETE endpoint for org mirror config (PROJQUAY-1266)

Add delete endpoint for organization-level mirror configuration:
- DELETE /v1/organization/<orgname>/mirror removes config
- Also deletes all associated discovered repositories
- Returns 204 on success, 404 if config doesn't exist

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* mirror: Add PUT endpoint for org mirror config (PROJQUAY-1266)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix test failure

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 16:01:15 -08:00
..
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2025-11-06 12:51:23 -06:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00
2022-12-20 08:38:16 -05:00

Quay UI

UI for Quay based on React and Patternfly framework

Installation

It is assumed that you have a Quay instance running that you can point the UI to. Run the following commands to get started

git clone https://github.com/quay/quay-ui.git
cd quay-ui
npm install

Development

Start the dev server by running

npm start

Runs the app in the development mode.
Open http://localhost:9000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

By default the UI connects to the quay backend for API. If you don't have a backend or want to develop without a backend you can set the environment variable MOCK_API=true before running npm start.

In order for you to use this with a Quay backend, you need to configure CORS on the Quay side. Add the following to your config.yaml in Quay

CORS_ORIGIN: "http://localhost:9000"

If you are using docker-compose for local development, you can add this to local-dev/stack/config.yaml in the Quay repo.

Testing

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

Integration Tests

Integration tests are ran via Cypress. The URL under test defaults to http://localhost:9000 and can be overriden with the baseUrl parameter in the cypress.config.ts file.

To run tests locally:

  • Start the application with npm start
  • When application has started run the tests with npm run test:integration

Building for Production

npm run build

Builds the app for production to the dist folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes. See the section about deployment for more information.