Skip to content

build: support building crates (temporal) on windows #69973

build: support building crates (temporal) on windows

build: support building crates (temporal) on windows #69973

Workflow file for this run

name: Build from tarball
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- '**.md'
- '**.nix'
- eslint.config.mjs
- '**/eslint.config_partial.mjs'
- android-configure
- android-configure.py
- android-patches/**
- benchmarks/**
- codecov.yml
- doc/**
- pyproject.yml
- tsconfig.json
- test/internet/**
- tools/actions/**
- tools/bootstrap/**
- tools/dep_updaters/**
- tools/doc/**
- tools/eslint-rules/**
- tools/eslint/**
- tools/lint-md/**
- typings/**
- vcbuild.bat
- .**
- '!.github/workflows/build-tarball.yml'
push:
branches:
- main
- v[0-9]+.x-staging
- v[0-9]+.x
paths-ignore:
- '**.md'
- '**.nix'
- eslint.config.mjs
- '**/eslint.config_partial.mjs'
- android-configure
- android-configure.py
- android-patches/**
- benchmarks/**
- codecov.yml
- doc/**
- pyproject.yml
- tsconfig.json
- test/internet/**
- tools/actions/**
- tools/bootstrap/**
- tools/dep_updaters/**
- tools/doc/**
- tools/eslint-rules/**
- tools/eslint/**
- tools/lint-md/**
- typings/**
- vcbuild.bat
- .**
- '!.github/workflows/build-tarball.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
env:
PYTHON_VERSION: '3.14'
FLAKY_TESTS: keep_retrying
CLANG_VERSION: '19'
permissions:
contents: read
jobs:
build-tarball:
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
persist-credentials: false
- name: Set up Python ${{ env.PYTHON_VERSION }}
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: ${{ env.PYTHON_VERSION }}
allow-prereleases: true
- name: Environment Information
run: npx envinfo
- name: Make tarball
run: |
export DISTTYPE=nightly
export DATESTRING=$(date "+%Y-%m-%d")
export COMMIT=$(git rev-parse --short=10 "$GITHUB_SHA")
./configure && make tar -j4 SKIP_XZ=1
- name: Upload tarball artifact
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with:
name: tarballs
path: '*.tar.gz'
compression-level: 0
test-tarball-linux:
needs: build-tarball
runs-on: ubuntu-24.04
env:
CC: sccache clang-19
CXX: sccache clang++-19
SCCACHE_GHA_ENABLED: 'true'
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
persist-credentials: false
sparse-checkout: .github/actions/install-clang
sparse-checkout-cone-mode: false
- name: Install Clang ${{ env.CLANG_VERSION }}
uses: ./.github/actions/install-clang
with:
clang-version: ${{ env.CLANG_VERSION }}
- name: Set up Python ${{ env.PYTHON_VERSION }}
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: ${{ env.PYTHON_VERSION }}
allow-prereleases: true
- name: Set up sccache
uses: Mozilla-Actions/sccache-action@7d986dd989559c6ecdb630a3fd2557667be217ad # v0.0.9
with:
version: v0.12.0
- name: Environment Information
run: npx envinfo
- name: Download tarball
uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with:
name: tarballs
path: tarballs
- name: Extract tarball
run: |
tar xzf tarballs/*.tar.gz -C "$RUNNER_TEMP"
echo "TAR_DIR=$RUNNER_TEMP/$(basename tarballs/*.tar.gz .tar.gz)" >> "$GITHUB_ENV"
- name: Build
run: make -C "$TAR_DIR" build-ci -j4 V=1
- name: Test
run: make -C "$TAR_DIR" test-ci -j1 V=1 TEST_CI_ARGS="-p dots --measure-flakiness 9"