1515
1616
1717jobs :
18- silverstripe_5_php81 :
19- name : " Silverstripe 5.4 | PHP 8.1 "
18+ silverstripe_6_php81 :
19+ name : " Silverstripe 6.0 | PHP 8.3 "
2020 runs-on : ubuntu-latest
2121 env :
22- php_version : 8.1
22+ php_version : 8.3
2323 php_extensions : ctype, dom, fileinfo, hash, intl, mbstring, session, simplexml, tokenizer, xml, pdo, mysqli, gd, zip
2424 services :
2525 mysql :
26- image : mysql:5.7
26+ image : mysql:8.0
2727 env :
2828 MYSQL_ALLOW_EMPTY_PASSWORD : false
2929 MYSQL_ROOT_PASSWORD : testpassword
4242 with :
4343 php-version : ${{ env.php_version }}
4444 extensions : ${{ env.php_extensions }}
45- key : php74 -ext-cache-${{ hashFiles('.github/workflows/ci.yml') }}
45+ key : php83 -ext-cache-${{ hashFiles('.github/workflows/ci.yml') }}
4646
4747 - name : Cache PHP Extensions
4848 uses : actions/cache@v4
8080 composer config allow-plugins.composer/installers true
8181 composer config allow-plugins.silverstripe/recipe-plugin true
8282 composer config allow-plugins.silverstripe/vendor-plugin true
83- composer require silverstripe/admin 2.4.* --no-update
84- composer require silverstripe/versioned 2.4.*
85- composer install --verbose --no-interaction --no-progress --no-suggest --optimize-autoloader --ansi
86-
87- - name : Configure Environment
88- run : |
89- cp tests/utils/actions.env.template .env
90- mkdir artifacts
91-
92- - name : Perform PHPUnit Tests
93- env :
94- SS_DATABASE_PORT : ${{ job.services.mysql.ports['3306'] }}
95- run : vendor/bin/phpunit --colors=always --printer UndefinedOffset\\SortableGridField\\Tests\\PHPUnit\\Bootstrap\\GitHubActionsAnnotatorPrinter
96-
97- silverstripe_413_php80 :
98- name : " Silverstripe 4.13 | PHP 8.0"
99- runs-on : ubuntu-latest
100- env :
101- php_version : 8.0
102- php_extensions : ctype, dom, fileinfo, hash, intl, mbstring, session, simplexml, tokenizer, xml, pdo, mysqli, gd, zip
103- services :
104- mysql :
105- image : mysql:5.7
106- env :
107- MYSQL_ALLOW_EMPTY_PASSWORD : false
108- MYSQL_ROOT_PASSWORD : testpassword
109- MYSQL_DATABASE : test_db
110- ports :
111- - 3306/tcp
112- options : --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
113-
114- steps :
115- - name : Checkout
116- uses : actions/checkout@v4
117-
118- - name : Setup PHP Extension Cache
119- id : cache-env
120- uses : shivammathur/cache-extensions@v1
121- with :
122- php-version : ${{ env.php_version }}
123- extensions : ${{ env.php_extensions }}
124- key : php80-ext-cache-${{ hashFiles('.github/workflows/ci.yml') }}
125-
126- - name : Cache PHP Extensions
127- uses : actions/cache@v4
128- with :
129- path : ${{ steps.cache-env.outputs.dir }}
130- key : ${{ steps.cache-env.outputs.key }}
131- restore-keys : ${{ steps.cache-env.outputs.key }}
132-
133- - name : Setup PHP, with composer and extensions
134- uses : shivammathur/setup-php@v2
135- with :
136- php-version : ${{ env.php_version }}
137- extensions : ${{ env.php_extensions }}
138- ini-values : log_errors=On, error_log="${{github.workspace}}/artifacts/php_errors.log"
139- coverage : none
140- tools : composer:v2
141-
142- - name : Get composer cache directory
143- id : composer-cache
144- run : echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
145-
146- - name : Cache composer dependencies
147- uses : actions/cache@v4
148- with :
149- path : ${{ steps.composer-cache.outputs.dir }}
150- key : ${{ runner.os }}-composer-ss411-php80-${{ hashFiles('**/composer.json') }}-${{ hashFiles('.github/workflows/ci.yml') }}
151- restore-keys : ${{ runner.os }}-composer-ss411-php80-
152-
153- - name : Install Composer dependencies
154- env :
155- GITHUB_ACCESS_TOKEN : ${{ secrets.GITHUB_TOKEN }}
156- run : |
157- composer self-update --ansi || true
158- if [[ $GITHUB_ACCESS_TOKEN ]]; then composer config --ansi -g github-oauth.github.com $GITHUB_ACCESS_TOKEN; fi
159- composer config allow-plugins.composer/installers true
160- composer config allow-plugins.silverstripe/recipe-plugin true
161- composer config allow-plugins.silverstripe/vendor-plugin true
162- composer require silverstripe/admin 1.13.* --no-update
163- composer require silverstripe/versioned 1.13.*
83+ composer require silverstripe/admin 3.0.* --no-update
84+ composer require silverstripe/versioned 3.0.*
16485 composer install --verbose --no-interaction --no-progress --no-suggest --optimize-autoloader --ansi
16586
16687 - name : Configure Environment
17798 name : " PHP_CodeSniffer"
17899 runs-on : ubuntu-latest
179100 env :
180- php_version : 8.0
101+ php_version : 8.3
181102 php_extensions : ctype, dom, fileinfo, hash, intl, mbstring, session, simplexml, tokenizer, xml, pdo, mysqli, gd, zip
182103
183104 steps :
@@ -190,7 +111,7 @@ jobs:
190111 with :
191112 php-version : ${{ env.php_version }}
192113 extensions : ${{ env.php_extensions }}
193- key : php74 -ext-cache-${{ hashFiles('.github/workflows/ci.yml') }}
114+ key : php83 -ext-cache-${{ hashFiles('.github/workflows/ci.yml') }}
194115
195116 - name : Cache PHP Extensions
196117 uses : actions/cache@v4
0 commit comments