File manager - Edit - /home/u466501803/domains/qurdis.my.id/public_html/.github.zip
Back
PK <�\�a^�� � moodlelogo.svgnu �[��� <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1231.24 314.44" preserveAspectRatio="xMinYMid meet"><defs><style>.cls-1{fill:#f48020;}.cls-2,.cls-3{fill:#383738;stroke:#4a4a4c;}.cls-2{stroke-width:2.37px;}.cls-3{stroke-width:2.38px;}.cls-4{fill:#585858;}</style></defs><title>Moodle_Logo_UseonBlack_RGB</title><path class="cls-1" d="M1086.3,235.34a53.42,53.42,0,0,0,16.71,29q13.26,12.27,29.48,12.27,11.29,0,24.56-5.89,16.23-6.88,16.22-16.22l58-.49q-12.29,29-41.76,45.2-27.52,15.23-60.43,15.24-42.25,0-70-26.29t-27.75-68.54q0-43.73,27.75-69.51t72-25.8q48.15,0,75.17,31.94,25.07,29.47,25.06,79.1Zm89.91-33.91q-3.43-17.69-14.73-29-12.8-12.28-29.49-12.29-17.21,0-28.74,11.79t-15.47,29.48Z"/><path class="cls-1" d="M965.45,308.54V0h55V308.54Z"/><path class="cls-1" d="M892.69,308.54V290.36q-7.38,9.83-25.06,15.72a92.31,92.31,0,0,1-30,5.41q-39.31,0-63.13-27T750.7,217.65q0-39.3,23.34-65.84t62.15-26.53q43.71,0,56.5,23.58V0h53.55V308.54Zm0-102.68q0-14.75-14-28.26t-28.74-13.51q-21.12,0-33.41,17.2-10.8,15.24-10.8,37.33,0,21.63,10.8,36.85,12.29,17.71,33.41,17.69,12.78,0,27.76-12t15-24.81Z"/><path class="cls-1" d="M647,313.45q-41.77,0-69-26.53t-27.27-68.3q0-41.73,27.27-68.28t69-26.53q41.75,0,69.27,26.53t27.52,68.28q0,41.79-27.52,68.3T647,313.45ZM647,168q-19.89,0-30.58,15.07t-10.68,35.79q0,20.73,9.94,35.05,11.43,16.31,31.32,16.28t31.32-16.28q10.44-14.31,10.44-35.05t-9.94-35Q667.42,168,647,168Z"/><path class="cls-1" d="M448.07,313.45q-41.76,0-69-26.53t-27.27-68.3q0-41.73,27.27-68.28t69-26.53q41.74,0,69.28,26.53t27.5,68.28q0,41.79-27.5,68.3T448.07,313.45Zm0-145.43q-19.89,0-30.59,15.07t-10.69,35.79q0,20.73,9.94,35.05,11.43,16.31,31.34,16.28t31.32-16.28q10.42-14.31,10.44-35.05t-9.94-35Q468.45,168,448.07,168Z"/><path class="cls-1" d="M288.89,309.11V201q0-33.9-28-33.9t-28,33.9V309.11h-55V201q0-33.9-27.52-33.9-28,0-28,33.9V309.11h-55V194.65q0-35.37,24.56-53.54,21.61-16.22,58.46-16.22,37.35,0,55,19.16,15.23-19.16,55.51-19.16,36.86,0,58.45,16.22,24.57,18.16,24.57,53.54V309.11Z"/><path class="cls-2" d="M.76,145.76"/><path class="cls-3" d="M1.73,145.32"/><path class="cls-4" d="M173.86,116.85l55.08-40.1-.7-2.44C135,83.92,80.42,96.44,0,144.13l.73,2.38,21-.67c15.17.52,30.85,1.26,46,1.32-1,24.09.83,32.65.83,32.65,51.92,17.58,101.22,1.53,127.14-43.9A248.72,248.72,0,0,0,173.86,116.85Z"/><path class="cls-4" d="M113.78,110c-.3-1.08-2.23-1.48-4.28-.9a4.73,4.73,0,0,0-3.14,2.19c-18.53,5-49.16,13.72-70.73,21l-1.33.45c-16.68,5.61-24.73,8.49-25.22,12.55-2.29,18.44-.87,42.18-.86,42.48l.19,6.4c-9.74,27.56.06,49.6,8.38,69.77.06-24.92,1.07-45.22-6-71-.2-3.82-1.49-30.36.61-47.34.34-2.75,11.65-6.56,23.63-10.59l1.33-.44c22-7.42,53.57-16.39,71.9-21.29a6.75,6.75,0,0,0,2.29-.25C112.64,112.43,114.08,111.09,113.78,110Z"/></svg>PK <�\a��� PULL_REQUEST_TEMPLATE.txtnu �[��� *** PLEASE DO NOT OPEN PULL REQUESTS VIA GITHUB *** The moodle.git repository at Github is just a mirror of the official repository. We do not accept pull requests at Github. See CONTRIBUTING.md guidelines for how to contribute patches for Moodle. Thank you. -- PK <�\P�td d workflows/onebyone.ymlnu �[��� name: One by One Testing # Run all the individual unit tests one by one, with # fully independent PHPUnit executions. Useful to # detect issues with some tests that are using stuff # that has been made available by others, but is not # available when running individually. # # Note that we aren't using PHPUnit's own isolation # here but completely separated runs, one for each # test. # # The workflow will fail reporting all the tests # that have failed (and will pass if no failure is # detected, of course). # # It's only executed via workflow dispatch (automated # or manual), not by push/tag. And acceptd configuration # of phpunit, specially useful to run it with PHPUnit's # own isolation or any other option. on: workflow_dispatch: inputs: phpunit_extra_options: description: Additional options to apply to PHPUnit required: false default: '' env: chunks: 7 jobs: collect: name: Collect individual unit tests runs-on: ubuntu-latest outputs: matrix: ${{steps.individual-tests.outputs.matrix }} steps: - name: Checking out code uses: actions/checkout@v4 - name: Looking for all individual tests id: individual-tests run: | count=0 # Number of individual tests found. while read -r testfile; do # For each test file. while read -r testname; do # For each unit test in a file. count=$((count + 1)) # Sent it to the correct chunk file. chunk=$(((($count % $chunks)) + 1)) echo "$testname $testfile" >> ./chunk_$chunk.txt done < <(grep "function test_" "${testfile}" | sed -r "s/^.*function (test_[a-zA-Z0-9_]+).*/\1/") done < <(find . -name "*_test.php") # Generate the matrix to run tests. echo "matrix=$(ls -1 chunk_*.txt | jq -R -s -c 'split("\n")[:-1]')" >> $GITHUB_OUTPUT echo "$count individual tests collected in $chunks files" - name: Upload individual tests files uses: actions/upload-artifact@v4 with: name: individual_tests path: chunk_*.txt retention-days: 1 test: name: Run tests needs: collect runs-on: ubuntu-latest services: exttests: image: moodlehq/moodle-exttests ports: - 8080:80 redis: image: redis ports: - 6379:6379 strategy: fail-fast: false matrix: file: ${{ fromJson(needs.collect.outputs.matrix) }} steps: - name: Setting up DB pgsql uses: m4nu56/postgresql-action@v1 with: postgresql version: 13 postgresql db: test postgresql user: test postgresql password: test - name: Setting up PHP uses: shivammathur/setup-php@v2 with: php-version: 8.3 ini-values: max_input_vars=5000 coverage: none - name: Checking out code uses: actions/checkout@v4 - name: Download individual test files uses: actions/download-artifact@v4 with: name: individual_tests # Make all the chunk files available for the next steps. - name: Setting up PHPUnit env: dbtype: pgsql run: | echo "pathtophp=$(which php)" >> $GITHUB_ENV cp .github/workflows/config-template.php config.php mkdir ../moodledata sudo locale-gen en_AU.UTF-8 php admin/tool/phpunit/cli/init.php --no-composer-self-update - name: Run PHPUnit test (one by one) env: dbtype: pgsql run: | status=0 count=0 while read -r line; do # For each line in the chunk file count=$((count + 1)) filter="${line% *}" file="${line#* }" # Run the individual unit test and report problems if needed to. if ! php vendor/bin/phpunit \ --fail-on-empty-test-suite \ --fail-on-warning \ --fail-on-risky \ --filter "$filter" ${{ inputs.phpunit_extra_options }} \ "$file" >/dev/null 2>&1; then if [ $status -eq 0 ]; then echo "Problems found, list of PHPUnit commands failing:" fi echo "vendor/bin/phpunit --filter '${filter}' ${{ inputs.phpunit_extra_options }} $file" status=$((status + 1)) fi done < ${{ matrix.file }} echo "Finished: $count individual tests executed, $status tests failed" exit $status PK <�\i�;� � workflows/config-template.phpnu �[��� <?php // This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * Template configuraton file for github actions CI/CD. * * @package core * @copyright 2020 onwards Eloy Lafuente (stronk7) {@link https://stronk7.com} * @license https://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ // This cannot be used out from a github actions workflow, so just exit. getenv('GITHUB_WORKFLOW') || die; // phpcs:ignore moodle.Files.MoodleInternal.MoodleInternalGlobalState unset($CFG); global $CFG; $CFG = new stdClass(); $CFG->dbtype = getenv('dbtype'); $CFG->dblibrary = 'native'; $CFG->dbhost = '127.0.0.1'; $CFG->dbname = 'test'; $CFG->dbuser = 'test'; $CFG->dbpass = 'test'; $CFG->prefix = 'm_'; $CFG->dboptions = ['dbcollation' => 'utf8mb4_bin']; $host = 'localhost'; $CFG->wwwroot = "http://{$host}"; $CFG->dataroot = realpath(dirname(__DIR__)) . '/moodledata'; $CFG->admin = 'admin'; $CFG->directorypermissions = 0777; // Debug options - possible to be controlled by flag in future. $CFG->debug = (E_ALL | E_STRICT); // DEBUG_DEVELOPER. $CFG->debugdisplay = 1; $CFG->debugstringids = 1; // Add strings=1 to url to get string ids. $CFG->perfdebug = 15; $CFG->debugpageinfo = 1; $CFG->allowthemechangeonurl = 1; $CFG->passwordpolicy = 0; $CFG->cronclionly = 0; $CFG->pathtophp = getenv('pathtophp'); $CFG->phpunit_dataroot = realpath(dirname(__DIR__)) . '/phpunitdata'; $CFG->phpunit_prefix = 't_'; define('TEST_EXTERNAL_FILES_HTTP_URL', 'http://localhost:8080'); define('TEST_EXTERNAL_FILES_HTTPS_URL', 'http://localhost:8080'); define('TEST_SESSION_REDIS_HOST', 'localhost'); define('TEST_CACHESTORE_REDIS_TESTSERVERS', 'localhost'); // TODO: add others (solr, mongodb, memcached, ldap...). // Too much for now: define('PHPUNIT_LONGTEST', true); // Only leaves a few tests out and they are run later by CI. require_once(__DIR__ . '/lib/setup.php'); PK <�\���B6 6 workflows/web-installer-test.ymlnu �[��� name: Web Installer Testing on: workflow_dispatch: jobs: InstallationTest: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-latest] php: [8.1, 8.3] steps: - name: Construct repository URL run: echo "REPOSITORY_URL=${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}" >> $GITHUB_ENV shell: bash - uses: moodlehq/moodle-webinstaller-test@main with: repository: ${{ env.REPOSITORY_URL }} branch: ${{ github.ref_name }} php: ${{ matrix.php }} PK <�\�:�� � workflows/push.ymlnu �[��� name: Core on: push: branches-ignore: - main - MOODLE_[0-9]+_STABLE tags-ignore: - v[0-9]+.[0-9]+.[0-9]+* workflow_dispatch: inputs: phpunit_extra_options: description: Additional options to apply to PHPUnit required: false default: '' env: php: 8.3 jobs: Grunt: runs-on: ubuntu-24.04 steps: - name: Checking out code uses: actions/checkout@v4 - name: Configuring node & npm uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - name: Installing node stuff run: npm install - name: Running grunt run: npx grunt - name: Looking for uncommitted changes # Add all files to the git index and then run diff --cached to see all changes. # This ensures that we get the status of all files, including new files. # We ignore npm-shrinkwrap.json to make the tasks immune to npm changes. run: | git add . git reset -- npm-shrinkwrap.json git diff --cached --exit-code PHPUnit: runs-on: ${{ matrix.os }} services: exttests: image: moodlehq/moodle-exttests ports: - 8080:80 redis: image: redis ports: - 6379:6379 strategy: fail-fast: false matrix: include: # MySQL builds always run with the lowest PHP supported version. - os: ubuntu-24.04 php: 8.1 extensions: db: mysqli # PostgreSQL builds always run with the highest PHP supported version. - os: ubuntu-24.04 php: 8.3 db: pgsql steps: - name: Setting up DB mysql if: ${{ matrix.db == 'mysqli' }} uses: moodlehq/mysql-action@v1 with: collation server: utf8mb4_bin mysql version: 8.0 mysql database: test mysql user: test mysql password: test use tmpfs: true tmpfs size: '1024M' extra conf: --skip-log-bin - name: Setting up DB pgsql if: ${{ matrix.db == 'pgsql' }} uses: m4nu56/postgresql-action@v1 with: postgresql version: 13 postgresql db: test postgresql user: test postgresql password: test - name: Configuring git vars uses: rlespinasse/github-slug-action@v4 - name: Setting up PHP ${{ matrix.php }} uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} extensions: ${{ matrix.extensions }} ini-values: max_input_vars=5000 coverage: none - name: Checking out code from ${{ env.GITHUB_REF_SLUG }} uses: actions/checkout@v4 - name: Setting up PHPUnit env: dbtype: ${{ matrix.db }} run: | echo "pathtophp=$(which php)" >> $GITHUB_ENV # Inject installed pathtophp to env. The template config needs it. cp .github/workflows/config-template.php config.php mkdir ../moodledata sudo locale-gen en_AU.UTF-8 php admin/tool/phpunit/cli/init.php --no-composer-self-update - name: Running PHPUnit tests env: dbtype: ${{ matrix.db }} phpunit_options: ${{ secrets.phpunit_options }} run: vendor/bin/phpunit $phpunit_options ${{ inputs.phpunit_extra_options }} - name: Git status run: git status PK <�\0�Q ! workflows/close-pull-requests.ymlnu �[��� name: 'Close Pull Requests' on: pull_request_target: types: opened workflow_dispatch: jobs: close: # Avoid forks to run this job if: github.repository_owner == 'moodle' name: Close Pull Requests runs-on: ubuntu-latest steps: - uses: dessant/repo-lockdown@v4 with: process-only: prs close-pr: true skip-closed-pr-comment: true pr-comment: > **Please, don't open pull requests via GitHub.** This repository (moodle.git) at GitHub is just a mirror of the official Moodle repository. For how to contribute patches for Moodle see [CONTRIBUTING.md](https://github.com/moodle/moodle/blob/main/CONTRIBUTING.md). Closing this pull request. PK <�\�b��l l workflows/windows.ymlnu �[��� name: Windows Testing on: workflow_dispatch: inputs: phpunit_extra_options: description: Additional options to apply to PHPUnit required: false default: '' env: php: 8.3 jobs: Grunt: runs-on: windows-latest steps: - name: Set git to use LF run: | git config --global core.autocrlf false git config --global core.eol lf - name: Checking out code uses: actions/checkout@v4 - name: Configuring node & npm uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - name: Installing node stuff run: npm ci - name: Running grunt run: npx grunt - name: Looking for uncommitted changes # Add all files to the git index and then run diff --cached to see all changes. # This ensures that we get the status of all files, including new files. # We ignore npm-shrinkwrap.json to make the tasks immune to npm changes. run: | git add . git reset -- npm-shrinkwrap.json git diff --cached --exit-code PHPUnit: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - os: windows-latest php: 8.3 # Ideally we should use mysql/mariadb, but they are 4x slower without tweaks and configuration # so let's run only postgres (1.5h vs 6h) only, If some day we want to improve the mysql runs, # this is the place to enable them. # db: mysqli db: pgsql extensions: exif, fileinfo, gd, intl, pgsql, mysql, redis, soap, sodium, zip - os: windows-latest php: 8.1 db: pgsql extensions: exif, fileinfo, gd, intl, pgsql, mysql, redis, soap, sodium steps: - name: Setting up DB mysql if: ${{ matrix.db == 'mysqli' }} uses: shogo82148/actions-setup-mysql@v1 with: mysql-version: 8.0 user: test password: test - name: Creating DB mysql if: ${{ matrix.db == 'mysqli' }} run: mysql --host 127.0.0.1 -utest -ptest -e 'CREATE DATABASE IF NOT EXISTS test COLLATE = utf8mb4_bin;'; - name: Setting up DB pgsql if: ${{ matrix.db == 'pgsql' }} run: | # TODO: Remove these conf. modifications when php74 or php80 are lowest. # Change to old md5 auth, because php73 does not support it. # #password_encryption = scram-sha-256 (Get-Content "$env:PGDATA\postgresql.conf"). ` replace('#password_encryption = scram-sha-256', 'password_encryption = md5') | ` Set-Content "$env:PGDATA\postgresql.conf" (Get-Content "$env:PGDATA\pg_hba.conf"). ` replace('scram-sha-256', 'md5') | ` Set-Content "$env:PGDATA\pg_hba.conf" $pgService = Get-Service -Name postgresql* Set-Service -InputObject $pgService -Status running -StartupType automatic Start-Process -FilePath "$env:PGBIN\pg_isready" -Wait -PassThru & $env:PGBIN\psql --command="CREATE USER test PASSWORD 'test'" --command="\du" - name: Creating DB pgsql if: ${{ matrix.db == 'pgsql' }} run: | & $env:PGBIN\createdb --owner=test test $env:PGPASSWORD = 'test' & $env:PGBIN\psql --username=test --host=localhost --list test - name: Configuring git vars uses: rlespinasse/github-slug-action@v4 - name: Setting up PHP ${{ matrix.php }} uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} extensions: ${{ matrix.extensions }} ini-values: max_input_vars=5000 coverage: none - name: Set git to use LF run: | git config --global core.autocrlf false git config --global core.eol lf - name: Checking out code from ${{ env.GITHUB_REF_SLUG }} uses: actions/checkout@v4 # Needs to be done after php is available, git configured and Moodle checkout has happened. - name: Setting up moodle-exttests service run: | git clone https://github.com/moodlehq/moodle-exttests.git nssm install php-built-in C:\tools\php\php.exe -S localhost:8080 -t D:\a\moodle\moodle\moodle-exttests nssm start php-built-in - name: Setting up redis service run: | choco install redis --version 5.0.7 --no-progress nssm install redis redis-server nssm start redis - name: Setting up PHPUnit env: dbtype: ${{ matrix.db }} shell: bash run: | echo "pathtophp=$(which php)" >> $GITHUB_ENV # Inject installed pathtophp to env. The template config needs it. cp .github/workflows/config-template.php config.php mkdir ../moodledata php admin/tool/phpunit/cli/init.php --no-composer-self-update - name: Running PHPUnit tests env: dbtype: ${{ matrix.db }} phpunit_options: ${{ secrets.phpunit_options }} run: vendor/bin/phpunit $phpunit_options ${{ inputs.phpunit_extra_options }} PK <�\'.� � SECURITY.mdnu �[��� > [!IMPORTANT] > PLEASE DO NOT PUBLISH SECURITY FINDINGS PUBLICLY. If you discover a potential security issue, please report it via our [Security Submission Form](https://moodle.org/security/report). For more information about our security processes and responsible disclosure policy, see the [Security Procedures documentation](https://moodledev.io/general/development/process/security). PK <�\ͥ�>` ` FUNDING.ymlnu �[��� # Primary donations pages. custom: ["https://moodle.com/donations/", "https://fund.moodle.org"] PK <�\�a^�� � moodlelogo.svgnu �[��� PK <�\a��� � PULL_REQUEST_TEMPLATE.txtnu �[��� PK <�\P�td d P workflows/onebyone.ymlnu �[��� PK <�\i�;� � � workflows/config-template.phpnu �[��� PK <�\���B6 6 ') workflows/web-installer-test.ymlnu �[��� PK <�\�:�� � �+ workflows/push.ymlnu �[��� PK <�\0�Q ! �9 workflows/close-pull-requests.ymlnu �[��� PK <�\�b��l l �<