Skip to content

Commit

Permalink
Reverting back to main
Browse files Browse the repository at this point in the history
  • Loading branch information
loneil committed Oct 29, 2024
1 parent 792cfcc commit 93a23ff
Show file tree
Hide file tree
Showing 107 changed files with 3,971 additions and 4,144 deletions.
1 change: 1 addition & 0 deletions .codeclimate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ exclude_patterns:
- ".vscode/"
- "charts/"
- "scripts/"
- "services/endorser/"
- "services/tenant-ui/frontend/src/overlayLibrary"
- "services/tenant-ui/frontend/src/types/acapyApi"
- "services/traction/acapy_client/"
Expand Down
21 changes: 21 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,18 @@ updates:
all-actions:
patterns: [ "*" ]

# Maintain dependencies for Python Packages
- package-ecosystem: "pip"
directory: "/services/endorser"
schedule:
interval: "weekly"
day: "monday"
time: "04:00"
timezone: "Canada/Pacific"
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]

# Maintain dependencies for Python Packages
- package-ecosystem: "pip"
directory: "/plugins"
Expand Down Expand Up @@ -114,6 +126,15 @@ updates:
day: "monday"
time: "04:00"
timezone: "Canada/Pacific"

# Maintain dependencies for docker
- package-ecosystem: "docker"
directory: "/services/endorser"
schedule:
interval: "weekly"
day: "monday"
time: "04:00"
timezone: "Canada/Pacific"

# Maintain dependencies for docker
- package-ecosystem: "docker"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/on_pr_closed.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ jobs:
clean-ghcr:
runs-on: ubuntu-22.04
if: ${{ false }}
if: github.repository_owner == 'bcgov'
name: Delete closed PR images
steps:
- name: Delete Images
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/on_pr_opened.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -105,11 +105,6 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install OpenShift CLI tools
uses: redhat-actions/openshift-tools-installer@v1
with:
oc: "4.14"

- name: Authenticate and set context
uses: redhat-actions/oc-login@v1
with:
Expand Down
102 changes: 96 additions & 6 deletions .github/workflows/on_push_main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,100 @@ jobs:
image_tag: ${{ steps.builder.outputs.image_tag }}
image_version: ${{ steps.builder.outputs.image_version }}

check_helm_changes:
runs-on: ubuntu-latest
name: Check for Helm Chart changes
outputs:
helm_changed: ${{ steps.list-changed.outputs.changed }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Check for chart changes
id: list-changed
run: |
if git diff --name-only ${{ github.event.before }} ${{ github.sha }} | grep -q "^charts/"; then
echo "changed=true" >> "$GITHUB_OUTPUT"
else
echo "changed=false" >> "$GITHUB_OUTPUT"
fi
update_configs_repo:
runs-on: ubuntu-latest
name: Update Configurations Repo
needs:
- build_ui
- build_acapy
- build_proxy
- check_helm_changes
steps:
- uses: actions/checkout@v4

- name: Checkout services directory from the trust-over-ip-configurations repo
uses: actions/checkout@v4
with:
repository: bcgov/trust-over-ip-configurations
ssh-key: ${{ secrets.DITP_CONFIGS_REPO_SECRET }}
sparse-checkout: |
services
path: trust-over-ip-configurations

- name: Lookup Helm Chart and App versions
id: chart_version
run: |
helm repo add traction https://bcgov.github.io/traction
helm repo update
if [[ "${{ needs.check_helm_changes.outputs.helm_changed }}" == "true" ]]; then
echo "APP_VERSION=$(yq e .appVersion charts/traction/Chart.yaml)" >> $GITHUB_OUTPUT
echo "CHART_VERSION=$(yq e .version charts/traction/Chart.yaml)" >> $GITHUB_OUTPUT
else
echo "APP_VERSION=$(helm search repo traction -ojson | jq '.[0].app_version')" >> $GITHUB_OUTPUT
echo "CHART_VERSION=$(helm search repo traction -ojson | jq '.[0].version')" >> $GITHUB_OUTPUT
fi
- name: Update versions
env:
APP_VERSION: ${{ steps.chart_version.outputs.APP_VERSION }}
CHART_VERSION: ${{ steps.chart_version.outputs.CHART_VERSION }}
IMAGE_TAG: ${{ needs.build_acapy.outputs.image_version }}
run: |
cd trust-over-ip-configurations
yq e -i '.appVersion = env(APP_VERSION)' services/traction/charts/dev/Chart.yaml
yq e -i '.version = env(CHART_VERSION)' services/traction/charts/dev/Chart.yaml
yq e -i '.dependencies[0].version = env(CHART_VERSION)' services/traction/charts/dev/Chart.yaml
yq e -i '.traction.acapy.image.tag = env(IMAGE_TAG)' services/traction/charts/dev/values.yaml
yq e -i '.traction.tenant_proxy.image.tag = env(IMAGE_TAG)' services/traction/charts/dev/values.yaml
yq e -i '.traction.ui.image.tag = env(IMAGE_TAG)' services/traction/charts/dev/values.yaml
- name: Commit and Push to trust-over-ip-configurations Repo
run: |
cd trust-over-ip-configurations
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add services/traction/charts/dev/values.yaml services/traction/charts/dev/Chart.yaml
git commit -m "Update chart version and image tags" || echo "No changes to commit"
git push origin main
- uses: convictional/[email protected]
id: workflow-trigger
with:
owner: bcgov
repo: trust-over-ip-configurations
github_token: ${{ secrets.DITP_CONFIGS_REPO_TOKEN }}
workflow_file_name: gitops_sync.yaml

- name: Trigger ArgoCD Sync of bc0192-dev-traction
uses: OpsVerseIO/[email protected]
if: needs.check_helm_changes.outputs.helm_changed != 'true' && steps.workflow-trigger.outputs.conclusion == 'success'
with:
address: gitops-shared.apps.silver.devops.gov.bc.ca
token: ${{ secrets.DITP_GITOPS_ARGO_SECRET}}
action: sync
appName: "bc0192-dev-traction"

deploy_dev:
name: Deploy Dev
environment: development
Expand All @@ -77,7 +171,8 @@ jobs:
- build_ui
- build_acapy
- build_proxy
if: ${{ contains(needs.*.result, 'success') && !(contains(needs.*.result, 'failure')) && (github.repository_owner == 'bcgov') }}
- check_helm_changes
if: ${{ needs.check_helm_changes.outputs.helm_changed == 'true' && contains(needs.*.result, 'success') && !(contains(needs.*.result, 'failure')) && (github.repository_owner == 'bcgov') }}
steps:
- uses: actions/checkout@v4

Expand All @@ -90,11 +185,6 @@ jobs:
services
path: trust-over-ip-configurations

- name: Install OpenShift CLI tools
uses: redhat-actions/openshift-tools-installer@v1
with:
oc: "4.14"

- name: Authenticate and set context
uses: redhat-actions/oc-login@v1
with:
Expand Down
17 changes: 14 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

## What is Traction?

Traction is a digital wallet solution comprised of plugins layered on top of OpenWallet Foundation ACA-Py and streamlines the process of sending and receiving digital credentials for governments and organizations.
Traction is a digital wallet solution comprised of plugins layered on top of Hyperledger Aries Cloud Agent Python (ACA-Py) and streamlines the process of sending and receiving digital credentials for governments and organizations.

Its open-source foundation makes it easy to integrate digital trust technology into existing lines of business applications, without having to stand up, maintain and manage an instance of ACA-Py themselves. Future functionality could include machine-readable governance and more.

Expand All @@ -43,7 +43,7 @@ Establish your own Traction tenant in a B.C. Government sandbox to issue, hold,
Traction makes it easier to integrate digital trust technology into existing line of business applications.

- **API-first Architecture**: Traction is designed with an API-first architecture, this RESTful API allows for integration into existing line-of-business applications already being used by organizations, the Tenant user interface is built on this API to enable adoption prior to integration and for low-use functions.
- **Enhanced Interoperability**: OWF ACA-Py makes Traction more broadly compatible with existing technologies used by governments and organizations around the world.
- **Enhanced Interoperability**: Hyperledger Aries makes Traction more broadly compatible with existing technologies used by governments and organizations around the world.
- **Multi-tenancy**: Rather than having multiple digital tools to integrate with organizations, one scalable instance of Traction can be used to participate in the digital trust ecosystem, control all connections, and more easily share data.
- **Higher Scalability**: Traction is open-source technology, encouraging collaborative refinement, faster release, and higher scalability.

Expand All @@ -52,6 +52,7 @@ Traction makes it easier to integrate digital trust technology into existing lin

- [ACA-Py + plugins](./plugins/README.md)
- [Tenant UI](./services/tenant-ui/README.md)
- [Endorser Services](./services/endorser/README.md)


## Start contributing to Traction
Expand Down Expand Up @@ -103,6 +104,15 @@ git rebase origin/main
git push --force
```

## Who is maintaining Traction?
[The Province of British Columbia](https://github.com/bcgov/) is maintaining Traction as an open-source project.

Maintainer(s):
- Jason Sherman
- Jason Syrotuck
- Lucas O'Neil
- Jamie Popkin

## How is Traction licensed?

Traction is licensed under Apache License 2.0 which can be reviewed [here](./LICENSE).
Expand All @@ -111,4 +121,5 @@ Traction is licensed under Apache License 2.0 which can be reviewed [here](./LIC
## Engage with the community

Connect with others
- for ACA-Py discussion see the OWF ACA-Py Github [for links to discussion forums](https://github.com/openwallet-foundation/acapy?tab=readme-ov-file#troubleshooting)
- on Discord: [EMDT Public Discord Channel](https://discord.com/channels/766403442599657522/854432442382680104)
- for Aries discussion see the Hyperlerger Aries Github [participation section](https://github.com/hyperledger/aries#project-participation)
2 changes: 1 addition & 1 deletion charts/traction/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
name: traction
description: The Traction service allows organizations to verify, hold, and issue verifiable credentials. The Traction Tenant UI allows tenants to manage their agent.
type: application
version: 0.3.4
version: 0.3.3
appVersion: 0.5.1
home: "https://github.com/bcgov/traction"
sources: ["https://github.com/bcgov/traction"]
Expand Down
Loading

0 comments on commit 93a23ff

Please sign in to comment.