Skip to content

Commit

Permalink
feat: add nightly job
Browse files Browse the repository at this point in the history
  • Loading branch information
shyim committed Nov 29, 2023
1 parent 632b193 commit 4d9ff5e
Showing 1 changed file with 121 additions and 38 deletions.
159 changes: 121 additions & 38 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
@@ -1,45 +1,128 @@
name: Test nightly
on:
workflow_dispatch:
schedule:
- cron: "3 3 * * * "
push:
branches:
- add-nightly-jobs
workflow_dispatch:
schedule:
- cron: "3 3 * * * "

jobs:
test:
name: Test ${{ matrix.name }}
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
include:
- name: 6.4.x
package: dev-flex
- name: 6.5.x
package: 6.5.0.0-dev
env:
APP_ENV: prod
DATABASE_URL: mysql://root:[email protected]:3306/root
APP_URL: http://localhost:8000
APP_SECRET: devsecret
BLUE_GREEN_DEPLOYMENT: 0
NODE_OPTIONS: '--openssl-legacy-provider'
services:
database:
image: mysql:8.0
test:
name: Test ${{ matrix.name }}
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
include:
- name: 6.4.x
package: ~6.4.0
- name: 6.5.x
package: ~6.5.0
- name: 6.5.x (6.5.x-dev)
package: 6.5.x-dev
- name: trunk
package: 6.6.x-dev
env:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: root
options: '--mount="type=tmpfs,destination=/var/lib/mysql" --health-cmd="mysqladmin ping -h 127.0.0.1" --health-interval=5s --health-timeout=2s --health-retries=3'
ports:
- "3306:3306"
steps:
- name: Create project
run: composer create-project shopware/production:${{ matrix.package }} project
APP_ENV: prod
DATABASE_URL: mysql://root:[email protected]:3306/root
APP_URL: http://localhost:8000
APP_SECRET: devsecret
BLUE_GREEN_DEPLOYMENT: 0
NODE_OPTIONS: '--openssl-legacy-provider'
services:
database:
image: mysql:8.0
env:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: root
options: '--mount="type=tmpfs,destination=/var/lib/mysql" --health-cmd="mysqladmin ping -h 127.0.0.1" --health-interval=5s --health-timeout=2s --health-retries=3'
ports:
- "3306:3306"
steps:
- name: Setup project
run: |
touch .env
touch .gitignore
mkdir -p custom/plugins custom/apps
COMPOSER=$(cat <<EOF
{
"name": "shopware/production",
"license": "MIT",
"type": "project",
"require": {
"composer-runtime-api": "^2.0",
"shopware/administration": "${{ matrix.package }}",
"shopware/core": "${{ matrix.package }}",
"shopware/elasticsearch": "${{ matrix.package }}",
"shopware/storefront": "${{ matrix.package }}",
"symfony/flex": "~2"
},
"repositories": [
{
"type": "path",
"url": "custom/plugins/*",
"options": {
"symlink": true
}
},
{
"type": "path",
"url": "custom/plugins/*/packages/*",
"options": {
"symlink": true
}
},
{
"type": "path",
"url": "custom/static-plugins/*",
"options": {
"symlink": true
}
}
],
"minimum-stability": "dev",
"prefer-stable": true,
"config": {
"allow-plugins": {
"symfony/flex": true,
"symfony/runtime": true
},
"optimize-autoloader": true,
"sort-packages": true
},
"scripts": {
"auto-scripts": [
],
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
},
"extra": {
"symfony": {
"allow-contrib": true,
"endpoint": [
"https://raw.githubusercontent.com/shopware/recipes/flex/main/index.json",
"flex://defaults"
]
}
}
}
EOF)
echo "$COMPOSER" > composer.json
- name: Install Shopware
run: |
cd project
./bin/console system:install --basic-setup --create-database
./bin/build-administration.sh
./bin/build-storefront.sh
- name: Test
run: cat composer.json

- name: Install Composer
run: composer install

- name: Install Shopware
run: |
./bin/console system:install --basic-setup --create-database
./bin/build-administration.sh
./bin/build-storefront.sh

0 comments on commit 4d9ff5e

Please sign in to comment.