qiskit-serverless
qiskit-serverless copied to clipboard
Function uniqueness
Summary
From #1313 it was a conversation around function uniqueness. With a function being shared we could have problems knowing to what function we want to access. This PR pretends to propose a solution for it with the next proposal:
- ACL Program continues being the same: program.instances are what provides external access to programs through VIEW and RUN permissions.
-
Provider is the new entity that it manages proprietary Qiskit Functions:
- name: string that will identify the namespace for the Qiskit Function: "ibm/transpiler"
- registry: a namespace will have a registry associated so every image in that namespace will be uploaded there
- admin_group: it's the group that will guarantee management over the namespace, if the user has this group it has the possibility to create and upload Qiskit Functions inside this namespace
Details and comments
- New
Provider
model -
Program
now can has (or not) aprovider
- Updated the serializer to be able to receive the
provider.name
- Added the logic in the
update
end-point to manage access and update/create the Qiskit Function - Added current support in
client
forfunction.run
. I didn't add support for it inclient.run
. - Tests updated