diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 641fbe9..37b63c7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,149 +1,7 @@ -name: Learningmap Github actions - +name: Moodle Plugin CI on: [push, pull_request] - jobs: - test: - runs-on: ubuntu-latest - - services: - postgres: - image: ${{ matrix.database == 'pgsql' && 'postgres:17' || '' }} - env: - POSTGRES_USER: 'postgres' - POSTGRES_HOST_AUTH_METHOD: 'trust' - ports: - - 5432:5432 - options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 3 - - mariadb: - image: ${{ matrix.database == 'mariadb' && 'mariadb:11' || '' }} - env: - MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: '1' - MYSQL_CHARACTER_SET_SERVER: "utf8mb4" - MYSQL_COLLATION_SERVER: "utf8mb4_unicode_ci" - ports: - - 3306:3306 - options: --health-cmd="healthcheck.sh --connect --innodb_initialized" --health-interval 10s --health-timeout 5s --health-retries 3 - - strategy: - fail-fast: false - matrix: - include: - - php: '8.4' - moodle-branch: 'main' - database: 'mariadb' - - php: '8.4' - moodle-branch: 'main' - database: 'pgsql' - - php: '8.4' - moodle-branch: 'MOODLE_502_STABLE' - database: 'mariadb' - - php: '8.4' - moodle-branch: 'MOODLE_502_STABLE' - database: 'pgsql' - - php: '8.4' - moodle-branch: 'MOODLE_501_STABLE' - database: 'mariadb' - - php: '8.4' - moodle-branch: 'MOODLE_501_STABLE' - database: 'pgsql' - - php: '8.4' - moodle-branch: 'MOODLE_500_STABLE' - database: 'mariadb' - - php: '8.4' - moodle-branch: 'MOODLE_500_STABLE' - database: 'pgsql' - - php: '8.3' - moodle-branch: 'MOODLE_405_STABLE' - database: 'mariadb' - - php: '8.3' - moodle-branch: 'MOODLE_405_STABLE' - database: 'pgsql' - steps: - - name: Check out repository code - uses: actions/checkout@v4 - with: - path: plugin - - - name: Setup PHP ${{ matrix.php }} - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php }} - extensions: ${{ matrix.extensions }} - ini-values: max_input_vars=5000 - # If you are not using code coverage, keep "none". Otherwise, use "pcov" (Moodle 3.10 and up) or "xdebug". - # If you try to use code coverage with "none", it will fallback to phpdbg (which has known problems). - coverage: none - - - name: Initialise moodle-plugin-ci - run: | - composer create-project -n --no-dev --prefer-dist moodlehq/moodle-plugin-ci ci ^4 - echo $(cd ci/bin; pwd) >> $GITHUB_PATH - echo $(cd ci/vendor/bin; pwd) >> $GITHUB_PATH - sudo locale-gen en_AU.UTF-8 - echo "NVM_DIR=$HOME/.nvm" >> $GITHUB_ENV - - - name: Install moodle-plugin-ci - run: moodle-plugin-ci install --plugin ./plugin --db-host=127.0.0.1 - env: - DB: ${{ matrix.database }} - MOODLE_BRANCH: ${{ matrix.moodle-branch }} - # Uncomment this to run Behat tests using the Moodle App. - # MOODLE_APP: 'true' - - - name: PHP Lint - if: ${{ !cancelled() }} - run: moodle-plugin-ci phplint - - - name: PHP Mess Detector - continue-on-error: true # This step will show errors but will not fail - if: ${{ !cancelled() }} - run: moodle-plugin-ci phpmd - - - name: Moodle Code Checker - if: ${{ !cancelled() }} - run: moodle-plugin-ci phpcs --max-warnings 5 - - - name: Moodle PHPDoc Checker - if: ${{ !cancelled() }} - run: moodle-plugin-ci phpdoc --max-warnings 0 - - - name: Validating - if: ${{ !cancelled() }} - run: moodle-plugin-ci validate - - - name: Check upgrade savepoints - if: ${{ !cancelled() }} - run: moodle-plugin-ci savepoints - - - name: Mustache Lint - continue-on-error: true # This step will show errors but will not fail - if: ${{ !cancelled() }} - run: moodle-plugin-ci mustache - - - name: Grunt - if: ${{ !cancelled() }} - run: moodle-plugin-ci grunt --max-lint-warnings 0 - - - name: PHPUnit tests - if: ${{ !cancelled() }} - run: moodle-plugin-ci phpunit --fail-on-warning - - # - name: Behat features - # id: behat - # if: ${{ !cancelled() }} - # run: moodle-plugin-ci behat --profile chrome - - # - name: Upload Behat Faildump - # if: ${{ failure() && steps.behat.outcome == 'failure' }} - # uses: actions/upload-artifact@v4 - # with: - # name: Behat Faildump (${{ join(matrix.*, ', ') }}) - # path: ${{ github.workspace }}/moodledata/behat_dump - # retention-days: 7 - # if-no-files-found: ignore - - - name: Mark cancelled jobs as failed. - if: ${{ cancelled() }} - run: exit 1 + ci: + uses: bycs-lp/moodle-ci-workflows/.github/workflows/moodle-plugin-ci.yml@main + with: + mustache-continue-on-error: true diff --git a/.github/workflows/moodle-release.yml b/.github/workflows/moodle-release.yml index 8c872a1..bc9c3d7 100644 --- a/.github/workflows/moodle-release.yml +++ b/.github/workflows/moodle-release.yml @@ -1,12 +1,10 @@ name: Moodle Plugin Release - on: release: - types: [ published ] - + types: [published] jobs: - call-moodle-release-workflow: - uses: bycs-lp/moodle-workflows/.github/workflows/moodle-release.yml@main + release: + uses: bycs-lp/moodle-ci-workflows/.github/workflows/moodle-release.yml@main with: - plugin-name: 'mod_learningmap' + tag: ${{ github.event.release.tag_name }} secrets: inherit