* Go for Broke * Let it fire * Add PipLine * Create the dir if it doesn't exist * Install Setuptools * Track Test Action's files * Fix Calling Job * Track Build Action files * Install Distutils, rename filenames * Fix Fail conditions * Make Build scripts smarter * Add file * Concat DLLs lists * Try to fail if Error DLLs * Try to make the fail smarter * Moar verbosity * Print the stuff first * Print outputs objects * See if this skips failure * Use py instead * Print error list * Don't ValueError * Try checking a different way * Try something else * Bleh, spell filename correctly * Update excluded_dlls.json * Ugh, gotta compare old to new somehow * Compare to old list * Condense build script * Moar verbosity * Update the global version * Update Excluded DLLs list * Actually use the bad DLLs list * Make a version number * Fix version number building * Fix version number building again * Fix Diagnostics * Try REST API stuff * Try REST API again * Moar REST * await * Get SHA * Try it all together * Del test workflow * Add Perms * Use a Token * Try this Token * Try different Token * Try different Token * Create App Version earlier * See this error again * Don't fail if App Version not made yet * Use New Secret * Print whole response * Documentation for Tagger * Update CI Instructions * Update CI * List References * Find latest tag Fix App Version getter * Fix commas * Check returned data * Update Build Script * Fix substring * Fix Git tag * Fix tag again * Visual indicators * Use encoding * Remove an indicator * Update CI * Update Project Name * PyInstaller Spec Template file * Update Build Script * Fix Tagger * Update CI * Download AppVersion during build * Test job can fail * Upload Logs instead of printing them * Change from Reusable Workflow to Action * Change ref to token * Compare to string * Use PAT * Use String literal * Remove Reusable Workflow * Update CI Scripts * Go for Broke * Let it fire * Add PipLine * Create the dir if it doesn't exist * Install Setuptools * Track Test Action's files * Fix Calling Job * Track Build Action files * Install Distutils, rename filenames * Fix Fail conditions * Make Build scripts smarter * Add file * Concat DLLs lists * Try to fail if Error DLLs * Try to make the fail smarter * Moar verbosity * Print the stuff first * Print outputs objects * See if this skips failure * Use py instead * Print error list * Don't ValueError * Try checking a different way * Try something else * Bleh, spell filename correctly * Update excluded_dlls.json * Ugh, gotta compare old to new somehow * Compare to old list * Condense build script * Moar verbosity * Update the global version * Update Excluded DLLs list * Actually use the bad DLLs list * Make a version number * Fix version number building * Fix version number building again * Fix Diagnostics * Try REST API stuff * Try REST API again * Moar REST * await * Get SHA * Try it all together * Del test workflow * Add Perms * Use a Token * Try this Token * Try different Token * Try different Token * Create App Version earlier * See this error again * Don't fail if App Version not made yet * Use New Secret * Print whole response * Documentation for Tagger * Update CI Instructions * Update CI * List References * Find latest tag Fix App Version getter * Fix commas * Check returned data * Update Build Script * Fix substring * Fix Git tag * Fix tag again * Visual indicators * Use encoding * Remove an indicator * Update CI * Update Project Name * PyInstaller Spec Template file * Update Build Script * Fix Tagger * Update CI * Download AppVersion during build * Test job can fail * Upload Logs instead of printing them * Change from Reusable Workflow to Action * Change ref to token * Compare to string * Use PAT * Use String literal * Remove Reusable Workflow * Update CI Scripts --------- Co-authored-by: Minnie A. Trethewey (Mike) <minnietrethewey@gmail.com>
89 lines
2.4 KiB
YAML
89 lines
2.4 KiB
YAML
name: Build
|
|
description: Build app
|
|
inputs:
|
|
calling-job:
|
|
required: true
|
|
description: Job that's calling this one
|
|
os-name:
|
|
required: true
|
|
description: OS to run on
|
|
python-version:
|
|
required: true
|
|
description: Python version to install
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
# checkout commit
|
|
- name: Checkout commit
|
|
shell: bash
|
|
run: |
|
|
echo "Checkout commit"
|
|
- name: Checkout commit
|
|
uses: actions/checkout@v4.1.4
|
|
|
|
# get parent dir
|
|
- name: Get Parent Directory
|
|
id: parentDir
|
|
uses: ./.github/actions/get-parent-dir
|
|
|
|
# try to get UPX
|
|
- name: Get UPX
|
|
shell: bash
|
|
run: |
|
|
echo "Get UPX"
|
|
- name: Get UPX
|
|
shell: bash
|
|
env:
|
|
OS_NAME: ${{ inputs.os-name }}
|
|
UPX_VERSION: "4.2.3"
|
|
run: |
|
|
python ./resources/ci/common/get_upx.py
|
|
|
|
# run build.py
|
|
- name: 💬Build Binaries
|
|
shell: bash
|
|
run: |
|
|
echo "💬Build Binaries"
|
|
- name: Build Binaries
|
|
shell: bash
|
|
run: |
|
|
pip install pyinstaller
|
|
python -m source.meta.build
|
|
|
|
# upload problem children
|
|
# - name: 🔼Upload Problem Children Artifact
|
|
# shell: bash
|
|
# run: |
|
|
# echo "🔼Upload Problem Children Artifact"
|
|
# - name: 🔼Upload Problem Children Artifact
|
|
# uses: actions/upload-artifact@v4.3.3
|
|
# with:
|
|
# name: problemchildren-${{ inputs.os-name }}-py${{ inputs.python-version }}
|
|
# path: ./resources/app/meta/manifests/excluded_dlls.json
|
|
# if-no-files-found: ignore # 'warn' or 'ignore' are also available, defaults to `warn`
|
|
|
|
# prepare binary artifact for later step
|
|
- name: 💬Prepare Binary Artifact
|
|
shell: bash
|
|
run: |
|
|
echo "💬Prepare Binary Artifact"
|
|
- name: Prepare Binary Artifact
|
|
shell: bash
|
|
env:
|
|
OS_NAME: ${{ inputs.os-name }}
|
|
run: |
|
|
python ./resources/ci/common/prepare_binary.py
|
|
|
|
# upload binary artifact for later step
|
|
- name: 🔼Upload Binary Artifact
|
|
shell: bash
|
|
run: |
|
|
echo "🔼Upload Binary Artifact"
|
|
- name: 🔼Upload Binary Artifact
|
|
uses: actions/upload-artifact@v4.3.3
|
|
with:
|
|
name: binary-${{ inputs.os-name }}-py${{ inputs.python-version }}
|
|
path: ${{ steps.parentDir.outputs.parentDir }}/artifact
|
|
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|