Skip to content

Instantly share code, notes, and snippets.

@armandmcqueen
Last active October 9, 2019 22:03
Show Gist options
  • Save armandmcqueen/e4ad4417e896bc5e5729523beb00ca55 to your computer and use it in GitHub Desktop.
Save armandmcqueen/e4ad4417e896bc5e5729523beb00ca55 to your computer and use it in GitHub Desktop.
Package code samples
# Generate a package
pkg_builder = PackageBuilder()
pkg_builder = pkg_builder.set('KEY', '/path/to/file')
pkg = pkg_builder.build() # Physical keys point to the same location they always have
# Update a package
pkg.set("logical_key", "physical_key") # This generates the hash for the object
# Package Browsing
```
> quilt3.list_packages()
Package Hash
"quiltdata/example" 00817c1cf85ac050e0c8fb9652a7a6
"quiltdata/example" 9dd6b60e1ebebef962d3411ede8625
```
or
> quilt3.list_packages()
Package Tag Hash
"quiltdata/example" latest 00817c1cf85ac050e0c8fb9652a7a6
"quiltdata/example" 20191001 9dd6b60e1ebebef962d3411ede8625
"quiltdata/example" 6953a23bf49fab7645fb3a80be28b7
# Package Deletion
/.quilt/packages/user=quiltdata/package=example/hash_prefix=XX/00817c1cf85ac050e0c8fb9652a7a6.jsonl
/.quilt/tags/user=quiltdata/package=example/latest
/.quilt/tags/user=quiltdata/package=example/20191001
quilt3.delete_package("quiltdata/example", hash="00817c1cf85ac050e0c8fb9652a7a6") # Delete manifests, either deletes tags or have tags point to nothing
quilt3.delete_package_tag("quiltdata/example", tag="20191001") # Delete a tag, do not delete undelying data
# Retrieve an existing Package manifest
pkg = Package.browse("armand/pkg", registry="staging-armand.quiltdata.com", hash="XXXXXXXX")
pkg = Package.browse("armand/pkg", registry="staging-armand.quiltdata.com", tag="XXXXXXX")
# Download a package and a split of the data
quilt3.install_package("quiltdata/example", tag="20191001", location="/tmp/quilt/")
/tmp/quilt/quiltdata/example/train/file1.jpeg
/tmp/quilt/quiltdata/example/train/file2.jpeg
...
/tmp/quilt/quiltdata/example/test/file1.jpeg
# Download
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment