Skip to content

Robot Framework Support (#1173) #181

Robot Framework Support (#1173)

Robot Framework Support (#1173) #181

Workflow file for this run

name: CD
on:
push:
tags:
# Build on every tag in the form v1.2.3-something.4
- "v*"
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# When pushing new commits, cancel any running builds on that branch
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
env:
AZURE_KEY_VAULT_URI: ${{ secrets.AZURE_KEY_VAULT_URI }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
AZURE_CERT_NAME: ${{ secrets.AZURE_CERT_NAME }}
jobs:
buildElectron:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest-xlarge, ubuntu-latest, windows-latest]
env:
DEBUG: electron-builder
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/setup-node@v3
with:
node-version: 20
- uses: pnpm/action-setup@v2
name: Install pnpm
with:
version: 9
run_install: false
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- uses: actions/cache@v3
name: Cache pnpm
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- uses: actions/setup-python@v4
with:
python-version: "3.11"
cache: "pip"
- name: Setup Poetry
uses: abatilo/actions-poetry@v2
with:
poetry-version: "1.6"
- name: Install Python Dependencies
run: poetry install
- name: Install Node Dependencies
run: pnpm install
- name: Install Azure Signing Tool (Windows)
if: matrix.os == 'windows-latest'
run: |
dotnet tool install --global AzureSignTool
- name: Build/release Electron app
uses: flojoy-ai/action-electron-builder@main
with:
# GitHub token, automatically provided to the action
# (No need to define this secret in the repo settings)
github_token: ${{ secrets.GITHUB_TOKEN }}
release: true
skip_install: true
skip_build: true
mac_certs: ${{ secrets.mac_certs }}
mac_certs_password: ${{ secrets.mac_certs_password }}
env:
# macOS notarization envs
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }}