GitHub Action
CI friendly builds
The xllify GitHub Action wraps the xllify packager so that it can be easily included in your CI workflows. It available on the Actions market place as xllify-build.
The xllify-starter repository is a working example of this action in use. It is a template, so you can copy it to your own GitHub org to use as a starting point.
Usage
name: Build XLL
on:
push:
tags:
- "v*"
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build XLL with xllify
id: xllify
uses: xllifycom/xllify-build@v0.9.6
with:
xll_filename: my_addin
embed_scripts: |
black_scholes.luau
functions.py
helpers.py
python_entrypoint: main.py
python_requirements: requirements.txt
xllify_key: ${{ secrets.XLLIFY_KEY }}
- name: Upload XLL to release
uses: softprops/action-gh-release@v1
with:
files: ${{ steps.xllify.outputs.xll_path }}Inputs
embed_scripts (required)
embed_scripts (required)Space or newline-separated list of .luau and/or .py script file paths relative to your repository root.
xll_filename (optional)
xll_filename (optional)Name of the output XLL file (without extension). Defaults to MyAddin. The .xll extension will be added automatically if not provided.
addin_name (optional)
addin_name (optional)Internal name for the add-in project. Defaults to MyAddin.
xllify_version (optional)
xllify_version (optional)Version of xllify distribution to use. Defaults to latest.
xllify_key (optional)
xllify_key (optional)License key for xllify. Defaults to early-adopter.
python_entrypoint (optional)
python_entrypoint (optional)Name of Python entrypoint file. Only used when Python scripts are included in embed_scripts.
python_requirements (optional)
python_requirements (optional)Path to Python requirements.txt file. Only used when Python scripts are included in embed_scripts.
Outputs
xll_path
xll_pathPath to the built XLL file (relative to workspace).
test_results_path
test_results_pathPath to test results XML file.
Security scare screens
.xll files are not signed by the GitHub Action, and can only run from safe locations.
Due to potential security risks in running an XLL, they may trigger a warning when you load them into Excel, depending upon your environment.
Generally this is fixable by checking the Unblock checkbox after right-clicking and choosing Properties on the .xll file.
This is all explained here along with some other workarounds.
You can of course sign your XLLs yourself by adding a step to your workflow.
Last updated