Changelog
[1.0.0]
feat: Peak SDK is now available on PyPi. 🚀
feat: The package has been rebranded as peak-sdk and now comes with a built-in CLI, eliminating the need for separate installation steps.
To install the SDK and the CLI, just run the following command
pip install peak-sdk
To install directly from GitHub, run the following command
pip install "peak-sdk @ git+https://github.com/PeakBI/peak-sdk.git@{branch-name-or-tag}"
feat: Users can now search worflows, images, and versions by passing in their name in the list functions. This will return a list of all the resources that contain the passed value in its name.
feat: Yaml file for creating or updating images or webapps is now optional. We can now pass all the required information as arguments to the CLI command.
feat: Add
create-or-update
commands/functions in SDK/CLI resources. This allows us to update an existing workflow or create it if it does not exist.feat Added function and command -
patch-workflow
. With the help of this, we can just pass the required parameters to update a workflow without need of yaml file.docs: Usage examples for Press SDK have been added.
[0.0.6]
fix: Issue with environment variables where characters are getting autoescaped is fixed (#218).
breaking: Updated the format of the “release” key from a string value to an object with a nested “version” property to provide more flexibility and clarity in specifying the release version. Documentation is updated to reflect the changes.
release: { version: "0.0.1"; }
[0.0.5]
ci: Updated and Published SDK and CLI docs to https://docs.peak.ai/sdk/.
feat: Added versioning support to image
list-builds
function. We can now filter image builds on versions and build status.chore: Added API doc links to all SDK functions.
fix: Examples for using templates are fixed (#226).
feat: Webapp blocks are now supported in Press SDK and CLI.
[0.0.4]
feat: add progress bar in CLI and SDK for artifact compression.
refactor: [CLI] pass client object in click context instead of creating it inside every command file.
feat: Add support for passing parameters while executing workflows.
feat: Send source information (whether call is made from SDK or CLI) in telemetry data.
breaking: SDK/CLI for Press Apps now supports new Press APIs.
breaking: An App Spec must now be made up of already existing block specs by giving block config info in request body.
breaking: The
featured
field has been removed from the spec definition and is now defined at the root when creating a spec.added: Users can now share specs across different tenants so they can be viewed/deployed outside of the tenant they were created in.
breaking: Removed
list-revisions
andcreate-revision
for Apps deployments. These will be added back soon in upcoming release.
breaking: SDK/CLI for Press Blocks now supports new Press APIs which adds support for image versioning as well.
added: Blocks are now generic.
added: Users can now share specs across different tenants so they can be viewed/deployed outside of the tenant they were created in.
breaking: archive and unarchive functions for blocks are removed. We can now use
update_spec_metadata
to update the spec status.breaking: To create a new block spec release, instead of using
update_spec
, we can now usecreate_release
SDK function.added:
update_spec_metadata
is added which can be used to update metadata and discoverability of the spec.breaking: Removed
list-revisions
andcreate-revision
for Blocks deployments. These will be added back soon in upcoming release.
added: Generic list/search functions and commands are added in Press SDK/CLI which will return specs/deployments of any kind (app or block).
breaking:
ignore_files_glob
is not supported when passing artifact information. It is replaced withignore_files
which takes in list of ignorefiles.ci: update branch name regex to support more patterns.
[0.0.3]
fix:
update(patch)
command forresources.image
service works with all arguments as optional.fix: updated types in
sdk
topython >= 3.10
[PEP-585+]
, fixed lingering type issues inlist
methods and allsdk
methods.refactor: updated
list
methods insdk
to return flattened list of items when usingauto-pagination
.refactor: updated
RegistryHandler
and session methods to be more consistent and robust.refactor: changed
list
cli
method names to avoid shadowing built-inlist
type.docs: revised examples to be in-line with current state of
sdk
and updated types inexamples
.docs: added sections on
auto-pagination
,template
REFERENCES, and usage guides ontemplating
forsdk
andcli
.breaking:
type
renamed toimage_type
inresources.image
service, fromtype
to avoid shadowing built-intype
.tests: updated all tests and added new tests for missing scenarios, for 100% unit test coverage across
cli
andsdk
.ci: drop
typeguard
fromdependencies
and stick withmypy
for type checking.ci: added
sonarqube
for code quality andcoverage
reporting.ci: added
detect-secrets
to prevent secrets from being committed to the repository.feat: SDK/CLI now supports
Image Management
v2 APIs, which adds support for versioning.breaking: In
create
orupdate
functions, we now need to pass the request details insidebody
key instead of directly passing them as arguments.added: You can now create image with source set to
dockerfile
andgithub
as well along withupload
.breaking: We need to pass named arguments whenever any cli command needs 2 or more arguments.
breaking:
create(post)
function is updated to support versioning. We now need to pass version as well in the request body.breaking:
update(patch)
function is removed from bothsdk
andcli
andupdate-version(patch)
is added.
feat: SDK/CLI
Workflow
resources now supports image versions.feat: SDK/CLI now supports
Webapp
create, read, update, delete (CRUD) and list operations.feat: SDK/CLI now sends usage metrics to Peak. No sensitive/PII data is sent.
ci: fix github action to trigger pre-validate checks on correct conditions.