Skip to content

Commit

Permalink
Merge pull request #144 from lilt/5.x-support
Browse files Browse the repository at this point in the history
Add support of CraftCMS v5
  • Loading branch information
hadomskyi authored Mar 25, 2024
2 parents 5302daa + 5c58d28 commit 9a0ecda
Show file tree
Hide file tree
Showing 14 changed files with 356 additions and 327 deletions.
199 changes: 100 additions & 99 deletions .github/workflows/craft-versions.yml
Original file line number Diff line number Diff line change
@@ -1,99 +1,100 @@
name: Tests on multiple craft versions
on:
push:
branches:
- 4.x #CraftCMS v4
pull_request:
branches:
- "*"
jobs:
tests:
strategy:
fail-fast: false
matrix:
craft_version: [
# TODO: check this
# Investigation:
# https://github.com/craftcms/cms/issues/11083
#"4.0.0", contains FK bug, it tries to update field on draft (after apply draft removed, so it fails)
"4.0.1",
"4.0.2",
"4.0.3",
"4.0.4",
"4.0.5",
"4.0.5.1",
"4.0.5.2",
"4.0.6",
"4.0.6",
"4.1.0",
"4.1.0.1",
"4.1.0.2",
"4.1.1",
"4.1.2",
"4.1.3",
"4.1.4",
"4.1.4.1",
"4.2.0",
"4.2.0.1",
"4.2.0.2",
"4.2.1",
"4.2.1.1",
"4.2.2",
"4.2.3",
"4.2.4",
"4.2.5",
"4.2.5.1",
"4.2.5.2",
"4.2.6",
"4.2.7",
"4.2.8",
"4.3.0",
"4.3.1",
"4.3.2",
"4.3.2.1",
"4.3.3",
"4.3.4",
"4.3.5",
"4.3.6",
"4.3.6.1",
"4.3.7",
"4.3.7.1",
"4.3.8",
"4.3.8.1",
"4.3.8.2",
"4.3.9",
"4.3.10",
"4.3.11",
"4.4.0",
"4.4.1",
"4.4.2",
"4.4.3",
"4.4.4",
"4.4.5",
"4.4.6",
"4.4.6.1",
"4.4.7",
"4.4.7.1",
"4.4.8",
"4.4.9",
"4.4.10",
"4.4.10.1",
"4.4.11",
"4.4.12",
"4.4.13",
"4.4.14",
"4.4.15",
"4.4.16",
"4.4.16.1",
"4.4.17",
]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set the value
id: step_one
run: |
echo "PHP_VERSION=8.1" >> $GITHUB_ENV
echo "CRAFT_VERSION=${{ matrix.craft_version }}" >> $GITHUB_ENV
- name: Test craft versions ${{ matrix.craft_version }}
run: make test-craft-versions
#TODO: once craftcms v5 released fix all pipelines
#name: Tests on multiple craft versions
#on:
# push:
# branches:
# - 4.x #CraftCMS v4
# pull_request:
# branches:
# - "*"
#jobs:
# tests:
# strategy:
# fail-fast: false
# matrix:
# craft_version: [
# # TODO: check this
# # Investigation:
# # https://github.com/craftcms/cms/issues/11083
# #"4.0.0", contains FK bug, it tries to update field on draft (after apply draft removed, so it fails)
# "4.0.1",
# "4.0.2",
# "4.0.3",
# "4.0.4",
# "4.0.5",
# "4.0.5.1",
# "4.0.5.2",
# "4.0.6",
# "4.0.6",
# "4.1.0",
# "4.1.0.1",
# "4.1.0.2",
# "4.1.1",
# "4.1.2",
# "4.1.3",
# "4.1.4",
# "4.1.4.1",
# "4.2.0",
# "4.2.0.1",
# "4.2.0.2",
# "4.2.1",
# "4.2.1.1",
# "4.2.2",
# "4.2.3",
# "4.2.4",
# "4.2.5",
# "4.2.5.1",
# "4.2.5.2",
# "4.2.6",
# "4.2.7",
# "4.2.8",
# "4.3.0",
# "4.3.1",
# "4.3.2",
# "4.3.2.1",
# "4.3.3",
# "4.3.4",
# "4.3.5",
# "4.3.6",
# "4.3.6.1",
# "4.3.7",
# "4.3.7.1",
# "4.3.8",
# "4.3.8.1",
# "4.3.8.2",
# "4.3.9",
# "4.3.10",
# "4.3.11",
# "4.4.0",
# "4.4.1",
# "4.4.2",
# "4.4.3",
# "4.4.4",
# "4.4.5",
# "4.4.6",
# "4.4.6.1",
# "4.4.7",
# "4.4.7.1",
# "4.4.8",
# "4.4.9",
# "4.4.10",
# "4.4.10.1",
# "4.4.11",
# "4.4.12",
# "4.4.13",
# "4.4.14",
# "4.4.15",
# "4.4.16",
# "4.4.16.1",
# "4.4.17",
# ]
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# - name: Set the value
# id: step_one
# run: |
# echo "PHP_VERSION=8.1" >> $GITHUB_ENV
# echo "CRAFT_VERSION=${{ matrix.craft_version }}" >> $GITHUB_ENV
# - name: Test craft versions ${{ matrix.craft_version }}
# run: make test-craft-versions
145 changes: 73 additions & 72 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
@@ -1,72 +1,73 @@
name: E2E Tests
on:
push:
branches:
- 4.x #CraftCMS v4
pull_request:
branches:
- "*"
jobs:
tests:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest ]
scenario: [
"cypress/e2e/jobs/copy-source-text-flow/filters.cy.js",
"cypress/e2e/jobs/copy-source-text-flow/success-path-multiple.cy.js",
"cypress/e2e/jobs/copy-source-text-flow/success-path-single.cy.js",
"cypress/e2e/jobs/instant/success-path-multiple.cy.js",
"cypress/e2e/jobs/instant/success-path-multiple-copy-slug.cy.js",
"cypress/e2e/jobs/instant/success-path-multiple-copy-slug-and-enable-after-publish.cy.js",
"cypress/e2e/jobs/instant/success-path-multiple-enable-after-publish.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-copy-slug.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-copy-slug-and-enable-after-publish.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-enable-after-publish.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-single-publishing.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-single-publishing-copy-slug.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-single-publishing-copy-slug-and-enable-after-publish.cy.js",
"cypress/e2e/jobs/verified/success-path-multiple-single-publishing-enable-after-publish.cy.js",
"cypress/e2e/jobs/verified/success-path-single.cy.js",
"cypress/e2e/jobs/instant/success-path-single.cy.js",
]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set the value
id: step_one
run: |
echo "CYPRESS_SCENARIO=${{ matrix.scenario }}" >> $GITHUB_ENV
echo "DB_DATABASE=$(uuidgen)" >> $GITHUB_ENV
- name: Run automation
working-directory: ./e2e
run: |
echo ${DB_DATABASE}
make up
make e2e-github
- name: Copy artifacts
if: ${{ failure() }}
working-directory: ./e2e
run: |
make backup-db
mkdir var
mkdir var/log
mkdir cypress/craft
mkdir cypress/craft/storage
mkdir cypress/craft/config
docker compose cp app:/app/storage cypress/craft/storage
docker compose cp app:/app/config cypress/craft/config
docker compose cp app:/app/composer.json cypress/craft
docker compose cp app:/app/composer.lock cypress/craft
docker compose cp app:/var/log var/log
- name: Use the Upload Artifact GitHub Action
uses: actions/upload-artifact@v2
if: ${{ failure() }}
with:
name: "${{ github.job }}_${{ github.run_id }}_${{ github.workflow }}_e2e_artifacts"
path: |
./e2e/cypress/craft
./e2e/cypress/screenshots
./e2e/cypress/videos
./e2e/happy-lager-main/storage
#TODO: once craftcms v5 released fix all pipelines
#name: E2E Tests
#on:
# push:
# branches:
# - 4.x #CraftCMS v4
# pull_request:
# branches:
# - "*"
#jobs:
# tests:
# strategy:
# fail-fast: false
# matrix:
# os: [ ubuntu-latest ]
# scenario: [
# "cypress/e2e/jobs/copy-source-text-flow/filters.cy.js",
# "cypress/e2e/jobs/copy-source-text-flow/success-path-multiple.cy.js",
# "cypress/e2e/jobs/copy-source-text-flow/success-path-single.cy.js",
# "cypress/e2e/jobs/instant/success-path-multiple.cy.js",
# "cypress/e2e/jobs/instant/success-path-multiple-copy-slug.cy.js",
# "cypress/e2e/jobs/instant/success-path-multiple-copy-slug-and-enable-after-publish.cy.js",
# "cypress/e2e/jobs/instant/success-path-multiple-enable-after-publish.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-copy-slug.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-copy-slug-and-enable-after-publish.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-bulk-publishing-enable-after-publish.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-single-publishing.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-single-publishing-copy-slug.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-single-publishing-copy-slug-and-enable-after-publish.cy.js",
# "cypress/e2e/jobs/verified/success-path-multiple-single-publishing-enable-after-publish.cy.js",
# "cypress/e2e/jobs/verified/success-path-single.cy.js",
# "cypress/e2e/jobs/instant/success-path-single.cy.js",
# ]
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# - name: Set the value
# id: step_one
# run: |
# echo "CYPRESS_SCENARIO=${{ matrix.scenario }}" >> $GITHUB_ENV
# echo "DB_DATABASE=$(uuidgen)" >> $GITHUB_ENV
# - name: Run automation
# working-directory: ./e2e
# run: |
# echo ${DB_DATABASE}
# make up
# make e2e-github
# - name: Copy artifacts
# if: ${{ failure() }}
# working-directory: ./e2e
# run: |
# make backup-db
# mkdir var
# mkdir var/log
# mkdir cypress/craft
# mkdir cypress/craft/storage
# mkdir cypress/craft/config
# docker compose cp app:/app/storage cypress/craft/storage
# docker compose cp app:/app/config cypress/craft/config
# docker compose cp app:/app/composer.json cypress/craft
# docker compose cp app:/app/composer.lock cypress/craft
# docker compose cp app:/var/log var/log
# - name: Use the Upload Artifact GitHub Action
# uses: actions/upload-artifact@v2
# if: ${{ failure() }}
# with:
# name: "${{ github.job }}_${{ github.run_id }}_${{ github.workflow }}_e2e_artifacts"
# path: |
# ./e2e/cypress/craft
# ./e2e/cypress/screenshots
# ./e2e/cypress/videos
# ./e2e/happy-lager-main/storage
Loading

0 comments on commit 9a0ecda

Please sign in to comment.