diff --git a/.github/workflows/create_test_conda_env.yml b/.github/workflows/create_test_conda_env.yml new file mode 100644 index 0000000..6adb858 --- /dev/null +++ b/.github/workflows/create_test_conda_env.yml @@ -0,0 +1,34 @@ +name: create_test_conda_env + +on: [push] + +jobs: + build-linux: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '>=3.9' + + - name: Add conda to system path + run: | + # $CONDA is an env var pointing to root of miniconda dir + echo $CONDA/bin >> $GITHUB_PATH + + - name: Create fre-workflows environment + run: | + # create environment containing all dependencies + # the env cannot be explicitly activated in github CI/CD + conda env create -f environment.yml --name fre-workflows + + # add conda env's executables to github's PATH equiv. + echo $CONDA/envs/fre-workflows/bin >> $GITHUB_PATH + + - name: Run unittest in fre-workflows environment + run: | + # try to make sure the right things are in GITHUB_PATH + echo $CONDA/envs/fre-workflows/bin >> $GITHUB_PATH + cylc lint -v + cd data_lineage && python -m unittest discover -s test diff --git a/environment.yml b/environment.yml new file mode 100644 index 0000000..a0f4185 --- /dev/null +++ b/environment.yml @@ -0,0 +1,18 @@ +name: fre-workflows +channels: + - defaults + - conda-forge + - noaa-gfdl +dependencies: + - python + - pip + - click + - pyyaml + - pylint + - jsonschema + - conda-forge::cylc-flow>=8.2.0 + - conda-forge::cylc-rose + - conda-forge::metomi-rose + - conda-forge::cylc-uiserver + - conda-forge::pytest + - conda-forge::pytest-cov \ No newline at end of file