mirror of
https://github.com/nodejs/node.git
synced 2024-11-24 20:29:23 +01:00
bb4ec34fb4
PR-URL: https://github.com/nodejs/node/pull/54691 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
109 lines
3.3 KiB
YAML
109 lines
3.3 KiB
YAML
name: Build from tarball
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened, ready_for_review]
|
|
paths-ignore:
|
|
- .mailmap
|
|
- '**.md'
|
|
- AUTHORS
|
|
- doc/**
|
|
- .github/**
|
|
- '!.github/workflows/build-tarball.yml'
|
|
push:
|
|
branches:
|
|
- main
|
|
- v[0-9]+.x-staging
|
|
- v[0-9]+.x
|
|
paths-ignore:
|
|
- .mailmap
|
|
- '**.md'
|
|
- AUTHORS
|
|
- doc/**
|
|
- .github/**
|
|
- '!.github/workflows/build-tarball.yml'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
PYTHON_VERSION: '3.12'
|
|
FLAKY_TESTS: keep_retrying
|
|
CC: sccache clang
|
|
CXX: sccache clang++
|
|
SCCACHE_GHA_ENABLED: 'true'
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build-tarball:
|
|
if: github.event.pull_request.draft == false
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
|
with:
|
|
persist-credentials: false
|
|
- name: Set up Python ${{ env.PYTHON_VERSION }}
|
|
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
|
|
with:
|
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
- name: Set up sccache
|
|
uses: mozilla-actions/sccache-action@89e9040de88b577a072e3760aaf59f585da083af # v0.0.5
|
|
with:
|
|
version: v0.8.1
|
|
- 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 -j8 SKIP_XZ=1
|
|
mkdir tarballs
|
|
mv *.tar.gz tarballs
|
|
- name: Upload tarball artifact
|
|
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
|
|
with:
|
|
name: tarballs
|
|
path: tarballs
|
|
test-tarball-linux:
|
|
needs: build-tarball
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
|
|
with:
|
|
persist-credentials: false
|
|
- name: Set up Python ${{ env.PYTHON_VERSION }}
|
|
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
|
|
with:
|
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
- name: Set up sccache
|
|
uses: mozilla-actions/sccache-action@89e9040de88b577a072e3760aaf59f585da083af # v0.0.5
|
|
with:
|
|
version: v0.8.1
|
|
- name: Environment Information
|
|
run: npx envinfo
|
|
- name: Download tarball
|
|
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
|
|
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: Copy directories needed for testing
|
|
run: |
|
|
cp -r tools/eslint $TAR_DIR/tools
|
|
cp -r tools/eslint-rules $TAR_DIR/tools
|
|
- name: Build
|
|
run: |
|
|
cd $TAR_DIR
|
|
make build-ci -j4 V=1
|
|
- name: Test
|
|
run: |
|
|
cd $TAR_DIR
|
|
make run-ci -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9"
|