Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: add build from tarball #32129

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
141 changes: 141 additions & 0 deletions .github/workflows/build-tarball.yml
Original file line number Diff line number Diff line change
@@ -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
4 changes: 2 additions & 2 deletions test/parallel/test-child-process-exec-any-shells-windows.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ const test = (shell) => {
}));
};
const testCopy = (shellName, shellPath) => {
// Copy the executable to a path with spaces, to ensure there are no issues
// Symlink the executable to a path with spaces, to ensure there are no issues
// related to quoting of argv0
const copyPath = `${tmpPath}\\${shellName}`;
fs.copyFileSync(shellPath, copyPath);
fs.symlinkSync(shellPath, copyPath);
test(copyPath);
};

Expand Down