File: downstream.yml

package info (click to toggle)
gwcs 1.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,400 kB
  • sloc: python: 9,727; makefile: 122
file content (115 lines) | stat: -rw-r--r-- 4,606 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
name: test downstream packages

on:
  workflow_dispatch:
  schedule:
    # Weekly Monday 9AM build
    # * is a special character in YAML so you have to quote this string
    - cron: "0 9 * * 1"
  pull_request:
    # We also want this workflow triggered if the `Downstream CI` label is
    # added or present when PR is updated
    types:
      - synchronize
      - labeled
  push:
    tags:
      - "*"

# Only cancel in-progress jobs or runs for the current workflow
#   This cancels the already triggered workflows for a specific PR without canceling
#   other instances of this workflow (other PRs, scheduled triggers, etc) when something
#   within that PR re-triggers this CI
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  environment:
    runs-on: ubuntu-latest
    steps:
      - id: data_path
        run: echo "path=${{ runner.temp }}/data" >> $GITHUB_OUTPUT
    outputs:
      data_path: ${{ steps.data_path.outputs.path }}

  crds_contexts:
    uses: spacetelescope/crds/.github/workflows/contexts.yml@main

  jwst:
    uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@9f1fedda61294df4c004c05519a3fbf3b8e1f32f # v2.3.1
    needs: [environment, crds_contexts]
    with:
      setenv: |
        CRDS_PATH: ${{ needs.environment.outputs.data_path }}/crds
        CRDS_SERVER_URL: https://jwst-crds.stsci.edu
        CRDS_CLIENT_RETRY_COUNT: 3
        CRDS_CLIENT_RETRY_DELAY_SECONDS: 20
      cache-path: ${{ needs.environment.outputs.data_path }}/crds
      cache-key: crds-${{ needs.crds_contexts.outputs.jwst }}
      envs: |
        - linux: py311-test-jwst

  romancal:
    uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@9f1fedda61294df4c004c05519a3fbf3b8e1f32f # v2.3.1
    needs: [environment, crds_contexts]
    with:
      setenv: |
        CRDS_PATH: ${{ needs.environment.outputs.data_path }}/crds
        CRDS_SERVER_URL: https://roman-crds.stsci.edu
        CRDS_CLIENT_RETRY_COUNT: 3
        CRDS_CLIENT_RETRY_DELAY_SECONDS: 20
      cache-path: ${{ needs.environment.outputs.data_path }}/crds
      cache-key: crds-${{ needs.crds_contexts.outputs.jwst }}
      envs: |
        - linux: py311-test-romancal

  romanisim_data:
    needs: [environment]
    uses: spacetelescope/romanisim/.github/workflows/retrieve_cache.yml@main
    with:
      cache_path: ${{ needs.environment.outputs.data_path }}

  romanisim:
    needs: [crds_contexts, romanisim_data]
    uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@9f1fedda61294df4c004c05519a3fbf3b8e1f32f # v2.3.1
    with:
      libraries: |
        brew:
          - eigen
          - fftw
      setenv: |
        STPSF_PATH: ${{ needs.romanisim_data.outputs.cache_path }}/stpsf-data/
        GALSIM_CAT_PATH: ${{ needs.romanisim_data.outputs.cache_path }}/galsim_data/real_galaxy_catalog_23.5_example.fits
        FFTW_DIR: /opt/homebrew/opt/fftw/lib/
        CRDS_PATH: ${{ needs.romanisim_data.outputs.cache_path }}/crds
        CRDS_SERVER_URL: https://roman-crds.stsci.edu
        CRDS_CLIENT_RETRY_COUNT: 3
        CRDS_CLIENT_RETRY_DELAY_SECONDS: 20
      cache-path: ${{ needs.romanisim_data.outputs.cache_path }}
      cache-key: crds-${{ needs.crds_contexts.outputs.roman }}-${{ needs.romanisim_data.outputs.cache_key }}
      cache-restore-keys: |
        ${{ needs.romanisim_data.outputs.cache_key }}
      envs: |
        - linux: py311-test-romanisim-xdist

  astropy:
    uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@9f1fedda61294df4c004c05519a3fbf3b8e1f32f # v2.3.1
    if: (github.repository == 'spacetelescope/gwcs' && (github.event_name == 'schedule' || github.event_name == 'push' || github.event_name == 'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 'Downstream CI')))
    with:
      submodules: false
      # Any env name which does not start with `pyXY` will use this Python version.
      default_python: "3.11"
      envs: |
        - linux: specutils

  third-party:
    uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@9f1fedda61294df4c004c05519a3fbf3b8e1f32f # v2.3.1
    if: (github.repository == 'spacetelescope/gwcs' && (github.event_name == 'schedule' || github.event_name == 'push' || github.event_name == 'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 'Downstream CI')))
    with:
      submodules: false
      # Any env name which does not start with `pyXY` will use this Python version.
      default_python: "3.11"
      envs: |
        - linux: ndcube
        - linux: dkist