mirror of
https://github.com/zebrajr/node.git
synced 2025-12-06 12:20:27 +01:00
build: add build from tarball
Fixes: https://github.com/nodejs/build/issues/1931 PR-URL: https://github.com/nodejs/node/pull/32129 Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
This commit is contained in:
parent
f4e9bd6d36
commit
c6078f0ca1
141
.github/workflows/build-tarball.yml
vendored
Normal file
141
.github/workflows/build-tarball.yml
vendored
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
name: Build from tarball
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
env:
|
||||
FLAKY_TESTS: dontcare
|
||||
|
||||
jobs:
|
||||
build-tarball:
|
||||
env:
|
||||
PYTHON_VERSION: 3.8
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python ${{ env.PYTHON_VERSION }}
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
- name: Environment Information
|
||||
run: npx envinfo
|
||||
- name: Make tarball
|
||||
run: |
|
||||
export DISTTYPE=nightly
|
||||
export DATESTRING=`date "+%Y-%m-%d"`
|
||||
export COMMIT=xxxx
|
||||
./configure && make tar -j8
|
||||
mkdir tarballs
|
||||
mv *.tar.gz tarballs
|
||||
- name: Upload tarball artifact
|
||||
uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: tarballs
|
||||
path: tarballs
|
||||
test-tarball-linux:
|
||||
env:
|
||||
PYTHON_VERSION: 3.8
|
||||
needs: build-tarball
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python ${{ env.PYTHON_VERSION }}
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
- name: Environment Information
|
||||
run: npx envinfo
|
||||
- name: Download tarball
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: tarballs
|
||||
- name: Extract tarball
|
||||
run: |
|
||||
tar xzf tarballs/*.tar.gz
|
||||
echo "::set-env name=TAR_DIR::`basename tarballs/*.tar.gz .tar.gz`"
|
||||
- name: Copy directories needed for testing
|
||||
run: |
|
||||
cp -r tools/node_modules $TAR_DIR/tools
|
||||
cp -r tools/eslint-rules $TAR_DIR/tools
|
||||
- name: Build
|
||||
run: |
|
||||
cd $TAR_DIR
|
||||
make build-ci -j2 V=1
|
||||
- name: Test
|
||||
run: |
|
||||
cd $TAR_DIR
|
||||
make run-ci -j2 V=1
|
||||
test-tarball-windows:
|
||||
needs: build-tarball
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Set up autocrlf
|
||||
run: |
|
||||
git config --global core.autocrlf true
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python 2.7
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: 2.7
|
||||
- name: Environment Information
|
||||
run: npx envinfo
|
||||
- name: Download tarball
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: tarballs
|
||||
- name: Extract tarball
|
||||
run: |
|
||||
7z x tarballs/*.tar.gz
|
||||
7z x *.tar -ttar
|
||||
- name: Install deps
|
||||
run: choco install nasm
|
||||
- name: Build
|
||||
run: |
|
||||
$env:DEBUG_HELPER=1
|
||||
$tarfile = dir *.tar
|
||||
cd $tarfile.BaseName
|
||||
$env:msbuild_args="/binaryLogger:node.binlog"
|
||||
./vcbuild.bat x64 release msi
|
||||
echo "::set-env name=TAR_DIR::$pwd"
|
||||
- name: Copy out directory to checkout dir
|
||||
run: Move-Item -Path "$env:TAR_DIR\out" -Destination "$env:GITHUB_WORKSPACE"
|
||||
- name: "Test JS Suites"
|
||||
shell: cmd
|
||||
run: |
|
||||
set DEBUG_HELPER=1
|
||||
./vcbuild.bat release noprojgen nobuild ignore-flaky test-ci-js
|
||||
- name: "Test C++ Suites"
|
||||
shell: cmd
|
||||
run: |
|
||||
set DEBUG_HELPER=1
|
||||
./vcbuild.bat release noprojgen nobuild ignore-flaky test-ci-native
|
||||
test-tarball-macOS:
|
||||
needs: build-tarball
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python ${{ env.PYTHON_VERSION }}
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
PYTHON_VERSION: ${{ env.PYTHON_VERSION }}
|
||||
- name: Environment Information
|
||||
run: npx envinfo
|
||||
- name: Download tarball
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: tarballs
|
||||
- name: Extract tarball
|
||||
run: |
|
||||
tar xzf tarballs/*.tar.gz
|
||||
echo "::set-env name=TAR_DIR::`basename tarballs/*.tar.gz .tar.gz`"
|
||||
- name: Copy directories needed for testing
|
||||
run: |
|
||||
cp -r tools/node_modules $TAR_DIR/tools
|
||||
cp -r tools/eslint-rules $TAR_DIR/tools
|
||||
- name: Build
|
||||
run: |
|
||||
cd $TAR_DIR
|
||||
make build-ci -j8 V=1
|
||||
- name: Test
|
||||
run: |
|
||||
cd $TAR_DIR
|
||||
make run-ci -j8 V=1
|
||||
Loading…
Reference in New Issue
Block a user