Skip to content

Bots Portfolio

Bots Portfolio #747

name: "Bots Portfolio"
on:
workflow_dispatch:
inputs:
seeds:
description: "comma separated list of seed indexes to filter on (e.g. 1,2,3) – all if not filtered"
required: false
currencies:
description: "a comma separated list of currencies to filter (if provided)."
required: false
families:
description: "a comma separated list of families to filter (if provided)."
required: false
push:
branches:
- support/bots-portfolio
- support/bots-portfolio-*
schedule:
- cron: "30 5 * * *"
permissions:
id-token: write
contents: read
jobs:
portfolio:
runs-on: [ledger-live-medium]
steps:
- name: generate token
id: generate-token
uses: tibdex/github-app-token@v1
with:
app_id: ${{ secrets.GH_BOT_APP_ID }}
private_key: ${{ secrets.GH_BOT_PRIVATE_KEY }}
- uses: actions/checkout@v4
- name: Retrieving coin apps
uses: actions/checkout@v4
with:
ref: generated/ledger-live-bot
repository: LedgerHQ/coin-apps
token: ${{ steps.generate-token.outputs.token }}
path: coin-apps
- name: Setup the caches
uses: LedgerHQ/ledger-live/tools/actions/composites/setup-caches@develop
id: setup-caches
with:
install-proto: true
accountId: ${{ secrets.AWS_ACCOUNT_ID_PROD }}
roleName: ${{ secrets.AWS_CACHE_ROLE_NAME }}
region: ${{ secrets.AWS_CACHE_REGION }}
turbo-server-token: ${{ secrets.TURBOREPO_SERVER_TOKEN }}
- name: install and build
run: |
pnpm i --filter="live-cli..." --filter="ledger-live"
pnpm build:llc
shell: bash
- name: portfolio
timeout-minutes: 200
env:
SEED1: ${{ secrets.SEED1 }}
SEED2: ${{ secrets.SEED2 }}
SEED3: ${{ secrets.SEED3 }}
SEED4: ${{ secrets.SEED4 }}
SEED5: ${{ secrets.SEED5 }}
SEED6: ${{ secrets.SEED6 }}
SEED7: ${{ secrets.SEED7 }}
FILTER_CURRENCIES: ${{ github.event.inputs.currencies }}
FILTER_FAMILIES: ${{ github.event.inputs.families }}
FILTER_SEEDS: ${{ github.event.inputs.seeds }}
DEFAULT_FILTER_SEEDS: "1,2,3,4,5"
PARALLEL: 4
NODE_OPTIONS: "--max-old-space-size=7168"
REPORT_FOLDER: reports
run: |
export COINAPPS=$PWD/coin-apps
export SUMMARY=$GITHUB_STEP_SUMMARY
export NODE_ENV=production
cd libs/ledger-live-common
node lib/bot/portfolio/process-main.js
shell: bash
- name: upload reports
uses: actions/upload-artifact@v4
with:
name: reports
path: libs/ledger-live-common/reports