Skip to content

Commit

Permalink
Merge pull request #112 from Zondax/dev
Browse files Browse the repository at this point in the history
Polymesh upgrade v7 (#111)
  • Loading branch information
0xPxt authored Oct 28, 2024
2 parents da259eb + 8bce030 commit 87a5f0f
Show file tree
Hide file tree
Showing 172 changed files with 28,169 additions and 27,702 deletions.
23 changes: 1 addition & 22 deletions .github/workflows/guidelines_enforcer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,27 +19,6 @@ on:
pull_request:

jobs:
setup_and_install:
name: Setup Python and Install Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Create and activate virtual environment
run: |
python -m venv venv
source venv/bin/activate
- name: Install dependencies
run: |
pip install --upgrade pip
make deps
guidelines_enforcer:
name: Call Ledger guidelines_enforcer
needs: setup_and_install
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_guidelines_enforcer.yml@v1
with:
python-version: '3.10'
uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_guidelines_enforcer.yml@v1
159 changes: 81 additions & 78 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,16 +84,6 @@ jobs:
run: |
SUBSTRATE_PARSER_FULL=1 SUPPORT_SR25519=1 make
size_nano_s:
needs: build_ledger
runs-on: ubuntu-latest
env:
NANOS_LIMIT_SIZE: 136
steps:
- run: |
echo "LNS app size: ${{needs.build_ledger.outputs.size}} KiB"
[ ${{needs.build_ledger.outputs.size}} -le $NANOS_LIMIT_SIZE ]
test_zemu:
runs-on: ubuntu-latest
steps:
Expand Down Expand Up @@ -126,77 +116,90 @@ jobs:
name: snapshots-tmp
path: tests_zemu/snapshots-tmp/

build_package_nanos:
needs: [configure, build, build_ledger, test_zemu]
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
container:
image: zondax/ledger-app-builder:latest
options: --user ${{ needs.configure.outputs.uid_gid }}
env:
BOLOS_SDK: /opt/nanos-secure-sdk
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
- name: Install deps
run: pip install ledgerblue
# Comment out nanoS build, the device is not supported anymore.
# The github workflow for the latest supported version is running in nanos.yml

- name: Build NanoS
shell: bash -l {0}
run: |
make SUBSTRATE_PARSER_FULL=0 PRODUCTION_BUILD=0
mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos.sh
- name: Set tag
id: nanos_light
run: echo "tag_name=$(./app/pkg/installer_nanos.sh version)" >> $GITHUB_OUTPUT
- name: Create or Update Release (1)
id: create_release_0
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
files: ./app/pkg/installer_nanos.sh
tag_name: ${{ steps.nanos_light.outputs.tag_name }}
draft: false
prerelease: false
# size_nano_s:
# needs: build_ledger
# runs-on: ubuntu-latest
# env:
# NANOS_LIMIT_SIZE: 136
# steps:
# - run: |
# echo "LNS app size: ${{needs.build_ledger.outputs.size}} KiB"
# [ ${{needs.build_ledger.outputs.size}} -le $NANOS_LIMIT_SIZE ]

build_package_nanos_xl:
needs: [configure, build, build_ledger, test_zemu]
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
container:
image: zondax/ledger-app-builder:latest
options: --user ${{ needs.configure.outputs.uid_gid }}
env:
BOLOS_SDK: /opt/nanos-secure-sdk
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
- name: Install deps
run: pip install ledgerblue
# build_package_nanos:
# needs: [configure, build, build_ledger, test_zemu]
# if: ${{ github.ref == 'refs/heads/main' }}
# runs-on: ubuntu-latest
# container:
# image: zondax/ledger-app-builder:latest
# options: --user ${{ needs.configure.outputs.uid_gid }}
# env:
# BOLOS_SDK: /opt/nanos-secure-sdk
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# with:
# submodules: true
# - name: Install deps
# run: pip install ledgerblue
#
# - name: Build NanoS
# shell: bash -l {0}
# run: |
# make SUBSTRATE_PARSER_FULL=0 PRODUCTION_BUILD=0
# mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos.sh
# - name: Set tag
# id: nanos_light
# run: echo "tag_name=$(./app/pkg/installer_nanos.sh version)" >> $GITHUB_OUTPUT
# - name: Create or Update Release (1)
# id: create_release_0
# uses: softprops/action-gh-release@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
# with:
# files: ./app/pkg/installer_nanos.sh
# tag_name: ${{ steps.nanos_light.outputs.tag_name }}
# draft: false
# prerelease: false

- name: Build NanoS XL
shell: bash -l {0}
run: |
make SUBSTRATE_PARSER_FULL=1 PRODUCTION_BUILD=0
mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos_xl.sh
- name: Set tag
id: nanos_xl
run: echo "tag_name=$(./app/pkg/installer_nanos_xl.sh version)" >> $GITHUB_OUTPUT
- name: Update Release
id: update_release_1
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
files: ./app/pkg/installer_nanos_xl.sh
tag_name: ${{ steps.nanos_xl.outputs.tag_name }}
draft: false
prerelease: false
# build_package_nanos_xl:
# needs: [configure, build, build_ledger, test_zemu]
# if: ${{ github.ref == 'refs/heads/main' }}
# runs-on: ubuntu-latest
# container:
# image: zondax/ledger-app-builder:latest
# options: --user ${{ needs.configure.outputs.uid_gid }}
# env:
# BOLOS_SDK: /opt/nanos-secure-sdk
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# with:
# submodules: true
# - name: Install deps
# run: pip install ledgerblue
#
# - name: Build NanoS XL
# shell: bash -l {0}
# run: |
# make SUBSTRATE_PARSER_FULL=1 PRODUCTION_BUILD=0
# mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos_xl.sh
# - name: Set tag
# id: nanos_xl
# run: echo "tag_name=$(./app/pkg/installer_nanos_xl.sh version)" >> $GITHUB_OUTPUT
# - name: Update Release
# id: update_release_1
# uses: softprops/action-gh-release@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
# with:
# files: ./app/pkg/installer_nanos_xl.sh
# tag_name: ${{ steps.nanos_xl.outputs.tag_name }}
# draft: false
# prerelease: false

build_package_nanosp:
needs: [configure, build, build_ledger, test_zemu]
Expand Down
140 changes: 140 additions & 0 deletions .github/workflows/nanos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
name: Build_NanoS
on:
workflow_dispatch:
push:
pull_request:
branches:
- main
- develop
- master # for safety reasons
- dev # for safety reasons

jobs:
configure:
runs-on: ubuntu-latest
outputs:
uid_gid: ${{ steps.get-user.outputs.uid_gid }}
steps:
- id: get-user
run: echo "uid_gid=$(id -u):$(id -g)" >> $GITHUB_OUTPUT

build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: 'v104.63001.3'
submodules: true
- name: Install deps
run: |
python -m venv venv
source venv/bin/activate
make deps
build_ledger:
needs: configure
runs-on: ubuntu-latest
container:
image: zondax/ledger-app-builder:latest
options: --user ${{ needs.configure.outputs.uid_gid }}
env:
BOLOS_SDK: /opt/nanos-secure-sdk
outputs:
size: ${{steps.build.outputs.size}}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: 'v104.63001.3'
submodules: true
- name: Build Standard app
id: build
shell: bash -l {0}
run: |
SUBSTRATE_PARSER_FULL=1 make
echo "size=$(python3 deps/ledger-zxlib/scripts/getSize.py s)" >> $GITHUB_OUTPUT
size_nano_s:
needs: build_ledger
runs-on: ubuntu-latest
env:
NANOS_LIMIT_SIZE: 136
steps:
- run: |
echo "LNS app size: ${{needs.build_ledger.outputs.size}} KiB"
[ ${{needs.build_ledger.outputs.size}} -le $NANOS_LIMIT_SIZE ]
build_package_nanos:
needs: [configure, build, build_ledger]
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
container:
image: zondax/ledger-app-builder:latest
options: --user ${{ needs.configure.outputs.uid_gid }}
env:
BOLOS_SDK: /opt/nanos-secure-sdk
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: 'v104.63001.3'
submodules: true
- name: Install deps
run: pip install ledgerblue

- name: Build NanoS
shell: bash -l {0}
run: |
make SUBSTRATE_PARSER_FULL=0 PRODUCTION_BUILD=0
mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos.sh
- name: Set tag
id: nanos_light
run: echo "tag_name=$(./app/pkg/installer_nanos.sh version)" >> $GITHUB_OUTPUT
- name: Create or Update Release (1)
id: create_release_0
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
files: ./app/pkg/installer_nanos.sh
tag_name: ${{ steps.nanos_light.outputs.tag_name }}
draft: false
prerelease: false

build_package_nanos_xl:
needs: [configure, build, build_ledger]
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
container:
image: zondax/ledger-app-builder:latest
options: --user ${{ needs.configure.outputs.uid_gid }}
env:
BOLOS_SDK: /opt/nanos-secure-sdk
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: 'v104.63001.3'
submodules: true
- name: Install deps
run: pip install ledgerblue

- name: Build NanoS XL
shell: bash -l {0}
run: |
make SUBSTRATE_PARSER_FULL=1 PRODUCTION_BUILD=0
mv ./app/pkg/installer_s.sh ./app/pkg/installer_nanos_xl.sh
- name: Set tag
id: nanos_xl
run: echo "tag_name=$(./app/pkg/installer_nanos_xl.sh version)" >> $GITHUB_OUTPUT
- name: Update Release
id: update_release_1
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
files: ./app/pkg/installer_nanos_xl.sh
tag_name: ${{ steps.nanos_xl.outputs.tag_name }}
draft: false
prerelease: false
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,4 @@ tests_zemu/yarn.lock
tests_tools/target
fuzz-*.log
/scan-build
.venv
Loading

0 comments on commit 87a5f0f

Please sign in to comment.