1
+ name : Build from tarball
2
+
3
+ on : [push, pull_request]
4
+
5
+ env :
6
+ FLAKY_TESTS : dontcare
7
+
8
+ jobs :
9
+ build-tarball :
10
+ env :
11
+ PYTHON_VERSION : 3.8
12
+ runs-on : macos-latest
13
+ steps :
14
+ - uses : actions/checkout@v2
15
+ - name : Set up Python ${{ env.PYTHON_VERSION }}
16
+ uses : actions/setup-python@v1
17
+ with :
18
+ python-version : ${{ env.PYTHON_VERSION }}
19
+ - name : Environment Information
20
+ run : npx envinfo
21
+ - name : Make tarball
22
+ run : |
23
+ export DISTTYPE=nightly
24
+ export DATESTRING=`date "+%Y-%m-%d"`
25
+ export COMMIT=xxxx
26
+ ./configure && make tar -j8
27
+ mkdir tarballs
28
+ mv *.tar.gz tarballs
29
+ - name : Upload tarball artifact
30
+ uses : actions/upload-artifact@v1
31
+ with :
32
+ name : tarballs
33
+ path : tarballs
34
+ test-tarball-linux :
35
+ env :
36
+ PYTHON_VERSION : 3.8
37
+ needs : build-tarball
38
+ runs-on : ubuntu-latest
39
+ steps :
40
+ - uses : actions/checkout@v2
41
+ - name : Set up Python ${{ env.PYTHON_VERSION }}
42
+ uses : actions/setup-python@v1
43
+ with :
44
+ python-version : ${{ env.PYTHON_VERSION }}
45
+ - name : Environment Information
46
+ run : npx envinfo
47
+ - name : Download tarball
48
+ uses : actions/download-artifact@v1
49
+ with :
50
+ name : tarballs
51
+ - name : Extract tarball
52
+ run : |
53
+ tar xzf tarballs/*.tar.gz
54
+ echo "::set-env name=TAR_DIR::`basename tarballs/*.tar.gz .tar.gz`"
55
+ - name : Copy directories needed for testing
56
+ run : |
57
+ cp -r tools/node_modules $TAR_DIR/tools
58
+ cp -r tools/eslint-rules $TAR_DIR/tools
59
+ - name : Build
60
+ run : |
61
+ cd $TAR_DIR
62
+ make build-ci -j2 V=1
63
+ - name : Test
64
+ run : |
65
+ cd $TAR_DIR
66
+ make run-ci -j2 V=1
67
+ test-tarball-windows :
68
+ needs : build-tarball
69
+ runs-on : windows-latest
70
+ steps :
71
+ - name : Set up autocrlf
72
+ run : |
73
+ git config --global core.autocrlf true
74
+ - uses : actions/checkout@v2
75
+ - name : Set up Python 2.7
76
+ uses : actions/setup-python@v1
77
+ with :
78
+ python-version : 2.7
79
+ - name : Environment Information
80
+ run : npx envinfo
81
+ - name : Download tarball
82
+ uses : actions/download-artifact@v1
83
+ with :
84
+ name : tarballs
85
+ - name : Extract tarball
86
+ run : |
87
+ 7z x tarballs/*.tar.gz
88
+ 7z x *.tar -ttar
89
+ - name : Install deps
90
+ run : choco install nasm
91
+ - name : Build
92
+ run : |
93
+ $env:DEBUG_HELPER=1
94
+ $tarfile = dir *.tar
95
+ cd $tarfile.BaseName
96
+ $env:msbuild_args="/binaryLogger:node.binlog"
97
+ ./vcbuild.bat x64 release msi
98
+ echo "::set-env name=TAR_DIR::$pwd"
99
+ - name : Copy out directory to checkout dir
100
+ run : Move-Item -Path "$env:TAR_DIR\out" -Destination "$env:GITHUB_WORKSPACE"
101
+ - name : " Test JS Suites"
102
+ shell : cmd
103
+ run : |
104
+ set DEBUG_HELPER=1
105
+ ./vcbuild.bat release noprojgen nobuild ignore-flaky test-ci-js
106
+ - name : " Test C++ Suites"
107
+ shell : cmd
108
+ run : |
109
+ set DEBUG_HELPER=1
110
+ ./vcbuild.bat release noprojgen nobuild ignore-flaky test-ci-native
111
+ test-tarball-macOS :
112
+ needs : build-tarball
113
+ runs-on : macos-latest
114
+ steps :
115
+ - uses : actions/checkout@v2
116
+ - name : Set up Python ${{ env.PYTHON_VERSION }}
117
+ uses : actions/setup-python@v1
118
+ with :
119
+ PYTHON_VERSION : ${{ env.PYTHON_VERSION }}
120
+ - name : Environment Information
121
+ run : npx envinfo
122
+ - name : Download tarball
123
+ uses : actions/download-artifact@v1
124
+ with :
125
+ name : tarballs
126
+ - name : Extract tarball
127
+ run : |
128
+ tar xzf tarballs/*.tar.gz
129
+ echo "::set-env name=TAR_DIR::`basename tarballs/*.tar.gz .tar.gz`"
130
+ - name : Copy directories needed for testing
131
+ run : |
132
+ cp -r tools/node_modules $TAR_DIR/tools
133
+ cp -r tools/eslint-rules $TAR_DIR/tools
134
+ - name : Build
135
+ run : |
136
+ cd $TAR_DIR
137
+ make build-ci -j8 V=1
138
+ - name : Test
139
+ run : |
140
+ cd $TAR_DIR
141
+ make run-ci -j8 V=1
0 commit comments