-
Notifications
You must be signed in to change notification settings - Fork 5
74 lines (72 loc) · 2.53 KB
/
sage-test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
name: Sage Install Tests
on:
push:
pull_request:
branches:
- main
paths:
- '/private/scripts/**'
jobs:
linux:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
php-version: [7.4, 8.0, 8.1, 8.2]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Generate multidev name
id: generate_name
run: |
os_short=""
case "${{ matrix.os }}" in
ubuntu-latest)
os_short="nix"
;;
macos-latest)
os_short="mac"
;;
windows-latest)
os_short="win"
;;
esac
php_short=$(echo "${{ matrix.php-version }}" | tr -d '.')
pr_num=$(echo "${{ github.event.number }}")
multidev_name="${os_short}-${php_short}-${pr_num}"
echo "Generated multidev name: $multidev_name"
echo "multidev_name=$multidev_name" >> $GITHUB_ENV
shell: bash
- name: Get latest Terminus release
run: |
latest_version=$(curl --silent "https://api.github.com/repos/pantheon-systems/terminus/releases/latest" | jq -r .tag_name)
echo "Terminus Latest version is $latest_version"
curl -L "https://github.com/pantheon-systems/terminus/releases/download/$latest_version/terminus.phar" -o terminus
chmod +x terminus
sudo mv terminus /usr/local/bin/
- name: Install Composer Dependencies
run: composer install --no-progress --no-suggest --prefer-dist
- name: Log into Terminus & Create Multidev
run: |
terminus auth:login --machine-token=${{ secrets.TERMINUS_TOKEN }}
terminus upstream:updates:apply wpcm-sage-install-tests.dev --accept-upstream
terminus multidev:create wpcm-sage-install-tests.dev $multidev_name
shell: bash
- name: Run Sage Install Script
run: |
composer install-sage || exit_code=$?
if [[ -n "${exit_code}" ]]; then
echo "❌ Sage Install Script Failed with exit code ${exit_code}"
exit $exit_code
else
echo "✅ Sage Install Script passed!"
exit 0;
fi
shell: bash
- name: Delete multidev
if: always()
run: terminus multidev:delete --delete-branch --yes wpcm-sage-install-tests.$multidev_name