Skip to content

Commit 4331422

Browse files
committed
Install system packages
1 parent 150de56 commit 4331422

File tree

1 file changed

+59
-20
lines changed

1 file changed

+59
-20
lines changed

.github/workflows/test.yml

Lines changed: 59 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ jobs:
6767

6868
# Define configuration options for each Node.js version:
6969
include:
70+
- OS: 'ubuntu-latest'
71+
PLATFORM: 'linux'
72+
73+
- OS: 'macOS-latest'
74+
PLATFORM: 'macos'
75+
7076
- NODE_VERSION: '12'
7177
NPM_VERSION: '>2.7.0'
7278

@@ -90,44 +96,77 @@ jobs:
9096

9197
# Define the sequence of job steps...
9298
steps:
93-
# Checkout the repository:
94-
- name: 'Checkout repository'
95-
uses: actions/checkout@v1
96-
with:
97-
# Specify whether to remove untracked files before checking out the repository:
98-
clean: false
99-
100-
# Limit clone depth to the most recent 100 commits:
101-
fetch-depth: 100
102-
103-
# Specify whether to download Git-LFS files:
104-
lfs: false
99+
# Install system packages:
100+
- name: 'Install system packages'
101+
run: |
102+
if [[ ${{ matrix.PLATFORM }} = "linux" ]]; then
103+
sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
104+
sudo -E apt-get update -q
105+
sudo -E apt-get -yq --no-install-suggests --no-install-recommends --allow-downgrades --allow-remove-essential --allow-change-held-packages install binutils gcc-5 gcc-5-multilib g++-5 g++-5-multilib gfortran-5 gfortran-5-multilib xvfb
106+
mkdir -p $HOME/bin;
107+
ln -s /usr/bin/gcc-5 $HOME/bin/gcc;
108+
ln -s /usr/bin/g++-5 $HOME/bin/g++;
109+
ln -s /usr/bin/gfortran-5 $HOME/bin/gfortran;
110+
else
111+
brew update;
112+
brew install -v gcc;
113+
fi
114+
115+
# Configure the virtual display server (needed for electron):
116+
- name: 'Configure virtual display server'
117+
run: |
118+
export DISPLAY=':99.0'
119+
Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
105120
106121
# Install Node.js:
107122
- name: 'Install Node.js'
108123
uses: actions/setup-node@v1
109124
with:
110125
node-version: ${{ matrix.NODE_VERSION }}
111-
timeout-minutes: 5
112-
113-
# Update the npm client (older clients cannot handle scoped modules):
114-
- name: 'Update npm'
115-
shell: bash
116-
run: |
117-
npm install -g npm@"${{ matrix.NPM_VERSION }}"
118-
timeout-minutes: 5
126+
timeout-minutes: 10
119127

120128
# Print debug info:
121129
- name: 'Print debug info'
122130
run: |
131+
echo 'gcc:'
132+
gcc --version
133+
echo ''
134+
echo 'g++:'
135+
g++ --version
136+
echo ''
137+
echo 'gfortran:'
138+
gfortran --version
139+
echo ''
123140
echo 'Git:'
124141
git --version
125142
echo ''
126143
echo 'Node.js:'
144+
file $(which node)
127145
node --version
128146
node -p 'process.platform + "@" + process.arch'
129147
echo ''
130148
echo 'npm:'
131149
npm --version
132150
npm config get registry
133151
timeout-minutes: 2
152+
153+
# Update the npm client (older clients cannot handle scoped modules):
154+
- name: 'Update npm'
155+
shell: bash
156+
run: |
157+
npm install -g npm@"${{ matrix.NPM_VERSION }}"
158+
npm --version
159+
timeout-minutes: 5
160+
161+
# Checkout the repository:
162+
- name: 'Checkout repository'
163+
uses: actions/checkout@v1
164+
with:
165+
# Specify whether to remove untracked files before checking out the repository:
166+
clean: false
167+
168+
# Limit clone depth to the most recent 100 commits:
169+
fetch-depth: 100
170+
171+
# Specify whether to download Git-LFS files:
172+
lfs: false

0 commit comments

Comments
 (0)