-
Notifications
You must be signed in to change notification settings - Fork 34
138 lines (121 loc) · 5.37 KB
/
orca.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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
---
name: tests
on:
push:
branches: [ main, develop, wip ]
paths-ignore:
- .idea/**
- docs/**
pull_request:
branches: [ develop ]
paths-ignore:
- .idea/**
- docs/**
schedule:
# Daily at 00:00:00 UTC.
# @see https://crontab.cronhub.io/
- cron: "0 0 * * *"
jobs:
build:
runs-on: ubuntu-24.04
env:
ORCA_SUT_NAME: acquia/drupal-spec-tool
ORCA_SUT_BRANCH: master
ORCA_VERSION: ${{ matrix.orca-version }}
ORCA_JOB: ${{ matrix.orca-job }}
BEHAT: ${{ matrix.behat }}
# Google env variables.
ORCA_GOOGLE_API_CLIENT_ID: ${{ secrets.ORCA_GOOGLE_API_CLIENT_ID }}
ORCA_GOOGLE_API_CLIENT_SECRET: ${{ secrets.ORCA_GOOGLE_API_CLIENT_SECRET }}
ORCA_GOOGLE_API_REFRESH_TOKEN: ${{ secrets.ORCA_GOOGLE_API_REFRESH_TOKEN }}
strategy:
matrix:
orca-job:
- STATIC_CODE_ANALYSIS
- ISOLATED_TEST_ON_CURRENT
# - INTEGRATED_TEST_ON_OLDEST_SUPPORTED # Integrated test on oldest supported Drupal core version.
# - INTEGRATED_TEST_ON_LATEST_LTS # Integrated test on latest LTS Drupal core version.
# - INTEGRATED_TEST_ON_PREVIOUS_MINOR # Integrated test on previous minor Drupal core version.
# - INTEGRATED_UPGRADE_TEST_FROM_PREVIOUS_MINOR # Integrated upgrade test from previous minor.
# - ISOLATED_TEST_ON_CURRENT # Isolated test on current Drupal core version.
# This job customized below under "include".
# - INTEGRATED_TEST_ON_CURRENT # Integrated test on current Drupal core version.
# - ISOLATED_TEST_ON_CURRENT_DEV # Isolated test on current dev Drupal core version.
# - INTEGRATED_TEST_ON_CURRENT_DEV # Integrated test on current dev Drupal core version.
# - LOOSE_DEPRECATED_CODE_SCAN # Loose deprecated code scan.
# - STRICT_DEPRECATED_CODE_SCAN # Strict deprecated code scan.
# - DEPRECATED_CODE_SCAN_W_CONTRIB # Deprecated code scan w/ contrib.
# - ISOLATED_TEST_ON_NEXT_MINOR # Isolated test on next minor Drupal core version.
# - INTEGRATED_TEST_ON_NEXT_MINOR # Integrated test on next minor Drupal core version.
# - ISOLATED_TEST_ON_NEXT_MINOR_DEV # Isolated test on next minor dev Drupal core version.
# - INTEGRATED_TEST_ON_NEXT_MINOR_DEV # Integrated test on next minor dev Drupal core version.
# - LOOSE_DEPRECATED_CODE_SCAN
# Upgrade tests are not yet implemented.
# - INTEGRATED_UPGRADE_TEST_TO_NEXT_MINOR # Integrated upgrade test to next minor Drupal core version.
# - INTEGRATED_UPGRADE_TEST_TO_NEXT_MINOR_DEV # Integrated upgrade test to next minor dev Drupal core version.
# - INTEGRATED_UPGRADE_TEST_TO_NEXT_MINOR_DEV
# - ISOLATED_UPGRADE_TEST_TO_NEXT_MAJOR_BETA_OR_LATER # Isolated upgrade test to next major beta-or-later Drupal core version.
# - ISOLATED_UPGRADE_TEST_TO_NEXT_MAJOR_DEV # Isolated upgrade test to next major dev Drupal core version.
php-version: [ "8.1", "8.3" ]
orca-version: [ "^4" ]
include:
# Acquia CMS/Spreadsheet/Behat integration test.
# - orca-job: "INTEGRATED_TEST_ON_CURRENT"
# php-version: "8.1"
# behat: "TRUE"
- orca-job: ISOLATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_DEV
php-version: "8.1"
- orca-job: INTEGRATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_DEV
php-version: "8.1"
- orca-job: ISOLATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_BETA_OR_LATER
php-version: "8.1"
- orca-job: INTEGRATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_BETA_OR_LATER
php-version: "8.1"
- orca-job: ISOLATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_BETA_OR_LATER
php-version: "8.3"
- orca-job: INTEGRATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_BETA_OR_LATER
php-version: "8.3"
- orca-job: ISOLATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_DEV
php-version: "8.3"
- orca-job: INTEGRATED_TEST_ON_NEXT_MAJOR_LATEST_MINOR_DEV
php-version: "8.3"
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: 12.x
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
coverage: xdebug
# Install ORCA and prepare the environment.
- name: Before install
run: |
composer create-project --no-dev acquia/orca ../orca "$ORCA_VERSION"
../orca/bin/ci/before_install.sh
# Create the test fixture and place the SUT.
- name: Install
run: ../orca/bin/ci/install.sh
# Display details about the fixture.
- name: Before script
run: ../orca/bin/ci/before_script.sh
# Run the test script.
- name: Script
run: ./bin/ci/script.sh
# Perform final, post-script tasks.
- name: After script
run: ../orca/bin/ci/after_script.sh
# Conditionally send code coverage data to Coveralls.
- name: After success
if: ${{ success() }}
run: ../orca/bin/ci/after_success.sh
# Display debugging information in case of failure.
- name: After failure
if: ${{ failure() }}
run: ../orca/bin/ci/after_failure.sh
all-successful:
runs-on: ubuntu-latest
needs: [ build ]
steps:
- name: All checks successful
run: echo "🎉"