You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

files-external-s3.yml 7.1KB

build(deps): bump the github-actions group with 4 updates Bumps the github-actions group with 4 updates: [dorny/paths-filter](https://github.com/dorny/paths-filter), [actions/checkout](https://github.com/actions/checkout), [codecov/codecov-action](https://github.com/codecov/codecov-action) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request). Updates `dorny/paths-filter` from 3.0.0 to 3.0.2 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v3...de90cc6fb38fc0963ad72b210f1f284cd68cea36) Updates `actions/checkout` from 4.1.1 to 4.1.2 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/b4ffde65f46336ab88eb53be808477a3936bae11...9bb56186c3b09b4f86b1c65136769dd318469633) Updates `codecov/codecov-action` from 3.1.5 to 4.1.1 - [Release notes](https://github.com/codecov/codecov-action/releases) - [Commits](https://github.com/codecov/codecov-action/compare/v3.1.5...v4.1.1) Updates `peter-evans/create-pull-request` from 6.0.1 to 6.0.2 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/a4f52f8033a6168103c2538976c07b467e8163bc...70a41aba780001da0a30141984ae2a0c95d8704e) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
2 months ago
chore(deps): bump the github-actions group across 1 directory with 5 updates Bumps the github-actions group with 5 updates in the / directory: | Package | From | To | | --- | --- | --- | | [dorny/paths-filter](https://github.com/dorny/paths-filter) | `2.11.1` | `3.0.2` | | [actions/checkout](https://github.com/actions/checkout) | `4.1.2` | `4.1.6` | | [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) | `2.2` | `3` | | [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4.3.1` | `4.3.3` | | [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `6.0.2` | `6.0.5` | Updates `dorny/paths-filter` from 2.11.1 to 3.0.2 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v2.11.1...de90cc6fb38fc0963ad72b210f1f284cd68cea36) Updates `actions/checkout` from 4.1.2 to 4.1.6 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.1.2...a5ac7e51b41094c92402da3b24376905380afc29) Updates `skjnldsv/read-package-engines-version-actions` from 2.2 to 3 - [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases) - [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v2.2...06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4) Updates `actions/upload-artifact` from 4.3.1 to 4.3.3 - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4.3.1...65462800fd760344b1a7b4382951275a0abb4808) Updates `peter-evans/create-pull-request` from 6.0.2 to 6.0.5 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v6.0.2...6d6857d36972b65feb161a90e484f2984215f83e) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: skjnldsv/read-package-engines-version-actions dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
1 week ago
build(deps): bump the github-actions group with 4 updates Bumps the github-actions group with 4 updates: [dorny/paths-filter](https://github.com/dorny/paths-filter), [actions/checkout](https://github.com/actions/checkout), [codecov/codecov-action](https://github.com/codecov/codecov-action) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request). Updates `dorny/paths-filter` from 3.0.0 to 3.0.2 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v3...de90cc6fb38fc0963ad72b210f1f284cd68cea36) Updates `actions/checkout` from 4.1.1 to 4.1.2 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/b4ffde65f46336ab88eb53be808477a3936bae11...9bb56186c3b09b4f86b1c65136769dd318469633) Updates `codecov/codecov-action` from 3.1.5 to 4.1.1 - [Release notes](https://github.com/codecov/codecov-action/releases) - [Commits](https://github.com/codecov/codecov-action/compare/v3.1.5...v4.1.1) Updates `peter-evans/create-pull-request` from 6.0.1 to 6.0.2 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/a4f52f8033a6168103c2538976c07b467e8163bc...70a41aba780001da0a30141984ae2a0c95d8704e) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
2 months ago
chore(deps): bump the github-actions group across 1 directory with 5 updates Bumps the github-actions group with 5 updates in the / directory: | Package | From | To | | --- | --- | --- | | [dorny/paths-filter](https://github.com/dorny/paths-filter) | `2.11.1` | `3.0.2` | | [actions/checkout](https://github.com/actions/checkout) | `4.1.2` | `4.1.6` | | [skjnldsv/read-package-engines-version-actions](https://github.com/skjnldsv/read-package-engines-version-actions) | `2.2` | `3` | | [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4.3.1` | `4.3.3` | | [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) | `6.0.2` | `6.0.5` | Updates `dorny/paths-filter` from 2.11.1 to 3.0.2 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v2.11.1...de90cc6fb38fc0963ad72b210f1f284cd68cea36) Updates `actions/checkout` from 4.1.2 to 4.1.6 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.1.2...a5ac7e51b41094c92402da3b24376905380afc29) Updates `skjnldsv/read-package-engines-version-actions` from 2.2 to 3 - [Release notes](https://github.com/skjnldsv/read-package-engines-version-actions/releases) - [Commits](https://github.com/skjnldsv/read-package-engines-version-actions/compare/v2.2...06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4) Updates `actions/upload-artifact` from 4.3.1 to 4.3.3 - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4.3.1...65462800fd760344b1a7b4382951275a0abb4808) Updates `peter-evans/create-pull-request` from 6.0.2 to 6.0.5 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/v6.0.2...6d6857d36972b65feb161a90e484f2984215f83e) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: skjnldsv/read-package-engines-version-actions dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
1 week ago
build(deps): bump the github-actions group with 4 updates Bumps the github-actions group with 4 updates: [dorny/paths-filter](https://github.com/dorny/paths-filter), [actions/checkout](https://github.com/actions/checkout), [codecov/codecov-action](https://github.com/codecov/codecov-action) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request). Updates `dorny/paths-filter` from 3.0.0 to 3.0.2 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](https://github.com/dorny/paths-filter/compare/v3...de90cc6fb38fc0963ad72b210f1f284cd68cea36) Updates `actions/checkout` from 4.1.1 to 4.1.2 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/b4ffde65f46336ab88eb53be808477a3936bae11...9bb56186c3b09b4f86b1c65136769dd318469633) Updates `codecov/codecov-action` from 3.1.5 to 4.1.1 - [Release notes](https://github.com/codecov/codecov-action/releases) - [Commits](https://github.com/codecov/codecov-action/compare/v3.1.5...v4.1.1) Updates `peter-evans/create-pull-request` from 6.0.1 to 6.0.2 - [Release notes](https://github.com/peter-evans/create-pull-request/releases) - [Commits](https://github.com/peter-evans/create-pull-request/compare/a4f52f8033a6168103c2538976c07b467e8163bc...70a41aba780001da0a30141984ae2a0c95d8704e) --- updated-dependencies: - dependency-name: dorny/paths-filter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: peter-evans/create-pull-request dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
2 months ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. # SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
  2. # SPDX-License-Identifier: MIT
  3. name: PHPUnit files_external S3
  4. on:
  5. pull_request:
  6. schedule:
  7. - cron: "5 2 * * *"
  8. concurrency:
  9. group: files-external-s3-${{ github.head_ref || github.run_id }}
  10. cancel-in-progress: true
  11. jobs:
  12. changes:
  13. runs-on: ubuntu-latest-low
  14. outputs:
  15. src: ${{ steps.changes.outputs.src}}
  16. steps:
  17. - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
  18. id: changes
  19. continue-on-error: true
  20. with:
  21. filters: |
  22. src:
  23. - '.github/workflows/**'
  24. - '3rdparty/**'
  25. - 'apps/files_external/**'
  26. - 'vendor/**'
  27. - 'vendor-bin/**'
  28. - 'composer.json'
  29. - 'composer.lock'
  30. - '**.php'
  31. files-external-s3-minio:
  32. runs-on: ubuntu-latest
  33. needs: changes
  34. if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
  35. strategy:
  36. matrix:
  37. php-versions: ['8.1', '8.2', '8.3']
  38. include:
  39. - php-versions: '8.2'
  40. coverage: ${{ github.event_name != 'pull_request' }}
  41. name: php${{ matrix.php-versions }}-s3
  42. services:
  43. minio:
  44. image: bitnami/minio
  45. env:
  46. MINIO_ROOT_USER: nextcloud
  47. MINIO_ROOT_PASSWORD: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
  48. MINIO_DEFAULT_BUCKETS: nextcloud
  49. ports:
  50. - "9000:9000"
  51. steps:
  52. - name: Checkout server
  53. uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
  54. with:
  55. submodules: true
  56. - name: Set up php ${{ matrix.php-versions }}
  57. uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
  58. with:
  59. php-version: ${{ matrix.php-versions }}
  60. # https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
  61. extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
  62. coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
  63. ini-file: development
  64. env:
  65. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  66. - name: Set up Nextcloud
  67. env:
  68. OBJECT_STORE_KEY: nextcloud
  69. OBJECT_STORE_SECRET: bWluaW8tc2VjcmV0LWtleS1uZXh0Y2xvdWQ=
  70. run: |
  71. composer install
  72. ./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
  73. ./occ app:enable --force files_external
  74. echo "<?php return ['run' => true, 'secret' => 'actually-not-secret', 'passwordsalt' => 'actually-not-secret', 'hostname' => 'localhost','key' => '$OBJECT_STORE_KEY','secret' => '$OBJECT_STORE_SECRET', 'bucket' => 'bucket', 'port' => 9000, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/files_external/tests/config.amazons3.php
  75. - name: Wait for S3
  76. run: |
  77. sleep 10
  78. curl -f -m 1 --retry-connrefused --retry 10 --retry-delay 10 http://localhost:9000/minio/health/ready
  79. - name: PHPUnit
  80. run: composer run test:files_external -- \
  81. apps/files_external/tests/Storage/Amazons3Test.php \
  82. apps/files_external/tests/Storage/VersionedAmazonS3Test.php \
  83. ${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
  84. - name: Upload code coverage
  85. if: ${{ !cancelled() && matrix.coverage }}
  86. uses: codecov/codecov-action@v4.1.1
  87. with:
  88. files: ./clover.xml
  89. flags: phpunit-files-external-s3
  90. - name: S3 logs
  91. if: always()
  92. run: |
  93. docker ps -a
  94. docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
  95. files-external-s3-localstack:
  96. runs-on: ubuntu-latest
  97. needs: changes
  98. if: ${{ github.repository_owner != 'nextcloud-gmbh' && needs.changes.outputs.src != 'false' }}
  99. strategy:
  100. matrix:
  101. php-versions: ['8.1', '8.2', '8.3']
  102. include:
  103. - php-versions: '8.3'
  104. coverage: true
  105. name: php${{ matrix.php-versions }}-s3
  106. services:
  107. localstack:
  108. env:
  109. SERVICES: s3
  110. DEBUG: 1
  111. image: localstack/localstack
  112. ports:
  113. - "4566:4566"
  114. steps:
  115. - name: Checkout server
  116. uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29
  117. with:
  118. submodules: true
  119. - name: Set up php ${{ matrix.php-versions }}
  120. uses: shivammathur/setup-php@4bd44f22a98a19e0950cbad5f31095157cc9621b # v2
  121. with:
  122. php-version: ${{ matrix.php-versions }}
  123. # https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
  124. extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
  125. coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
  126. ini-file: development
  127. env:
  128. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  129. - name: Set up Nextcloud
  130. run: |
  131. composer install
  132. ./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
  133. ./occ app:enable --force files_external
  134. echo "<?php return ['run' => true,'hostname' => 'localhost','key' => 'ignored','secret' => 'ignored', 'bucket' => 'bucket', 'port' => 4566, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/files_external/tests/config.amazons3.php
  135. - name: PHPUnit
  136. run: composer run test:files_external -- \
  137. apps/files_external/tests/Storage/Amazons3Test.php \
  138. apps/files_external/tests/Storage/VersionedAmazonS3Test.php \
  139. ${{ matrix.coverage && ' --coverage-clover ./clover.xml' || '' }}
  140. - name: Upload code coverage
  141. if: ${{ !cancelled() && matrix.coverage }}
  142. uses: codecov/codecov-action@v4.1.1
  143. with:
  144. files: ./clover.xml
  145. flags: phpunit-files-external-s3
  146. - name: S3 logs
  147. if: always()
  148. run: |
  149. docker ps -a
  150. docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
  151. s3-external-summary:
  152. runs-on: ubuntu-latest-low
  153. needs: [changes, files-external-s3-minio, files-external-s3-localstack]
  154. if: always()
  155. steps:
  156. - name: Summary status
  157. run: if ${{ needs.changes.outputs.src != 'false' && needs.files-external-s3-minio.result != 'success' && needs.files-external-s3-localstack.result != 'success' }}; then exit 1; fi