feat: Add auth for stac browser. #637
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI tests | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| pull_request: | |
| branches: [ "main" ] | |
| env: | |
| HELM_VERSION: v3.15.2 | |
| PGO_VERSION: 5.7.4 | |
| jobs: | |
| fast-checks: | |
| name: Simple tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: '24' | |
| - name: Install Helm | |
| uses: azure/setup-helm@v4 | |
| with: | |
| version: ${{ env.HELM_VERSION }} | |
| - name: Run linters | |
| run: ./eoapi-cli test lint | |
| - name: Validate Helm values schema | |
| run: ./eoapi-cli test schema | |
| - name: Run Helm unit tests | |
| run: ./eoapi-cli test unit | |
| integration-tests: | |
| name: Integration tests | |
| needs: fast-checks | |
| if: github.event.pull_request.head.repo.full_name == github.repository | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.14' | |
| - name: Set release name | |
| run: echo "RELEASE_NAME=eoapi-$(echo "${{ github.sha }}" | cut -c1-8)" >> "$GITHUB_ENV" | |
| - name: Clean up disk space | |
| run: | | |
| echo "=== Disk space before cleanup ===" | |
| df -h | |
| echo "=== Docker cleanup ===" | |
| docker system prune -af --volumes || true | |
| echo "=== Remove unused packages ===" | |
| sudo apt-get clean || true | |
| sudo rm -rf /usr/share/dotnet /opt/ghc /usr/local/share/boost "$AGENT_TOOLSDIRECTORY" || true | |
| echo "=== Disk space after cleanup ===" | |
| df -h | |
| - name: Start K3s cluster | |
| uses: jupyterhub/action-k3s-helm@v4 | |
| with: | |
| k3s-channel: latest | |
| helm-version: ${{ env.HELM_VERSION }} | |
| metrics-enabled: true | |
| docker-enabled: true | |
| - name: Wait until cluster is ready | |
| run: ./eoapi-cli cluster wait-ready | |
| - name: Deploy eoAPI | |
| run: ./eoapi-cli deployment run | |
| - name: Run integration tests | |
| run: ./eoapi-cli test integration | |
| - name: Run notification tests | |
| run: ./eoapi-cli test notification | |
| - name: Run autoscaling tests | |
| run: ./eoapi-cli test autoscaling | |
| - name: Debug failed deployment | |
| if: failure() | |
| run: ./eoapi-cli deployment debug | |
| - name: Cleanup | |
| if: always() | |
| run: | | |
| echo "=== Cleaning up Helm release and namespace ===" | |
| helm uninstall "$RELEASE_NAME" -n eoapi || true | |
| kubectl delete namespace eoapi || true | |
| echo "=== Cleaning up Docker resources ===" | |
| docker system prune -af --volumes || true | |
| echo "=== Final disk space ===" | |
| df -h | |
| validate-docs: | |
| name: Validate documentation | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: '24' | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.14' | |
| - name: Check documentation | |
| run: ./eoapi-cli docs check |