name: HLS tests on: push: paths-ignore: - 'web/**' pull_request: paths-ignore: - 'web/**' env: S3_BUCKET: ${{ secrets.S3_BUCKET }} S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }} S3_ENDPOINT: ${{ secrets.S3_ENDPOINT }} S3_REGION: ${{ secrets.S3_REGION }} S3_SECRET: ${{ secrets.S3_SECRET }} jobs: tests: runs-on: ubuntu-latest steps: - id: skip_check uses: fkirc/skip-duplicate-actions@v5 with: concurrent_skipping: 'same_content_newer' - name: Check out pull request code uses: actions/checkout@v4 if: github.event_name == 'pull_request' with: repository: ${{ github.event.pull_request.head.repo.full_name }} - name: Check out repository code uses: actions/checkout@v4 if: github.event_name == 'push' - name: Get changed files id: changed-files-yaml uses: tj-actions/changed-files@v45 with: files_yaml: | src: - '**/*.{go,mod,sum}' - uses: actions/setup-go@v5 if: steps.changed-files-yaml.outputs.src_any_changed == 'true' with: go-version: '1.22' cache: true - name: Cache node modules uses: actions/cache@v4 env: cache-name: cache-node-modules-hls-tests with: path: ~/.npm key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('test/automated/hls/package-lock.json') }} restore-keys: | ${{ runner.os }}-build-${{ env.cache-name }}- ${{ runner.os }}-build- ${{ runner.os }}- - name: Local stroage if: steps.changed-files-yaml.outputs.src_any_changed == 'true' uses: nick-fields/retry@v3 with: timeout_minutes: 10 max_attempts: 3 command: cd test/automated/hls && ./run.sh - name: S3 storage if: steps.changed-files-yaml.outputs.src_any_changed == 'true' uses: nick-fields/retry@v3 with: timeout_minutes: 10 max_attempts: 3 command: cd test/automated/hls && ./run-s3.sh