Skip to content

Commit

Permalink
feat: add attestation url env variable, update github action (#1719)
Browse files Browse the repository at this point in the history
Signed-off-by: Bryce McMath <bryce.j.mcmath@gmail.com>
  • Loading branch information
bryce-mcmath authored Jan 31, 2024
1 parent 4253ce2 commit 5b48ad5
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 6 deletions.
12 changes: 11 additions & 1 deletion .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ jobs:
required_env_vars=(
"OCA_URL"
"PROOF_TEMPLATE_URL"
"ATTESTATION_INVITE_URL"
)
for var in "${required_env_vars[@]}"; do
if [ -z "${!var}" ]; then
Expand All @@ -72,6 +73,7 @@ jobs:
env:
OCA_URL: ${{ vars.OCA_URL }}
PROOF_TEMPLATE_URL: ${{ vars.PROOF_TEMPLATE_URL }}
ATTESTATION_INVITE_URL: ${{ vars.ATTESTATION_INVITE_URL }}

build-ios:
needs: [check-secrets, check-vars]
Expand Down Expand Up @@ -161,6 +163,7 @@ jobs:
OCA_URL: ${{ vars.OCA_URL }}
PROOF_TEMPLATE_URL: ${{ vars.PROOF_TEMPLATE_URL }}
REMOTE_LOGGING_URL: ${{ secrets.REMOTE_LOGGING_URL }}
ATTESTATION_INVITE_URL: ${{ vars.ATTESTATION_INVITE_URL }}
run: |
echo "MEDIATOR_USE_PUSH_NOTIFICATIONS=${MEDIATOR_USE_PUSH_NOTIFICATIONS}" >.env
echo "MEDIATOR_URL=${MEDIATOR_URL}" >>.env
Expand All @@ -169,6 +172,7 @@ jobs:
echo "OCA_URL=${OCA_URL}" >>.env
echo "PROOF_TEMPLATE_URL=${PROOF_TEMPLATE_URL}" >>.env
echo "REMOTE_LOGGING_URL=${REMOTE_LOGGING_URL}" >>.env
echo "ATTESTATION_INVITE_URL=${ATTESTATION_INVITE_URL}" >>.env

- name: Update APS environment
run: |
Expand Down Expand Up @@ -265,17 +269,23 @@ jobs:
- name: Create environment settings
working-directory: app
env:
MEDIATOR_USE_PUSH_NOTIFICATIONS: false
MEDIATOR_URL: ${{ secrets.MEDIATOR_URL }}
IAS_PORTAL_URL: ${{ secrets.IAS_PORTAL_URL }}
IAS_AGENT_INVITE_URL: ${{ secrets.IAS_AGENT_INVITE_URL }}
OCA_URL: ${{ vars.OCA_URL }}
PROOF_TEMPLATE_URL: ${{ vars.PROOF_TEMPLATE_URL }}
REMOTE_LOGGING_URL: ${{ secrets.REMOTE_LOGGING_URL }}
ATTESTATION_INVITE_URL: ${{ vars.ATTESTATION_INVITE_URL }}
run: |
echo "MEDIATOR_URL=${MEDIATOR_URL}" >.env
echo "MEDIATOR_USE_PUSH_NOTIFICATIONS=${MEDIATOR_USE_PUSH_NOTIFICATIONS}" >.env
echo "MEDIATOR_URL=${MEDIATOR_URL}" >>.env
echo "IAS_PORTAL_URL=${IAS_PORTAL_URL}" >>.env
echo "IAS_AGENT_INVITE_URL=${IAS_AGENT_INVITE_URL}" >>.env
echo "OCA_URL=${OCA_URL}" >>.env
echo "PROOF_TEMPLATE_URL=${PROOF_TEMPLATE_URL}" >>.env
echo "REMOTE_LOGGING_URL=${REMOTE_LOGGING_URL}" >>.env
echo "ATTESTATION_INVITE_URL=${ATTESTATION_INVITE_URL}" >>.env

- name: Create release keystore
working-directory: app/android/app
Expand Down
7 changes: 2 additions & 5 deletions app/src/services/attestation.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import { Buffer } from 'buffer'
import React, { createContext, useContext, useState } from 'react'
import { useTranslation } from 'react-i18next'
import { DeviceEventEmitter, Platform } from 'react-native'
import Config from 'react-native-config'
// eslint-disable-next-line import/no-extraneous-dependencies
import { Subscription } from 'rxjs'

Expand Down Expand Up @@ -70,10 +71,6 @@ const attestationCredDefIds = [
'NxWbeuw8Y2ZBiTrGpcK7Tn:3:CL:48312:default',
]

// change this URL to a multi use connection from your traction instance for testing
const attestationInviteUrl =
'https://traction-acapy-dev.apps.silver.devops.gov.bc.ca?c_i=eyJAdHlwZSI6ICJodHRwczovL2RpZGNvbW0ub3JnL2Nvbm5lY3Rpb25zLzEuMC9pbnZpdGF0aW9uIiwgIkBpZCI6ICI3YjNhMGE5Yi05YzBiLTRjYmUtODRlZC05Y2MwNmEyNmE0ZjYiLCAibGFiZWwiOiAiYnJ5Y2VtY21hdGgiLCAicmVjaXBpZW50S2V5cyI6IFsiMnlKMW9WMVlXcDJGTGIyVGR0ZmU2M1lKVTVEb0dHcHZuc3FkeXVTU3NUQnEiXSwgInNlcnZpY2VFbmRwb2ludCI6ICJodHRwczovL3RyYWN0aW9uLWFjYXB5LWRldi5hcHBzLnNpbHZlci5kZXZvcHMuZ292LmJjLmNhIn0='

// proof requests can vary wildly but we'll know attestation requests must contain the cred def id as a restriction
interface IndyRequest {
indy: {
Expand Down Expand Up @@ -285,7 +282,7 @@ export const AttestationProvider: React.FC<AttestationProviderParams> = ({ child
}

// 4. If no, start attestation flow by requesting a nonce from controller
const invite = await agent.oob.parseInvitation(attestationInviteUrl)
const invite = await agent.oob.parseInvitation(Config.ATTESTATION_INVITE_URL!)

if (!invite) {
setLoading(false)
Expand Down

0 comments on commit 5b48ad5

Please sign in to comment.