Update metadata for collection releases (#1018) Add prefect-azure v0.4.6 to block records Update aggregate block metadata with prefect-azure v0.4.6 Add prefect-azure v0.4.6 to worker records Update aggregate worker metadata with prefect-azure v0.4.6 Add prefect v3.6.3 to block records Update aggregate block metadata with prefect v3.6.3 Add prefect v3.6.3 to worker records Update aggregate worker metadata with prefect v3.6.3 Add prefect-kubernetes v0.7.1 to block records Update aggregate block metadata with prefect-kubernetes v0.7.1 Add prefect-kubernetes v0.7.1 to worker records Update aggregate worker metadata with prefect-kubernetes v0.7.1 Add prefect-databricks v0.3.2 to block records Update aggregate block metadata with prefect-databricks v0.3.2 Add prefect-databricks v0.3.2 to worker records Add prefect-slack v0.3.1 to block records Update aggregate block metadata with prefect-slack v0.3.1 Add prefect-slack v0.3.1 to worker records Add prefect-gcp v0.6.12 to block records Add prefect-email v0.4.2 to block records Update aggregate block metadata with prefect-gcp v0.6.12 Add prefect-dask v0.3.6 to worker records Add prefect-gcp v0.6.12 to worker records Update aggregate worker metadata with prefect-gcp v0.6.12 Update aggregate block metadata with prefect-email v0.4.2 Add prefect-email v0.4.2 to worker records Add prefect-gitlab v0.3.2 to block records Update aggregate block metadata with prefect-gitlab v0.3.2 Add prefect-gitlab v0.3.2 to worker records Add prefect-aws v0.7.1 to block records Update aggregate block metadata with prefect-aws v0.7.1 Add prefect-aws v0.7.1 to worker records Update aggregate worker metadata with prefect-aws v0.7.1 Add prefect-sqlalchemy v0.5.3 to block records Update aggregate block metadata with prefect-sqlalchemy v0.5.3 Add prefect-sqlalchemy v0.5.3 to worker records Add prefect-github v0.3.2 to worker records Add prefect-dbt v0.7.9 to block records Update aggregate block metadata with prefect-dbt v0.7.9 Add prefect-dbt v0.7.9 to worker records Add prefect-snowflake v0.28.7 to block records Update aggregate block metadata with prefect-snowflake v0.28.7 Add prefect-snowflake v0.28.7 to worker records Add prefect-ray v0.4.5 to block records Update aggregate block metadata with prefect-ray v0.4.5 Add prefect-ray v0.4.5 to worker records
Update metadata for collection releases (#1018)
Add prefect-azure v0.4.6 to block records
prefect-azure
v0.4.6
Update aggregate block metadata with prefect-azure v0.4.6
Add prefect-azure v0.4.6 to worker records
Update aggregate worker metadata with prefect-azure v0.4.6
Add prefect v3.6.3 to block records
prefect
v3.6.3
Update aggregate block metadata with prefect v3.6.3
Add prefect v3.6.3 to worker records
Update aggregate worker metadata with prefect v3.6.3
Add prefect-kubernetes v0.7.1 to block records
prefect-kubernetes
v0.7.1
Update aggregate block metadata with prefect-kubernetes v0.7.1
Add prefect-kubernetes v0.7.1 to worker records
Update aggregate worker metadata with prefect-kubernetes v0.7.1
Add prefect-databricks v0.3.2 to block records
prefect-databricks
v0.3.2
Update aggregate block metadata with prefect-databricks v0.3.2
Add prefect-databricks v0.3.2 to worker records
Add prefect-slack v0.3.1 to block records
prefect-slack
v0.3.1
Update aggregate block metadata with prefect-slack v0.3.1
Add prefect-slack v0.3.1 to worker records
Add prefect-gcp v0.6.12 to block records
prefect-gcp
v0.6.12
Add prefect-email v0.4.2 to block records
prefect-email
v0.4.2
Update aggregate block metadata with prefect-gcp v0.6.12
Add prefect-dask v0.3.6 to worker records
prefect-dask
v0.3.6
Add prefect-gcp v0.6.12 to worker records
Update aggregate worker metadata with prefect-gcp v0.6.12
Update aggregate block metadata with prefect-email v0.4.2
Add prefect-email v0.4.2 to worker records
Add prefect-gitlab v0.3.2 to block records
prefect-gitlab
Update aggregate block metadata with prefect-gitlab v0.3.2
Add prefect-gitlab v0.3.2 to worker records
Add prefect-aws v0.7.1 to block records
prefect-aws
Update aggregate block metadata with prefect-aws v0.7.1
Add prefect-aws v0.7.1 to worker records
Update aggregate worker metadata with prefect-aws v0.7.1
Add prefect-sqlalchemy v0.5.3 to block records
prefect-sqlalchemy
v0.5.3
Update aggregate block metadata with prefect-sqlalchemy v0.5.3
Add prefect-sqlalchemy v0.5.3 to worker records
Add prefect-github v0.3.2 to worker records
prefect-github
Add prefect-dbt v0.7.9 to block records
prefect-dbt
v0.7.9
Update aggregate block metadata with prefect-dbt v0.7.9
Add prefect-dbt v0.7.9 to worker records
Add prefect-snowflake v0.28.7 to block records
prefect-snowflake
v0.28.7
Update aggregate block metadata with prefect-snowflake v0.28.7
Add prefect-snowflake v0.28.7 to worker records
Add prefect-ray v0.4.5 to block records
prefect-ray
v0.4.5
Update aggregate block metadata with prefect-ray v0.4.5
Add prefect-ray v0.4.5 to worker records
This is a registry of metadata for Prefect collections.
This repository stores metadata for:
This repository is structured as follows:
prefect-collection-registry/ |-- collections/ | |-- collection-A/ | | |-- latest-release-tag-n.json | | |-- flows/ | | | |-- release-tag-n.json | | | |-- ... | | | |-- release-tag-0.json | | |-- blocks/ | | | |-- release-tag-n.json | | | |-- ... | | | |-- release-tag-0.json | |-- ... |-- views/ | |-- aggregate-block-metadata.json | |-- aggregate-collection-metadata.json | |-- aggregate-flow-metadata.json | |-- ...
Metadata files are stored in JSON format. The structure of each JSON is validated against a JSON schema.
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "name": { "type": "string" }, "slug": { "type": "string" }, "parameters": { "type": "object" }, "description": { "type": "object" }, "documentation_url": { "type": "string" }, "logo_url": { "type": "string" }, "install_command": { "type": "string" }, "path_containing_flow": { "type": "string" }, "entrypoint": { "type": "string" }, "repo_url": { "type": "string" } }, "required": [ "name", "slug", "parameters", "description", "documentation_url", "logo_url", "install_command", "path_containing_flow", "entrypoint", "repo_url" ], }
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "name": {"type": "string"}, "slug": {"type": "string"}, "logo_url": { "minLength": 1, "maxLength": 2083, "format": "uri", "type": "string", }, "documentation_url": { "minLength": 1, "maxLength": 2083, "format": "uri", "oneOf": [{"type": "string"}, {"type": "null"}], }, "description": {"type": "string"}, "code_example": {"type": "string"}, "block_schema": {"$ref": "#/components/schemas/block_schema"}, }, "required": [ "name", "slug", "logo_url", "description", "code_example", "block_schema", ], "components": { "schemas": { "block_schema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "checksum": {"type": "string"}, "version": {"type": "string"}, "capabilities": {"type": "array", "items": {"type": "string"}}, "fields": {"type": "object"}, }, "required": [ "checksum", "version", "capabilities", "fields", ], } } }, }
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "type": {"type": "string"}, "description": {"type": "string"}, "documentation_url": {"type": "string"}, "logo_url": {"type": "string"}, "install_command": {"type": "string"}, "default_base_job_configuration": {"type": "object"}, }, "required": [ "type", "description", "install_command", "default_base_job_configuration", ], }
requires uv for dependency management and virtual environments.
uv
if you don’t have uv, install it:
curl -LsSf https://astral.sh/uv/install.sh | sh
Setup the development environment:
uv sync --dev --all-extras
Install and run pre-commit hooks:
uv run pre-commit install uv run pre-commit run --all-files --show-diff-on-failure
The pre-commit hooks will:
Run the tests:
uv run --with-editable '.[dev]' pytest tests -vv
uv run prefect --no-prompt deploy --all
this is the main entrypoint flow for updating all collections
uv run --frozen src/prefect_collection_registry/update_collection_metadata.py
this will:
[!NOTE] Though this script is automatically run on merge to main, you may also want to run it manually if something goes wrong.
main
this is the main entrypoint flow for syncing worker metadata to prefect core
uv run --frozen src/prefect_collection_registry/sync_views_to_core.py
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802032778号
prefect-collection-registry
This is a registry of metadata for Prefect collections.
what metadata is stored here?
This repository stores metadata for:
repository structure
This repository is structured as follows:
structure of metadata files
Metadata files are stored in JSON format. The structure of each JSON is validated against a JSON schema.
flow metadata schema
block metadata schema
worker metadata schema
development
requires
uvfor dependency management and virtual environments.if you don’t have
uv, install it:Setup the development environment:
Install and run pre-commit hooks:
The pre-commit hooks will:
Run the tests:
notes for maintainers
deploy the metadata update flow
run the metadata update script interactively
this is the main entrypoint flow for updating all collections
this will:
run the worker metadata sync script interactively
this is the main entrypoint flow for syncing worker metadata to prefect core
this will: