From 6cc99316c8091eb5a093c174a432609f7dad64f2 Mon Sep 17 00:00:00 2001 From: Rana Muhammad Irshad Date: Wed, 31 Jan 2024 17:17:36 +0100 Subject: [PATCH] Add github actions, DEV-362 --- .github/workflows/coding-standard.yml | 10 + .github/workflows/integration.yml | 351 ++++++++++++++++++++++++++ .github/workflows/mess-detector.yml | 10 + .github/workflows/phpstan.yml | 12 + 4 files changed, 383 insertions(+) create mode 100644 .github/workflows/coding-standard.yml create mode 100644 .github/workflows/integration.yml create mode 100644 .github/workflows/mess-detector.yml create mode 100644 .github/workflows/phpstan.yml diff --git a/.github/workflows/coding-standard.yml b/.github/workflows/coding-standard.yml new file mode 100644 index 0000000..fa358ed --- /dev/null +++ b/.github/workflows/coding-standard.yml @@ -0,0 +1,10 @@ +name: ExtDN M2 Coding Standard +on: [push, pull_request] + +jobs: + static: + name: M2 Coding Standard + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: extdn/github-actions-m2/magento-coding-standard@master diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml new file mode 100644 index 0000000..b610721 --- /dev/null +++ b/.github/workflows/integration.yml @@ -0,0 +1,351 @@ +name: ExtDN M2 Integration Tests +on: [ push, pull_request ] +jobs: + integration-tests-2-4-4-p6-8-1: + name: Magento 2.4.4-p6 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.4-p6 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.4-p6' + composer_version: '2' + integration-tests-2-4-4-p6-7-4: + name: Magento 2.4.4-p6 PHP 7.4 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.4-p6 (PHP 7.4) + uses: extdn/github-actions-m2/magento-integration-tests/7.4@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.4-p6' + composer_version: '2' + integration-tests-2-4-4-p5-7-4: + name: Magento 2.4.4-p5 PHP 7.4 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.4-p5 (PHP 7.4) + uses: extdn/github-actions-m2/magento-integration-tests/7.4@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.4-p5' + composer_version: '2' + integration-tests-2-4-4-p5-8-1: + name: Magento 2.4.4-p5 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.4-p5 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.4-p5' + composer_version: '2' + integration-tests-2-4-5-p5-8-1: + name: Magento 2.4.5-p5 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.5-p5 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.5-p5' + composer_version: '2' + integration-tests-2-4-5-p5-7-4: + name: Magento 2.4.5-p5 PHP 7.4 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.5-p5 (PHP 7.4) + uses: extdn/github-actions-m2/magento-integration-tests/7.4@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.5-p5' + composer_version: '2' + integration-tests-2-4-5-p4-7-4: + name: Magento 2.4.5-p4 PHP 7.4 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.5-p4 (PHP 7.4) + uses: extdn/github-actions-m2/magento-integration-tests/7.4@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.5-p4' + composer_version: '2' + integration-tests-2-4-5-p4-8-1: + name: Magento 2.4.5-p4 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.5-p4 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.5-p4' + composer_version: '2' + integration-tests-2-4-6-p3-8-1: + name: Magento 2.4.6-p3 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.6-p3 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.6-p3' + composer_version: '2' + integration-tests-2-4-6-p3-8-2: + name: Magento 2.4.6-p3 PHP 8.2 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.6-p3 (PHP 8.2) + uses: extdn/github-actions-m2/magento-integration-tests/8.2@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.6-p3' + composer_version: '2' + integration-tests-2-4-6-p2-8-2: + name: Magento 2.4.6-p2 PHP 8.2 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.6-p2 (PHP 8.2) + uses: extdn/github-actions-m2/magento-integration-tests/8.2@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.6-p2' + composer_version: '2' + integration-tests-2-4-6-p2-8-1: + name: Magento 2.4.6-p2 PHP 8.1 Integration Tests + runs-on: ubuntu-latest + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ROOT_PASSWORD: root + ports: + - 3306:3306 + options: --tmpfs /tmp:rw --tmpfs /var/lib/mysql:rw --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + es: + image: docker.io/wardenenv/elasticsearch:7.8 + ports: + - 9200:9200 + env: + 'discovery.type': single-node + 'xpack.security.enabled': false + ES_JAVA_OPTS: "-Xms64m -Xmx512m" + options: --health-cmd="curl localhost:9200/_cluster/health?wait_for_status=yellow&timeout=60s" --health-interval=10s --health-timeout=5s --health-retries=3 + steps: + - uses: actions/checkout@v4 + - name: M2 Integration Tests with Magento 2 Version 2.4.6-p2 (PHP 8.1) + uses: extdn/github-actions-m2/magento-integration-tests/8.1@master + with: + module_name: CustomGento_DefaultStoreCodeRemover + composer_name: customgento/module-default-store-code-remover-m2 + ce_version: '2.4.6-p2' + composer_version: '2' diff --git a/.github/workflows/mess-detector.yml b/.github/workflows/mess-detector.yml new file mode 100644 index 0000000..23e9417 --- /dev/null +++ b/.github/workflows/mess-detector.yml @@ -0,0 +1,10 @@ +name: ExtDN M2 Mess Detector +on: [push, pull_request] + +jobs: + phpmd: + name: M2 Mess Detector + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: extdn/github-actions-m2/magento-mess-detector@master diff --git a/.github/workflows/phpstan.yml b/.github/workflows/phpstan.yml new file mode 100644 index 0000000..e97cf95 --- /dev/null +++ b/.github/workflows/phpstan.yml @@ -0,0 +1,12 @@ +name: ExtDN M2 PHPStan +on: [push, pull_request] + +jobs: + phpstan: + name: M2 PHPStan + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: extdn/github-actions-m2/magento-phpstan@master + with: + composer_name: customgento/module-default-store-code-remover-m2