Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update 0.8.3 acapy image and python versions #703

Merged
merged 4 commits into from
Jul 20, 2023
Merged

Conversation

loneil
Copy link
Collaborator

@loneil loneil commented Jul 13, 2023

This pull request:

  • Updates to a 0.8.3 ACA-Py prerelease tag for Traction (will be included in the next official 0.9 release, discussed in meetings)
  • Updates to the ACA-Py image that is askar-only (previous Traction code used the one that had Indy in it as well)
  • Updates Python version to 3.9
  • Some updates to the plugin builds for poetry

Changes are based on work @usingtechnology did in PR 684 but isolated and expanded on here to troubleshoot issues with the 0.8.2 askar-only image

Prior to 0.8.2 Traction was using bcgovimages/aries-cloudagent:py36-1.16-1_0.8.1
We are updating to use ghcr releases instead.
Initially tried upgrading to ghcr.io/hyperledger/aries-cloudagent-python:py3.9-0.8.2 but this broke revocable credential creation. See discussions
openwallet-foundation/acapy#2307
openwallet-foundation/acapy#2308

We will use the prerelease image cut with the indy_client fix as discussed for the time being until 0.9
ghcr.io/hyperledger/aries-cloudagent-python:py3.9-0.8.3-pre

I've regression tested the environment here with this 0.8.3 release and it fixes the revocable creds (tails folder) problem and passes other functionality.

Issuer
f16d5181-5069-4c04-99b5-faac6dda9faa
38a720bd-1432-49d8-9557-541a6d4cab03

Non-Issuer
03490cb8-09e2-40f5-a4ef-0bd2bf6826c8
2fa1d27e-419e-46c5-8cd6-35aad9fdd0ce

@loneil loneil temporarily deployed to development July 13, 2023 04:50 — with GitHub Actions Inactive
@github-actions
Copy link

@loneil
Copy link
Collaborator Author

loneil commented Jul 13, 2023

Everything working at this time

  • Reservation/Innkeeper approval/Tenant creation
  • Make issuer (connect to endorser, register DID)
  • Invitation Connections
  • Messaging
  • Create schemas and cred defs (revocable and non)
  • Receive proof requests

EXCEPT: Credentials (which offer all good, show up on the BC Wallet, or in the other tenant's credential exchange list), when accepted end up in abandoned

image

Confirming with a second Traction tenant (so not a BC Wallet thing). On the other end, after accepting the offer it appears to transition through request_sent for a bit then go to abandoned on the receiver end too.
image

Update
Progress. Abandoned creds appears to be an issue with revocable credentials only (seems to be the only type I ever make).

They are erroring as such:
Issuer side exch record: "error_msg": "Cred def id 77WtXYVbk64Swdn1nuj5Dm:3:CL:882470:Licence to Kill has no active revocation registry."
Holder side exch record: "error_msg": "issuance-abandoned: issuance-abandoned"

@loneil
Copy link
Collaborator Author

loneil commented Jul 17, 2023

Current point blocking issuing revocable creds, tails file will not create

2023-07-17 21:07:23,889 aries_cloudagent.core.event_bus ERROR Error occurred while processing event
Traceback (most recent call last):
File "/home/aries/.venv/lib/python3.9/site-packages/aries_cloudagent/core/event_bus.py", line 121, in notify
await processor()
File "/home/aries/.venv/lib/python3.9/site-packages/aries_cloudagent/revocation/routes.py", line 1379, in on_revocation_registry_init_event
await shield(generate(registry_record))
File "/usr/local/lib/python3.9/asyncio/futures.py", line 284, in __await__
yield self # This tells Task to wait for completion.
File "/usr/local/lib/python3.9/asyncio/tasks.py", line 328, in __wakeup
future.result()
File "/usr/local/lib/python3.9/asyncio/futures.py", line 201, in result
raise self._exception
File "/usr/local/lib/python3.9/asyncio/tasks.py", line 256, in __step
result = coro.send(None)
File "/home/aries/.venv/lib/python3.9/site-packages/aries_cloudagent/revocation/routes.py", line 1323, in generate
await rr_record.generate_registry(profile)
File "/home/aries/.venv/lib/python3.9/site-packages/aries_cloudagent/revocation/models/issuer_rev_reg_record.py", line 185, in generate_registry
tails_hopper_dir = indy_client_dir(join("tails", ".hopper"), create=True)
File "/home/aries/.venv/lib/python3.9/site-packages/aries_cloudagent/indy/util.py", line 37, in indy_client_dir
makedirs(target_dir, exist_ok=True)
File "/usr/local/lib/python3.9/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/usr/local/lib/python3.9/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/usr/local/lib/python3.9/os.py", line 225, in makedirs
mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/home/aries/.indy_client'

@loneil loneil temporarily deployed to development July 18, 2023 05:01 — with GitHub Actions Inactive
@loneil loneil temporarily deployed to development July 18, 2023 06:18 — with GitHub Actions Inactive
@loneil loneil temporarily deployed to development July 18, 2023 16:14 — with GitHub Actions Inactive
@loneil
Copy link
Collaborator Author

loneil commented Jul 18, 2023

This will need the new 0.8.3 image with the indy_client folder fix

@loneil loneil changed the title Update 0.8.2 acapy image and python versions Update 0.8.x acapy image and python versions Jul 18, 2023
@loneil loneil changed the title Update 0.8.x acapy image and python versions Update 0.8.3 acapy image and python versions Jul 18, 2023
@swcurran
Copy link
Contributor

Looks good to me, but I’m not at the right level to give the approval.

Copy link
Member

@esune esune left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we explicitly not supporting python 3.10/3.11 in pyproject.toml?

scripts/docker-compose.yml Outdated Show resolved Hide resolved
@loneil
Copy link
Collaborator Author

loneil commented Jul 19, 2023

Are we explicitly not supporting python 3.10/3.11 in pyproject.toml?

I'd included that stuff over from Sherman's updates to the plugin python base images which switched from 3.6 to 3.9 images so I assume the goal is to keep everything in line to a certain version?

@loneil loneil temporarily deployed to development July 19, 2023 19:17 — with GitHub Actions Inactive
@esune
Copy link
Member

esune commented Jul 19, 2023

Are we explicitly not supporting python 3.10/3.11 in pyproject.toml?

I'd included that stuff over from Sherman's updates to the plugin python base images which switched from 3.6 to 3.9 images so I assume the goal is to keep everything in line to a certain version?

@usingtechnology any input here? I am fine leaving just 3.9 if that is what we will be enforcing.

@usingtechnology
Copy link
Collaborator

i only limited it because the base images were at 3.9, seems safer to make that the same in the code. Wouldn't want someone writing code or bringing in a dependency that won't run on production images.

@esune esune self-requested a review July 20, 2023 04:25
Copy link
Member

@esune esune left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏻

@esune esune merged commit 6abb115 into main Jul 20, 2023
@esune esune deleted the feature/acapyImageUpdate branch July 20, 2023 04:26
@esune esune temporarily deployed to development July 20, 2023 04:26 — with GitHub Actions Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants