Skip to content

Bump actions/upload-artifact from 5.0.0 to 6.0.0 #164

Bump actions/upload-artifact from 5.0.0 to 6.0.0

Bump actions/upload-artifact from 5.0.0 to 6.0.0 #164

Workflow file for this run

name: Build
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: read
jobs:
build:
strategy:
matrix:
platform: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.platform }}
permissions:
contents: read
security-events: write
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0
with:
egress-policy: audit
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v5.0.0
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: '3.13'
- name: ccache
uses: hendrikmuhs/ccache-action@5ebbd400eff9e74630f759d94ddd7b6c26299639 # v1.2
if: ${{ matrix.platform != 'windows-latest' }}
with:
key: ${{ github.job }}-${{ matrix.platform }}
verbose: 1
create-symlink: true
- name: Setup cache for clcache
if: ${{ matrix.platform == 'windows-latest' }}
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
with:
path: ${{ github.workspace }}\.clcache
key: ${{ github.job }}-${{ matrix.platform }}
- name: Create binary
env:
CCACHE_BASEDIR: ${{ github.workspace }}
CCACHE_NOHASHDIR: true
NUITKA_CACHE_DIR_CCACHE: ${{ github.workspace }}/.ccache
NUITKA_CACHE_DIR_CLCACHE: ${{ github.workspace }}\.clcache
NUITKA_CCACHE_BINARY: /usr/bin/ccache
run: |
pip install .[build]
python script/build.py
- name: Store the distribution packages
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: binary-distribution-${{ matrix.platform }}
path: build/dfetch-*
test-binary:
name: test binary
needs:
- build
strategy:
matrix:
platform: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.platform }}
steps:
- name: Download the binary artifact
uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v5
with:
name: binary-distribution-${{ matrix.platform }}
path: .
- name: Prepare binary
if: matrix.platform == 'ubuntu-latest'
run: |
binary=$(ls dfetch-*-x86_64)
ln -sf "$binary" dfetch
chmod +x dfetch
ls -la .
shell: bash
- name: Prepare binary
if: matrix.platform == 'macos-latest'
run: |
binary=$(ls dfetch-*-osx)
ln -sf "$binary" dfetch
chmod +x dfetch
ls -la .
shell: bash
- name: Prepare binary on Windows
if: matrix.platform == 'windows-latest'
run: |
$binary = Get-ChildItem dfetch-*.exe | Select-Object -First 1
Copy-Item $binary -Destination dfetch.exe -Force
Get-ChildItem
shell: pwsh
- run: ./dfetch init
- run: ./dfetch environment
- run: ./dfetch validate
- run: ./dfetch check
- run: ./dfetch update
- run: ./dfetch update
- run: ./dfetch report -t sbom