|
| 1 | +name: "Copilot Setup Steps" |
| 2 | + |
| 3 | +# Automatically run the setup steps when they are changed to allow for easy validation, and |
| 4 | +# allow manual testing through the repository's "Actions" tab |
| 5 | +on: |
| 6 | + workflow_dispatch: |
| 7 | + push: |
| 8 | + paths: |
| 9 | + - .github/copilot-setup-steps.yml |
| 10 | + pull_request: |
| 11 | + paths: |
| 12 | + - .github/copilot-setup-steps.yml |
| 13 | + |
| 14 | +jobs: |
| 15 | + # The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot. |
| 16 | + copilot-setup-steps: |
| 17 | + runs-on: ubuntu-latest |
| 18 | + |
| 19 | + # Set the permissions to the lowest permissions possible needed for your steps. |
| 20 | + # Copilot will be given its own token for its operations. |
| 21 | + permissions: |
| 22 | + # If you want to clone the repository as part of your setup steps, for example to install dependencies, you'll need the `contents: read` permission. If you don't clone the repository in your setup steps, Copilot will do this for you automatically after the steps complete. |
| 23 | + contents: read |
| 24 | + |
| 25 | + # You can define any steps you want, and they will run before the agent starts. |
| 26 | + # If you do not check out your code, Copilot will do this for you. |
| 27 | + steps: |
| 28 | + - name: Checkout code |
| 29 | + uses: actions/checkout@v5 |
| 30 | + |
| 31 | + - name: "Set up Micromamba" |
| 32 | + uses: mamba-org/setup-micromamba@v2 |
| 33 | + with: |
| 34 | + environment-name: pytensor-test |
| 35 | + micromamba-version: "1.5.10-0" |
| 36 | + init-shell: bash |
| 37 | + post-cleanup: "all" |
| 38 | + create-args: python=3.13 |
| 39 | + |
| 40 | + - name: "Install dependencies" |
| 41 | + shell: micromamba-shell {0} |
| 42 | + run: | |
| 43 | + micromamba install --yes -q -c conda-forge python=3.13 mkl "numpy>=2.0" scipy pip mkl-service graphviz cython pytest coverage pytest-cov pytest-benchmark pytest-mock pytest-sphinx |
| 44 | + micromamba install --yes -q -c conda-forge "numba>=0.57" |
| 45 | + micromamba install --yes -q -c conda-forge jax jaxlib numpyro equinox |
| 46 | + pip install tfp-nightly |
| 47 | + pip install -e ./ |
| 48 | + micromamba list && pip freeze |
| 49 | + python -c 'import pytensor; print(pytensor.config.__str__(print_doc=False))' |
| 50 | + python -c 'import pytensor; assert pytensor.config.blas__ldflags != "", "Blas flags are empty"'; |
0 commit comments