keep dims when converting model to Stokes in stokes2im #1201
Workflow file for this run
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: pfb-imaging CI Workflow | |
| permissions: | |
| contents: read | |
| pull-requests: read | |
| on: | |
| push: | |
| tags: | |
| - 'v*' | |
| pull_request: | |
| jobs: | |
| should-run: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| run: ${{ steps.check.outputs.should_run }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 # This ensures we have access to the commit history | |
| - id: check | |
| shell: bash | |
| run: | | |
| if [ "${{ github.event_name }}" == "pull_request" ] || [ "${{ github.event_name }}" == "pull_request_target" ]; then | |
| message="${{ github.event.pull_request.head.sha }}" | |
| # Fetch the actual commit message since we only get the SHA in PR context | |
| message=$(git ls-remote "${{ github.event.pull_request.head.repo.clone_url }}" "${{ github.event.pull_request.head.ref }}" | cut -f1 | xargs git show --format=%B -s) | |
| else | |
| message="${{ github.event.head_commit.message }}" | |
| fi | |
| echo "Event type: ${{ github.event_name }}" | |
| echo "Original message: '$message'" | |
| message="${message,,}" # Convert to lowercase | |
| echo "Lowercase message: '$message'" | |
| skip_patterns=( | |
| 'skip ci' | |
| 'ci skip' | |
| 'no ci' | |
| 'skip-ci' | |
| 'ci-skip' | |
| 'skip_ci' | |
| 'ci_skip' | |
| 'noci' | |
| ) | |
| should_run="true" | |
| for pattern in "${skip_patterns[@]}"; do | |
| echo "Testing pattern: '$pattern'" | |
| if echo "$message" | grep -q "$pattern"; then | |
| echo "MATCH FOUND for pattern: '$pattern'" | |
| should_run="false" | |
| break | |
| else | |
| echo "No match for pattern: '$pattern'" | |
| fi | |
| done | |
| echo "Should run: $should_run" | |
| echo "should_run=$should_run" >> $GITHUB_OUTPUT | |
| test: | |
| needs: should-run | |
| if: needs.should-run.outputs.run == 'true' | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| env: | |
| NUMBA_CACHE_DIR: /tmp/numba-cache | |
| strategy: | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12"] | |
| steps: | |
| - name: Checkout source | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version}} | |
| - name: Restore repo times | |
| uses: chetan/git-restore-mtime-action@v2 | |
| - name: Upgrade pip and setuptools | |
| run: python -m pip install -U pip setuptools --verbose | |
| - name: Create Key and Numba Cache Directory | |
| id: numba-key | |
| run: | | |
| mkdir -p ${{ env.NUMBA_CACHE_DIR }} | |
| echo "timestamp=$(/bin/date -u '+%Y%m%d%H%M%S')" >> $GITHUB_OUTPUT | |
| - name: Cache Numba Kernels | |
| uses: actions/cache@v4 | |
| with: | |
| key: numba-cache-${{ matrix.python-version }}-${{ steps.numba-key.outputs.timestamp }} | |
| restore-keys: numba-cache-${{ matrix.python-version }}- | |
| path: ${{ env.NUMBA_CACHE_DIR }} | |
| - name: List the measures directory | |
| run: curl ftp://ftp.astron.nl/outgoing/Measures/ > measures_dir.txt | |
| - name: Load cached CASA Measures Data | |
| id: load-cached-casa-measures | |
| uses: actions/cache@v4 | |
| with: | |
| key: casa-measures-${{ hashFiles('measures_dir.txt')}} | |
| path: | | |
| ~/measures | |
| ~/.casarc | |
| - name: Download and install CASA Measures Data | |
| if: steps.load-cached-casa-measures.outputs.cache-hit != 'true' | |
| run: | | |
| mkdir -p ~/measures | |
| curl ftp://ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar | tar xvzf - -C ~/measures | |
| echo "measures.directory: ~/measures" > ~/.casarc | |
| - name: Install pfb-imaging | |
| run: pip install -e . | |
| timeout-minutes: 15 | |
| - name: Run pfb-imaging | |
| run: pfb --help | |
| - name: Run tests | |
| run: pytest -v tests/ | |
| deploy: | |
| needs: [test] | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') | |
| steps: | |
| - name: Checkout source | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 1 | |
| - name: Set up Python 3.10 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.10" | |
| - name: Upgrade pip and setuptools | |
| run: python -m pip install -U pip build twine --verbose | |
| - name: Create distribution files | |
| run: python -m build | |
| - name: Check package | |
| run: twine check dist/* | |
| - name: Publish distribution to PyPI | |
| uses: pypa/gh-action-pypi-publish@v1.13.0 | |
| with: | |
| user: __token__ | |
| password: ${{ secrets.PYPI_API_TOKEN }} | |
| verbose: true |