Merge pull request #3290 from quay/joseph.schorr/QUAY-1124/implement-new-data-model

Implement the new OCI-based registry data model
This commit is contained in:
Joseph Schorr 2018-11-08 13:39:29 -05:00 committed by GitHub
commit 6b86b87a16
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
23 changed files with 1847 additions and 209 deletions

View file

@ -251,17 +251,18 @@ def list_repository_tags(namespace_name, repository_name, include_hidden=False,
def create_or_update_tag(namespace_name, repository_name, tag_name, tag_docker_image_id,
reversion=False):
reversion=False, now_ms=None):
try:
repo = _basequery.get_existing_repository(namespace_name, repository_name)
except Repository.DoesNotExist:
raise DataModelException('Invalid repository %s/%s' % (namespace_name, repository_name))
return create_or_update_tag_for_repo(repo.id, tag_name, tag_docker_image_id, reversion=reversion)
return create_or_update_tag_for_repo(repo.id, tag_name, tag_docker_image_id, reversion=reversion,
now_ms=now_ms)
def create_or_update_tag_for_repo(repository_id, tag_name, tag_docker_image_id, reversion=False,
oci_manifest=None):
now_ms = get_epoch_timestamp_ms()
oci_manifest=None, now_ms=None):
now_ms = now_ms or get_epoch_timestamp_ms()
now_ts = int(now_ms / 1000)
with db_transaction():